1.切换编辑窗和信息窗的命令键是(C).
(A).F2
(B).F3
(C).F6
(D).F9
2.下列标识符中,不合法的C语言用户自定义标识符是(B).
(A).printf
(B).enum
(C)._
(D).sin
3.以下所列的C语言常量中,错误的是(B).
(A).0xFF
(B).1.2e0.5
(C).2L
(D).'\72'
4.以下不符合C语言语法的赋值语句是(D).
(A).j++;
(B).j=j=5;
(C).k=(2*4,k*4);
(D).y=float(j);
5.设char型变量x中的值为10100111,则表达式(2+x)^(~3)的值是(D).
(A).10101001
(B).10101000
(C).11111101
(D).1010101
6.若有以下定义:char  s='\092'; 则该语句(B).
(A).使s的值包含1个字符
(B).定义不合法,s的值不确定
(C).使s的值包含4个字符
(D).使s的值包含3个字符
7.判断char型变量cl是否为小写字母的正确表达式是(D).
(A).'a'<=cl<='z'
(B).(cl>=a)&&(cl<=z)
(C).('a'>=cl)||('z'<=cl)
(D).(cl>='a')&&(cl<='z')
8.用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是(C).
long  a=0xffffff;
int  b;  char  c;
(A).0ffffff 和0x61
(B).-1和98
(C).-1和97
(D).指向同一地址
9.下列程序的输出结果是(B).
main()
{ int  x=1,y=0,a=0,b=0;
  switch(x)
    {
      case  1:switch(y)
                {
                  case  0:a++;break;
                  case  1:b++;break;
                }
      case  2:a++;b++;break;
      case  3:a++;b++;break;
    }
  printf("a=%d,b=%d\n",a,b);
}
(A).a=1,b=0
(B).a=2,b=1
(C).a=1,b=1
(D).a=2,b=2
10.下列程序的输出为(D).
main()
{  int  y=10;
    while(y--)  ;
    printf("y=%d\n",y);
}
(A).y=0
(B).while构成无限循环
(C).y=1
(D).y=-1
11.以下程序段的输出结果为(D).
char c[]="abc";
int  i=0;
do ;while(c[i++]!='\0');printf("%d",i-1);
(A).abc
(B).ab
(C).2
(D).3
12.以下不正确的定义语句是(B).
(A).double x[5]={2.0,4.0,6.0,8.0,10.0};
(B).int y[5]={0,1,3,5,7,9};
(C).char c1[]={'1','2','3','4','5'};
(D).char c2[]={'\x10','\xa','\x8'};
13.以下数组定义中不正确的是(D).
(A).int a[2][3];
(B).int b[][3]={0,1,2,3};
(C).int c[100][100]={0};
(D).int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
14.以下能对二维数组a进行正确初始化的语句是(B).
(A).int a[2][]={{1,0,1},{5,2,3}};
(B).int a[][3]={{1,2,3},{4,5,6}};
(C).int a[2][4]={{1,2,3},{4,5},{6}};
(D).int a[][3]={{1,0,1}{},{1,1}};
15.以下对C语言函数的描述中,正确的是(A).
(A).C程序必须由一个或一个以上的函数组成
(B).C函数既可以嵌套定义又可以递归调用
(C).函数必须有返回值,否则不能使用函数
(D).C程序中有调用关系的所有函数必须放在同一个程序文件中
16.以下错误的描述是:函数调用可以(D).
(A).出现在执行语句中
(B).出现在一个表达式中
(C).做为一个函数的实参
c语言中struct
(D).做为一个函数的形参
17.相同结构体类型的变量之间,可以(B).
(A).相加
(B).赋值
(C).比较大小
(D).地址相同
18.关于指针概念说法不正确的是(D).
(A).一个指针变量只能指向同一类型变量
(B).一个变量的地址称为该变量的指针
(C).只有同一类型变量的地址才能放到指向该类型变量的指针变量之中
(D).指针变量可以由整数赋,不能用浮点赋
19.若有double *p,x[10];int i=5;使指针变量p指向元素x[5]的语句为(A).
(A).p=&x[i];
(B).p=x;
(C).p=x[i];
(D).p=&(x+i)
20.不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以什么的形式存在磁盘上(C).
(A).内存
(B).缓冲区
(C).文件
(D).寄存器
1.下列程序段的输出结果为(C).float x=213.82631;
printf("%3d",(int)x);
(A).213.82
(B).213.83
(C).213
(D).3.8
2.下列字符序列中,可用作C标识符的一组字符序列是(D).
(A).S.b,sum,average,_above
(B).class,day,lotus_1,2day
(C).#md,&12x,month,student_n!
(D).D56,r_1_2,name,_st_1
3.在C语言中,能代表逻辑值"真"的是(D).
(A).True
(B).大于0的数
(C).非0整数
(D).非0的数
4.以下运算符中优先级最低的是(C).
(A).&&
(B).&
(C).||
(D).|
5.已定义ch为字符型变量,以下赋值语句中错误的是(A).
(A).ch='\';
(B).ch=62+3;
(C).ch=NULL;
(D).ch='\xaa';
6.设char型变量x中的值为10100111,则表达式(2+x)^(~3)的值是(D).
(A).10101001
(B).10101000
(C).11111101
(D).1010101
7.以下选项中合法的用户标识符是(B).
(A).long
(B)._2Test
(C).3Dmax
(D).A.dat
8.以下叙述中不正确的是(C).
(A).表达式a&=b等价于a=a&b
(B).表达式a|=b等价于a=a|b
(C).表达式a!=b等价于a=a!b
(D).表达式a^=b等价于a=a^b
9.C语言中 while 和 do-while 循环的主要区别是(A).
(A).do-while 的循环体至少无条件执行一次
(B).while的循环控制条件比 do-while的循环控制条件更严格
(C).do-while 允许从外部转到循环体内
(D).do-while 的循环体不能是复合语句
10.int a=1,b=2,c=3;
if(a>c)b=a;a=c;c=b;则c的值为(B).
(A).1
(B).2
(C).3
(D).不一定
11.int a[10];合法的数组元素的最小下标值为(D).
(A).10
(B).9
(C).1
(D).0
12.在C语言中,引用数组元素时,其数组下标的数据类型允许是(C).
(A).整型常量
(B).整型表达式
(C).整型常量或整型表达式
(D).任何类型的表达式
13.以下不能正确进行字符串赋初值的语句是(A).
(A).char str[5]="good!";
(B).char str[]="good!";
(C).char *str="good!";
(D).char str[5]={'g','o','o','d'};
14.以下程序段的输出结果为(D).
char c[]="abc";
int  i=0;
do ;while(c[i++]!='\0');printf("%d",i-1);
(A).abc
(B).ab
(C).2
(D).3
15.在C语言中,调用函数除函数名外,还必须有(C).
(A).函数预说明
(B).实际参数
(C).( )
(D).函数返回值
16.在C语言中,函数的隐含存储类别是(C).
(A).auto
(B).static
(C).extern
(D).无存储类别
17.使用共用体变量,不可以(D).
(A).节省存储空间
(B).简化程序设计
(C).进行动态管理
(D).同时访问所有成员
18若有下列定义和语句,则对a数组元素的非法引用是(B).
int a[2][3], (*pt)[3]; pt=a;
(A).pt[0][0]
(B).*(pt+1)[2]
(C).*(pt[1]+2)
(D).*(a[0]+2)
19.若有定义:char  *p1,*p2,*p3,*p4,ch;则不能正确赋值的程序语句为(C).
(A).p1=&ch; scanf("%c",p1);
(B).p2=(char *)malloc(1);scanf("%c",p2);
(C).*p3=getchar();
(D).p4=&ch;*p4=getchar();
20.C语言中的文件的存储方式有(A).
(A).只能顺序存取
(B).只能随机存取(或直接存取)
(C).可以顺序存取,也可随机存取
(D).只能从文件的开头进行存取
1.下列字符序列中,是C语言保留字的是(A).
(A).sizeof
(B).include
(C).scanf
(D).sqrt
2.下列程序段的输出结果为(B).
float k=0.8567;
printf("%06.1f%%",k*100);
(A).0085.6%%
(B).0085.7%
(C).0085.6%
(D)..857
3.C语言中要求对变量作强制定义的主要理由是(D).

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