选择题
1.下列字符序列中,不可用作C语言标识符的是( )。
A.abc123      B.       C._123_        D._ok         
2.请选出可用作C语言用户标识符的一组标识符( )。     
Avoid          B.a3_b3       CFor        D2a
define          _123       -abc              DO
WORD          IF              Case            sizeof
3.不属于C语言关键字的是( )。         
A.int          B.break        C.while      D.character
4.以下不能定义为用户标示符的是( )。   
A.scanf          B.Void          C._3com_      D.int
5.C语言程序的基本单位是( )。   
A程序行        B语句      C.函数          D字符
6.以下说法中正确的是( switch case判断字符串)。     
A.C语言程序总是从第一个定义的函数开始执行
B.在C语言程序中,要调用的函数必须在main( )函数中定义
C.C语言程序总是从main( )函数开始执行
D.C语言程序中的main( )函数必须放在程序的开始部分
7.以下选项中,合法的用户标识符是( )。
    Along      B_2abc     C3dmax      D
8.已知大写字母A的ASCII码值是65, 小写字母a的ASCII码是97,则用八进制表示的字符常量\101是( )。
    A.字符A     B字符a      C字符c      D非法的常量
9.以下选项中,正确的字符常量是( )。
    AF        B\\’’      C.W      D’’
10.下列变量定义中合法的是                                               
Ashort _a=;                     Bdouble b=1+;
Clong do=0xfdaL;                      Dfloat 2_and=1-e-3;
11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。
A.缩排位置相同的if
B.在其之前未配对的if
C.在其之前未配对的最近的if
D.同一行上的if
12.下列运算符中优先级最高的是()。
    A.<          B.&&        C.+            D.!=
13.判断char型变量s是否为小写字母的正确表达式是()。
  A.a <= s<=z                  B.(s>=a) & (s<=z)
    C.(s>=’a’) && (s<=’z’)            D.(a<=s) and (z>=s)
14.已知 x=45, y=a, z=0; 则表达式(x>=z && y<z || !y)的值是()。
  A.0                                  B.语法错
  C.1                                  D.“假”
15.有一函数:  ,以下程序段中不能根据x值正确计算出y值的是()。
A.if (x>0) y=1;
else  if (x==0) y=0;
    else y= -1;
B.y=0;
  if (x>0) y=1;
else if (x<0) y= -1;
C.y=0;
  if (x>=0)
    if(x>0) y=1;
  else y= -1;
D.if (x>=0)
  if (x>0) y=1;
    else y=0;
  else y= -1;
16.已知int a=1,b=2,c=3; 以下语句执行后a,b,c的值是()。
if(a>b)
c=a; a=b; b=c;
A.a=1, b=2, c=3                      B.a=2, b=3, c=3
C.a=2, b=3, c=1                      D.a=2, b=3, c=2
17.以下程序的运行结果是()。
#include ””
main()
{ int a=1;
if (a++>1) printf(%d\n, a);
else      printf(%d\n, a--);
}
A.0                B.1          C.2            D.3
18.执行以下程序段后,变量x,y,z的值分别为()。
    int a=1,b=0, x, y, z;
x=(--a==b++)?--a:++b;
y=a++;
z=b;
A.x=0,y=0,z=0                      B.x= -1,y= -1,z= 1
C.x=0,y=1,z=0                      D.x= -1,y= 2, z= 1
19.以下程序的输出结果是()。
#include ””
main()
{
int a=5, b=4, c=6, d;
  printf(%d\n, d=a>b? a>c?a:c :b);
}
A.5            B.4              C.6              D.不确定
20.执行下列程序,输入为3的数出结果是()。
#include
main()
{
int k;
  scanf(%d, &k);
switch(k)
{ case 1: printf(%d\n, k++);
case 2: printf(%d\n, k++);
  case 3: printf(%d\n, k++);
  case 4: printf(%d\n, k++);
break;
        default: printf(Full!\n);
}
}
A.3          B.4              C.3                D.4
5                    4
21.有如下程序,写出该执行结果()。
#include
main()
{
float x=, y;
  if (x< y=;
else if (x< y=x;
else y=;
printf(%f\n,y);
}
A.      B.      C.      D.
22.运行以下程序后,如从键盘上输入china#,则输出为()。
#include
main()
{
int v1=0,v2=0;
char ch;
while ( (ch=getchar()) !=# )
        switch (ch)
          { case a:
case h:
default: v1++;
case o: v2++;
}
printf(%d,%d\n, v1,v2);
}
A.2,0          B.5,0            C.5,5            D.2,5
23.有以下程序,程序运行后的输出结果是()。
#include
main()
int a=15, b=21, m=0;
switch (a%3)
{  case 0: m++; break;
  case 1: m++;
  switch (b%2)
  {  default: m++;
      case 0: m++; break;
}
}
printf(%d\n,m);
}
A.1                B.2                C.3                D.4
24.在下列选项中,没有构成死循环的程序段是(  )。
i=100;
while (1)
{
i=i%100+1;
if(i>100) break;
}
B. for ( ; ;);
k=1000
do {++k}while (k>=10000)
s=36;
while (s) ;
--s;
25.下面程序的运行结果为(  )。
main()
{ int n;
for(n=1;n<=10;n++)
{ if(n%3==0)continue;
printf("%d",n);
}
}
                           
26.在以下给出的表达式中,与do-while(E)语句中的(E)不等价的表达式是(  )。
A.(!E==0)    B.(E>0||E<0)      C.(E==0)           D.(E!=0)
27.下列程序的输出是(  )。
#include<>
main()
{ int i;char c;
for(i=0;i<=5;i++)
{c=getchar();putchar(c);
}
}
程序执行时从第一列开始输入以下数据,<CR>代表换行符。
u<CR>
w<CR>
xsta<CR>
                                 
              w                w               w
                  x                xs              xsta
28.在C语言中,为了结束while语句构成的循环,while后一对圆括号中表达式的值应该为(  )。
                                            D.非0

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