一、选择题
1.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为      A   
A. main           B. MAIN           C. name           D. function
2.若a,b均为int型变量,为了将10赋给a,将20赋给b,则对应以下cin语句的正确输入方式为  B    。(<CR>代表回车换行,_代表空格)。
  cin >> a >> b;
  A.1020<CR>  B.10_20<CR>  C.10,20<CR>  D.20_10<CR>
3.在以下关于C++语言的注释的叙述中,不正确的是  C   
A.  A.C++程序中,注释可用"/*"、"*/"形式表示,也可用"#KDJF    C. 67KDJ    D. DK3_
4./
5.关于字符串和字符的关系正确的是  C  
A.“A”与A是相同的
B.字符串是常量,字符是变量
C.“A”与A是不同的
D. “A  ”与“A”是相同的
6.下面关于语句的说法正确的是  B   
A.下面这两段程序的执行效果是一致的
B.空语句是只有一个分号的语句,它其实什么也不干
C.*
D.语句的构成不一定需要分号
E.语句的书写对程序的运行不起作用,因此可以随便写都可以
7.以下各标识符中,合法的用户标识符组为  D   
A. PAd,P#d,b-b,abc,_0123,ssiped
B. cin,a10,CPP,float,del_word,signed
C. void,max,hiy,<fr>,list,*jer
D. a,temp,_isw,INT,keep,wind
8.在VC++中,以下语句的输出为  D   
|
  short int k= -1;
  cout << k << ',' << (unsigned short) k <<endl;
  A.-1,-1  B.-1,32767  C.-1,32768  D.-1,65535
9.若给出以下程序,其输出为  B   
  #include <iostream>
  using namespace std;
  int main ( )
  { int a=4,b=7;
cout << (a=a+1,b+a,b+1) << endl;
return 0;
  }
  A.5    B.8    C.11  D.程序有错误,无法运行
10.字符串“\”EOF= -\61\””的长度是  A   
A. 8         B. 9     C. 12    D. 非法字符串
11.数学式C++程序中对应正确的表达式为  B  
  Asqrt(sin(x)>0sin(x):-sin(x))    Bsqrt(fabs(sinx))
%
  Csqrt(sqrt(sinx*sinx))        Dfabs(sqrt(sin(x)))
12.下列    A    是C++语言的有效标识符
A_No1            B.    C.12345        D.int
13.C++语言中,表示一条语句结束的标号是    B   
A.#                B.;        C.它们均为真         B. 其中一个为真     
C. 它们均为假            D. 其中一个为假
14.若给定条件表达式(m)(a++): (a--),则其中表达式m  C   
  A. 和(m= =0)等价           B. 和(m= =1)等价 
]
C. 和(m!=0)等价           D. 和(m!=1)等价
15.在C++语言的if语句中,用作判断的表达式为  D   
  A. 关系表达式              B. 逻辑表达式 
C. 算术表达式              D. 任意表达式
16.设i和k都是int类型,则以下for循环语句  B   
  for ( i=0, k= -1; k=1; i++, k++ ) cout << "****\n";
  A. 判断循环结束的条件不合法      B. 是无限循环
  C. 循环体一次也不执行            D. 循环体只执行一次
17.
18.若有以下语句,则输出结果为  A
  int a=2,b=1;
  cout << a>b"a大于b":"a小于b" << endl;
  A. a大于b    B. a小于b    C. 1      D. 输出语句有错
19.int k=10;
while(k=0) k=k-1;
则下面描述正确的是    C   
A. while循环执行10        B. 循环是无限循环
(
C. 循环体语句一次也不执行    D. 循环体语句执行一次
20. int a=1,b=2,c=2,t;
while(a<b) {t=a;a=b;b=t;c--;}
cout<<a<<”,”<<b<<”,”<<c;
运行结果为    D   
A. 1,2,0    B. 2,1,0      C. 1,2,1      D. 2,1,1
21.int x=-1;
do
~
{x=x*x;}
while(!x);
下列说法正确的是    C   
A. 是死循环              B. 循环执行两次
C. 循环执行一次          D. 有语法错误
22. 以下能正确计算1*2*3*…*10的程序段是    C   
A.    do {i=1;s=1;                B. do {i=1;s=0;
s=s*i; i++;}                  s=s*i;i++;}
      while(i<=10);                while(i<=10);
C. i=1;s=1;                    D. i=1;s=0;
    do {s=s*i;                    do{s=s*i;
i++;}                      i++;}
while(i<=10);                  while(i<=10);
23.以下描述正确的是    C   
A. 由于do-while循环中循环体语句只是一条可执行语句,所以循环体内不能使用复合语句
B. do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
}
C.do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操作
D. do-while循环中,根据情况可以省略while
24.C++whiledo-while循环的主要区别是    A   
A. do-while的循环体至少无条件执行一次
B. while的循环控制条件比do-while的循环控制条件严格一维数组的定义和初始化
C. do-while允许从外部转到循环体内
D. do-while的循环体不能是复合语句
25.下面有关for循环的正确描述是    D 
(
A. for循环只能用于循环次数已经确定的情况
B. for循环是先执行循环体语句,后判断表达式
C. for循环中,不能用break语句跳出循环体
D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
26.for(表达式1 ;表达式3)可理解为    B   
A. for(表达式10;表达式3)
B. for(表达式11;表达式3)
C. for(表达式1;表达式1;表达式3)
\
D. or(表达式1;表达式3;表达式3)
27.for(i=2;i= =0;)  printf(“%d”,I--);
循环执行的次数是    B   
A. 无限次    B. 0      C. 1      D. 2
28.在C++编程语言中,以下正确的描述是    B   
A. continue语句的作用是结束整个循环的执行
B. 只能在循环体内和switch语句体内使用break语句
C. 在循坏体内使用break语句或continue语句的作用相同
"
D. 从多层循环嵌套中退出,只能使用goto语句
29.下面程序段    D   
for(t=1;t<=100;t++)
{cin>>x;
  if(x<0) continue;
  cout<<t;}
A.x<0时整个循环结束  B. x>=0时什么也不输出
C.  cout永远也不执行    D. 最多允许输出100个非负整数
30.(
31.定义一个函数实现交换xy的值,并将结果正确返回。能够实现此功能的是  C  
A. swap(int x, int y){ int t; t=x; x=y; y=t; }
B. swap(int *x, int *y){ int t; t=x; x=y; y=t; }
C. swap(int *x, int *y){ int t; t= *x; *x = *y; *y=t; }
D. swap(int *x, int *y){ int *t; t=x; x=y; y=t; }
32.说明语句"int (*p) ( );"的含义是  C  
A. p是一个指向一维数组的指针变量 
B. p是指针变量, 指向一个整型数据
@
C. p是一个指向函数的指针,该函数的返回值是一个整型 
D. 以上都不对
33.设有说明int (*p) [4 ]; 其中的标识符p  C 
A. 4个指向整型变量的指针变量 
B. 指向4个整型变量的函数指针
C. 一个指向具有4个整型元素的一维数组的指针
D. 具有4个指向整型变量的指针元素的一维指针数组
34.若有如下声明,下列说法错误的是    C   
struct em
{ char a;
char b;
};
  A. struct是结构体类型关键字      B. em是结构体类型名

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。