2019年秋二级C语言笔试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
26. 已知有程序段 char str[][10]={"Aoyun","Beijing"},*p=&str[0][0]; printf("%s\n",p+10); 则执行printf语句后输出为 (2A6) 。
A.Beijing B.Aoyun C.ing D.ng
Hale Waihona Puke Baidu
27. 以下声明中错误的是 A.int a[2] ; B.int a[ ]={ 0 , 1 } ; C.int a[3]=0 ; D.int a[3][4]={0} ;
} } printf("%d\n",sum); }
(16) 。
7. 以下程序运行时输出结果是 (107), 20 。 #include <stdio.h> void func ( int b) {
int a ; a=b ; b=10 ; } void main( ) { int a=10 , b=20 ; func(b) ; printf( "%d,%d" , a , b ) ; }
24. 若有声明 “ double x=3 , c ,*a=&x ,*b=&c ; ” , 25. 则下列语句中错误的是 C(24) 。
A.a=b=0 ; B.a=&c , b=a ; C.&a=&b ; D.*b=*a ;
25. 数学式 a 在C程序中正确的表示形式为 (2B5) 。
2b
A.sqrt(a)/2*b B.sqrt(a)/2/b C.sqrt(a)/2b D.sqrt a/(2*b)
3.若已有定义 “ enum TP{A,B,C}; ”,则执行语 句 “ printf("%d\n",A+1); ” 后输出结果是 (13) 。
4. 若需要打开D盘上user子目录下已经存在的名 为abc.txt的文本文件,先读出文件中数据,后 追加写入新数据,则正确的函数调用语句 是: fp=fopen("D:\\user\\abc.txt", "a+"(或4)"ab+" ; ”。
二、填空题(将答案填写在答题纸的相应答题号内, 每个答案只占一行,共30分)
l 基本概念
1.已知有函数定义“int fun( ){ return (3 ,4) ;}”,则
调
4
用fun后的函数返回值是 (1) 。
2.设有声明 “ int a=3, b=4; float x=4.5, y=3.5; ”, 则表达式“ (float)(a+b)/2+(int)x%(int)y ” 的值 是 (42.)5 。
3(/5,) 5/8。
6. 以下程序运行时输出结果为 #include <stdio.h> void main( ) { int i ,sum=0 ;
for ( i=0 ; i<5 ; i++ ) { switch ( i )
{ case 0: case 1: sum++ ; case 3: sum++ ; case 4: sum-- ; break ;
2019(秋)C语言笔试卷
一、选择题(用答题卡答题,答案依次填在21~30答题号内,共10分)
21. 以下叙述中正确的是 (D21) 。
A.在编译时可以发现注释中的拼写错误 B.C语言程序的每一行只能写一条语句 C.main( ) {……}必须位于程序的开始 D.C语言程序可以由一个或多个函数组成
printf( "%d\n" , f2( )+f2( ) ) ; }
(83) ,
9. 以下程序运行时输出结果是 A(B10C)xyz 。 #include<stdio.h> #include<string.h> void sf(char *s1 , char *s2) { if ( *s1=*s2 )
sf(s1+1,s2+1) ; } void main( ) { char a[20]= "ABC" , b[20]="xyz" ;
sf( a+strlen(a) , b ) ; puts(a) ; }
l 阅读程序 5. 以下程序运行时输出结果的最后一行是 #include<stdio.h> void main( ) {
int a=1,b=1,i ; for(i=1;i<=2;i++) { a=a+b ;
printf("%d / %d , " , b ,a) ; b=a+b; printf("%d / %d \n" , a , b) ; } printf("\n") ; }
22. 以下选项中不能用作变量名的是 A._float B.switch C.sum D._123
(2B2) 。
23. 已知sizeof(int)的值为2,为将10!的值存储到变量 f 中(10!=3628800),变量f的类型应声明 为 (A23) 。
A.long int B.int C.short int D.unsigned int
C(27) 。
28. 已知有结构定义和变量声明如下: struct student { char name[20] ; int score ; struct student *h ; } stu ,*p ; int *q ;
以下选项中错误的是 (2C8) 。 A.p=&stu ; B.q=&stu.score ; C.scanf("%s%d",&stu) ; D.stu.h=p ;
8. 以下程序运行时输出结果的第一行是 第 二行是 (92) 。
#include<stdio.h> int f1( ) { static int i=0 , f=1;
return f *=++i ; } int f2( ) { int i=0 , f=1 ;
return f *=++i ; } void main( ) { printf( "%d\n" , f1( )+f1( ) ) ;
29. 已有声明 “ int a=3,b=3,c=2;”,以下选项中值为0 30. 的表达式是 A(29) 。
A. !a&&!b&&c B. !a||!b||c C. a==b&&b>=c D. a>=b&&b>c
30. 若有声明 “ char ss[8]= “Red ” ; ”,则sizeof(ss) 的值是 (3A0) 。 A. 8 B. 4 C. 3 D. 1