1、.(1) 在C语言源程序中,以下叙述正确的是( C )。A) main函数必须位于文件的开头。B) 每行只能写一条语句。C) 程序中的一个语句可以写成多行。D) 每个语句的最后必须有点号。(2) 以下( C )是正确的字符常量。A) “c”B) “”C) WD) “32a”(3) 若有定义:int a=2;则正确的赋值表达式是( A )。A)a-=(a*3)B)double(-a)C)a*3D)a*4=3(4) 下面叙述正确的是( B )。A)2/3与2.0/3.0等价B)(int)2.0/3 与 2/3 等价C)+5 与 6 等价D)A与A等价(5) putchar()函数的功能是向终端输出
2、( B )。A)多个字符B)一个字符C)一个实型变量值D)一个整型变量表达式(6) 结构化程序设计不包括( A )。A)最优化B)自顶而下,逐步细化C)模块化设计D)结构化编码(7) 已知double a=5.2; 则正确的赋值表达式是( A )。A)a+=a-=(a=4)*(a=3)B)a=a*3=2C)a%3D)a=double(-3)(8) C语言对if嵌套语句的规定:else总是与( B )配对。A)第一个ifB)之前最近的且尚未配对的ifC)缩进位置相同的ifD)之前最近的if(9) 对于整型变量x和y,语句 for(x=0,y=0;(y!=123)&(x4);x+) y+; 中的“
3、y+;”被执行( A )。A)4次B)0次C)123次D)3次(10) 以下能对一维数组a进行正确初始化的语句是( D )。A)int a5=(0,0,0,0,0);B)int a5=0;C)int a5=1,2,3,4,5,6,7;D)int a=0;(11) 若有定义:int a34=1,2,0,1,2,3;则a11的值为( A )。A) 0B) 1,2C) 1D) 3(12) 若有定义:char a=abcdef;char b=xyz;则以下程序段运行后屏幕输出为( B )。strcpy(a,b);printf(%c,a2);A) cB) zC) 0D) d(13) 以下程序运行后屏幕输
4、出为( B )。#includevoid f(int i) int a=2; a=i+; printf(%d,a);main() int a=1,c=3; f(c); a=c+; printf(%d,a);A)4,3B)3,3C)4,5D)3,5(14) 以下叙述中,正确的是( A )。A)宏展开不占用运行时间,只占用编译时间B)预编译处理命令行必须以分号结束C)一个源程序只能有一个预编译处理命令行D)使用带参数的宏定义时,应该说明每个参数的数据类型(15) 以下程序段运行后*(+p)的值为( C )。char a5=work;char *p;p=a;A)wB)存放w的地址C)oD)存放o的地
5、址(16) 以下程序段运行后x的值为( B )。 int a=1,2,3,b=4,2,5;int *p,*q;int i,x;p=a; q=b;for(i=0;inext = &c; p-next = head-next;D)(*head).next = p; (*p).next = &b;(19) 对枚举类型进行定义,不正确的是( A )。A)enum b1, 2, 3;B)enum aA, B, C;C)enum cD=3, E, F;D)enum dX=0, Y=5, Z=9;(20) 以下程序的可执行文件名是file.exe。main(argc,argv)int argc;char *argv; int i; for(i=2;iargc;i+) printf(%s%c,argvi,(iargc-1)? :n);在DOS命令行输入:file My C Language and Programming,其输出结果是( A )。A)C Language and ProgrammingB)My C Language and ProgrammingC)MyCLanguageandProgrammingD)file My C Language and Programming.