C++试卷

第201题

有定义及初始化 int a=3,*p=&a; ,*p的值是()。

第202题

有定义 int b[10]={1,2,3,4,5,6,7,8,9,10},*q=b; ,数值为8的表达式是()。

第203题

下列程序的输出结果是()。 

#include<iostream.h>
void main()
{
int n[][3]={10,20,30,40,50,60}; int (*p)[3];
p=n;
cout<<p[0][0]<<","<<*(*p+0)+1<<","<<*(p[2])<<endl;
}
第204题

类中的一个字符指针成员指向具有m个字节的存储空间时,它所能存储的字符串的最大长度为()。

第205题

下面关于指针的说法中错误的是()。

第206题

以下程序的执行结果是()。

#include<iostream.h>
int fun(int b[],int n)
{
    int i,r=1;
    for(i=0;i<n;i++)
        r=r*b[i];
    return r;
}
void main()
{
    int x,a[]={1,2,3,4,5,6,7,8};
    x=fun(a,3);
    cout<<x<<endl;
}
第207题

下列程序输出的结果是()。

#include<stdio.h>
fun1(char a,char b){char c;c=a;a=b;b=c;}
fun2(char*a,char b){char c;c=*a;*a=b;b=c;}
fun3(char*a,char*b){char c;c=*a;*a=*b;*b=c;}
void main()
{
    char a,b;
    a='A';b='B';fun1(a,b);putchar(a);putchar(b);
    a='A';b='B';fun2(&a,b);putchar(a);putchar(b);
    a='A';b='B';fun3(&a,&b);putchar(a);putchar(b);
    putchar('\n');
}
第208题

下列程序将x、y和z按从小到大的顺序排列,横线处应添加语句()。

template<class T>
void fun(________)
{
    T a;
    if(x>y)
    {
        a=x; x=y;y=a;
    }
    if(y>z)
    {
        a=y; y=z;z=a;
    }
    if(x>y)
    {
        a=x; x=y;y=a;
    }
}
第209题

当需要将函数 bool isnumber(char c) 声明为内联函数时,此内联函数的函数原型为()。

第210题

下列重载函数中,正确的是()。

第211题

已知递归函数fun的定义如下,函数调用语句 fun(5) 的返回值是()。

int fun(int n)
{
    if(n<=1)return 1;//递归结束情况
    else return n*fun(n-2);//递归
}
第212题

下列有关内联函数的叙述中,正确的是()。

第213题

有如下程序段,程序执行后的输出结果是()。

#include<iostream.h>
#define MAX(x,y) (x)>(y)?(x):(y)
void main()
{
    int i,j,k;
    i=10;
    j=15; k=MAX(i,j)*10;
    cout<<k<<endl;
}
第214题

假定 a=3 ,下列程序的运行结果是()。

#include<iostream.h>
int fun(int n);
void main()
{
    cout<<"Please input a number:";
    int a,result=0;
    cin>>a;
    result=fun(a);
    cout<<result<<endl;
}
int fun(int n)
{
    int p=1,result=0;
    for(int i=1;i<=n;i++)
    {
        p*=i;
        result+=p;
    }
    return result;
}
第215题

下面程序输出的结果为()。 

#include<iostream.h>
void fun(int a,int b)
{
    int temp;
    temp=a;
    a=b;
    b=temp;
}
void main()
{
    int m,n;
    m=1;
    n=2;
    fun(m,n);
    cout<<m<<" "<<n<<endl;
}
第216题

对数组名作函数的参数,下面描述正确的是()。

第217题

下列程序的输出结果是()。

#include<iostream>
using namespace std;
void fun(int &r)
{
    r*=2;
}
int main()
{
    int n=50;
    fun(n);
    cout<<n<<endl;
    return 0;
}
第218题

下列有关函数重载的叙述中,错误的是()。

第219题

下列对重载函数的描述中,()是错误的。

第220题

下列程序用来判断数组中特定元素的位置所在,则输出结果为()。

#include<conio.h>
#include<iostream.h>
int fun(int*p,int n,int j)
{
    int i;
    *j=0;
    for(i=0;i<n;i++)
        if(p[i]>p[*j])*j=i;
    return p[*j];
}
void main()
{
    int a[10]={1,3,9,0,8,7,6,5,4,2},int j;
    fun(a,10,&j);
    cout<<j<<','<<a[j];
}