1、一、 单选题 1在 C 语言中,下列类型属于构造类型的是 ( D ) A整型 B字符型 C实型 D数组类型 2下列字符串不是标识符的是 ( D ) A. sum B. Average C. Day_night D. M.D.JOHN 3. 在 C 语言中 ,回车换行符是 ( A ) A. n B. t C. v D. b 4. 在 C 语言中,语句和数据定义是用( C )作为结束标记的 A句号 B逗号 C分号 D括号 5. 设有如下定义: int x=10,y=5,z; 则语句 printf(“%dn”,z=(x+=y,x/y); 的输出结果是( C ) A 0 B 1 C 3 D 4 6.
2、10以下程序的输出结果是( B ) main( ) char c1=8,c2=2; printf(“%c,%c,%d,%dn”,c1,c2,c1 -c2,c1+c2); A因输出格式不合法,输出出错信息 B 8,2,6,106 C 8,2,6,10 D 8,2,5,9 7两次运行下面的程序,如果从键盘上分别输入 6 和 4,则输出结果是( A ) main( ) int x; scanf(“%d”, if(x+5) printf(“%dn”,x); else printf(“%dn”,x -); A 7 和 5 B 7 和 4 C 6 和 4 8.表达式 (int)2.1416 的值时 ( A
3、 ) A. 2 B. 2.1 C. 0 D. 3 9.下列运算符优先级最高的是 ( B ) A. B. + C. B) if(ab)|(bc) k=1 else k=0; C)if(ab) k=1; else if(bc) k=1; else k=0; 31、算法具有五个特性 ,以下选项中不属于算法特性的是 ( B ) (A)有穷性 (B)简洁性 (C)可行性 (D)确定性 32 以下选项中可作为 C 语言合法常量的是 ( A ) (A)-80. (B)-080 (C)-8e1.0 (D)-80.0e 33、以下叙述中正确的是 ( C ) (A)用 C 语言实现的算法必须要有输入和输出操作 (
4、B)用 C 语言实现的算法可以没有输出但必须要有输入 (C)用 C 程序实现的算法可以没有输入但必须要有输出 (D)用 C 程序实现的算法可以既没有输入也没有输出 33、以下选项中 ,不能作为合法常量的是 ( B) (A)1.234e04 (B)1.234e0.4 (C)1.234e+4 (D)1.234e0 34、有以下程序 main() int i=1,j=2,k=3; if(i+=1 程序运行后的输出结果是 ( D) (A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 3 35、判断变量 ch 中的字符是否为数字字符,正确表达式是 _D_。 A) ch=0 ); 41、若
5、有以下程序: 执行后的输出结果是 (C) , 6 B) 8, 3 C) 6, 4 D) 7, 4 、 已有定义 :int x=3,y=4,z=5;,则表达式 !(x+y)+z-1 ,则与 i=j;等价的语句是 B A)i= *P; B)*P=* C)i= D)i=* *p; 40、若有以下说明 : int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 6的表达式是 C A)*p+6 B)*(p+6) C)*p+=5 D)p+5 二、 填空题 1 C 语言是通过 库函数 来进行输入和输出的。 2 C 语言的数据类型有四大类,他们是 基本类型 、 构造类型 、指针类型和
6、空类型 。 4下面程序的运行结果是 3.600000,3 main( ) float x; int i; x=3.6;i=(int)x; printf(“x=%f,i=%d”,x,i); 5数组名定义规则和变量名相同,遵守 标识符 命名规则。 6、 main( ) char c1,c2,c3; c2=c; c1=c2-1; c3=c2+1; printf(“%c,%d,%cn”,c1,c2,c3); 程序的运行结果是: b,99,d 7、 main( ) int a=5,b=6,c; c=a; if(ab) c=1; else if(a= =b) c=0; else c= 1 ; printf
7、(“c=%dn”,c); 程序的运行结果是: -1 11设 x 的值为 15, n 的值为 2,则表达式 x%=(n+=3)运算后, x 的值为 0 。 12设 int a=7,b=9,t;执行完表达式 t=(ab)?a:b后, t 的值是 9 。 14求 100 200 间的全部素数。 # include main() int m,k,i,n=0; for(m=101;m=200;m+=2) if(n=0) printf(“n“); k=sqrt(m); for(i= 2 ;i=k;i+) if(m%i=0) break ; if(i= k ) printf(“%d “,m); n+; 15、 main() int x,y=1,z=10; printf(“x=%dt”,x); x=1;