1、一个C语言的执行是从:()
A) 本程序的主函数开始,到本程序的主函数结束
B) 本程序的第一个函数开始,到本程序的最后一个函数结束
C) 本程序的主函数开始,到本程序的最后一个函数结束
D) 本程序的第一个函数开始,到本程序的主函数结束
A
2. 以下叙述正确的是:
A) 在C程序中,主函数必须位于程序的最前面
B) 在C程序中,一行只能写一条语句
C) C程序的基本结构是程序行
D) C语句是完成某种程序功能的最小单位
D
3. 在C语言中(以16位PC机为例),五种基本数据类型存储空间长度的排列顺序是:
A) char B) char=int C) char D) char=int=long int<=float A 4. 在C语言的变量类型说明中,int,char,float等类型的长度是: A) 固定的B) 由用户自己定义的 C) 任意的D) 与机器字长有关的 D 5. 下列四组常数中,均是正确的八进制数或十六进制数的一组是: A) 016 0xbf 018 B) 0abc 017 0xa C) 010 -0x11 0x16 D) 0A12 7FF -123 C 6. 下列四组常数中,均是合法整型常量的一组是: A) 160 0xffff 011 B) -0xcdf 01a 0xe C) -01 986,012 0668 D) -0x48a 2e5 0x A 7. 设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是: A) float B) char C) int D) double D 8. 若有定义:int a=7; float x=2.5, y=4.7; 则表达式: x+a%3*(int)(x+y)%2/4的值是: A) 2.500000 B) 2.7500000 C) 3.500000 D) 0.000000 A 9. 已知字母"A"的ASCII码为十进制的65,下面程序输出正确的是: main() { char ch1, ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d, %c\n", ch1, ch2); } A) 67, D B) B, C C) 不确定的值D) C, D A 10. 在C语言中,下面合法的长整型数是: A) 0L B) 4962710 C) 0.054838743 D) 2.1869e10 A 11. 若有说明语句:char c='\101'; 则变量c: A) 包含一个字符B) 包含两个字符 C) 包含三个字符D) 说明不合法 A 12. 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f的数据类型是: A) int型B)float型 C) double型D)不确定 C 13. C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符: A) 必须为字母B) 必须为下划线 C) 必须为字母或下划线D) 可以是字母,数字或下划线中的任意一种 C 14. 若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式: (x+y)%2+(int)a/(int)b的值是: A) 0 B) 2 C) 1.5 D) 1 D 15. 若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值: A) 0 B) 1 C) 12 D) 6 A 16. 以下叙述中不正确的是: A) 空字符串(即两个双引号连写)只占一个存储单元 B) 字符型常量可以放在字符型变量中 C) 字符型常量可以放在字符串变量中 D) 字符型常量可以与整数混合运算,而字符串常量不可以 C 17. C语言中,要求运算量必须是整型的运算符是: A) + B) / C) % D) * C 18. 表达式5!=3的值是: A) T B) 非零值 C) 0 D) 1 D 19. 设a=1,b=2,c=3,d=4,则表达式a A) 4 B) 3 C) 2 D) 1 D 20. 若希望当A的值为奇数时,表达式的值为"真",A的值为偶数时,表达式的值为"假",则下面不能满足要求的表达式是: A) A%2==1 B) !(A%2==0) C) !(A%2) D) A%2 C 21. a,b均为整数,且b!=0,则表达式a/b*b+a%b的值是: A) a B) b C) a被b除的整数部分D) a被b除的商的整数部分 A 22. 为表示关系x>y>z,应使用的C语言表达式是: A) (x>y)&&(y>z) B) (x>y)AND(y>z) C) x>y>z D) (x>y)&(y>z) A 23. 设有以下语句:int x=10;x+=3+x%(-3),则x的值是: A) 14 B) 15 C) 11 D) 12 A 27. 若有代数式(3ae)/(bc),则下面不正确的C语言表达式是: A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3 C 28. 已知x=43,ch='A',y=0,则表达式(x>=y&&ch<'B'&&!y)的值是: A) 0 B) 语法错 C) 1 D) "假" C 29. 若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是: A) 5.5 B) 5 C) 3 D) 4.0 C 31.. 阅读下面的程序 main() { int i,j; scanf("%3d%2d",&i,&j); printf("i=%d,j=%d\n",i,j); } 如果从键盘上输入1234567<回车>,则程序的运行结果是: A) i=123,j=4567 B) i=1234,j=567 C) i=1,j=2 D) i=123,j=45 D 32. 阅读下面的程序 main() { int i,j; float x,y; scanf("%f,%f",&i,&j); scanf("%f,%f",&x,&y); printf("i=%d,j=%d\n",i,j); printf("x=%f,y=%f\n",x,y); } 如果从键盘上输入 32,18<回车> 12.5,-4.3<回车> 则程序的运行结果是: A) i=32,j=18 B) i=0,j=0 x=12.500000,y=-4.300000 x=12.500000,y=-4.300000 C) i=32,j=18 D) i=0,j=0 x=12.5,y=-4.3 x=12.5,y=-4.3 B 33. 已知x=2.5,a=7,y=4.7,则表达式x+a%3*(int)(x+y)%2/4 的结果是: A) 2.4 B) 2.5 C) 2.75 D) 0 B 34. 阅读下面的程序 main() { int i,j; char ch; scanf("%d%c%f",&i,&ch,&j); printf("%d%2c%7.2f",i,ch,j); } 如果从键盘上输入 123a123x.12<回车> 则程序的运行结果是: A) 123a123.00 B) 123 a 123.12 C) 123a123.12 D) 123 a 123.00 D(暂且不看,答案不正确,不能正确输入) 35. 阅读下面的程序 #include main() { char c1,c2; c1=getchar(); c2=c1+3; printf("%c,%d\n",c2,c2); } 已知'A'的ASCII的值为65,如果从键盘上输入 D<回车> 则程序的运行结果是: A) D,68 B) 'G',68 C) D,71 D) G,71 D 36. 已知字母A的ASCII码为十进制的65,下面程序的输出是main() {char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A) 67,D B) B,C C) C,D D) 不确定的值 A 37. 下面程序的输出的是 main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 3 D) 不确定的值 C 38. 若有说明和语句 int a=5; a++; 此处表达式a++的值是 A) 7 B) 6 C) 5 D) 4 C