c语言程序设计二级笔试试卷及答案(编辑修改稿)内容摘要:
\039。 }。 int i,j。 i=sizeof(a)。 j=strlen(a)。 printf(%d,%d\n,i,j)。 } 程序运行后的输出结果是 ______。 A) 9,9 B) 8,9 C) 1,8 D) 9,8 (34)以下程序中的函数 reverse 的功能是将 a 所指数组中的内容进行逆置。 void reverse(int a[],int n) {int i,t。 for(i=0。 i{t=a[i]。 a[i]=a[n1i]。 a[n1i]=t。 } } main() {int b[10]={1,2,3,4,5,6,7,8,9,10}。 int i,s=0。 reverse(b,8)。 for(i=6。 i10。 i++) s+=b[i]。 printf(%d\n,s)。 } 程序运行后的输出结果是 ______。 A) 22 B) 10 C) 34 D) 30 (35)有以下程序 main() {int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}}。 int i,s=0。 for(i=0。 i4。 i++) s+=aa[i][1]。 printf(%d\n,s)。 } 程序运行后的输出结果是 ______。 A) 11 B) 19 C) 13 D) 20 (36)有以下程序 include main() {char *p=abcde\0fghjik\0。 printf(%d\n,strlen(p))。 } 程序运行后的输出结果是 ______。 A) 12 B) 15 C) 6 D) 5 (37)程序中头文件 的内容是: define N 5 define M1 N*3 程序如下: include define M2 N*2 main() {int i。 i=M1+M2。 printf(%d\n,i)。 } 程序编译后运行的输出结果是 ______。 A) 10 B) 20 C) 25 D) 30 (38)有以下程序 include main() {FILE *fp。 int i=20,j=30,k,n。 fp=fopen(,w)。 fprintf(fp,%d\n,i)。 fprintf(fp,%d\n,j)。 fclose(fp)。 fp=fopen(,r)。 fscanf(fp,%d%d,amp。 k,amp。 n)。 printf(%d%d\n,k,n)。 fclose(fp)。 } 程序运行后的输出结果是 _____。 A) 20 30 B) 20 50 C) 30 50 D) 30 20 (39)以下叙述中错误的是 ______。 A) 二进制文件打开后可以先读文件的末尾,而顺序文件不可以 B) 在程序结束时,应当用 fclose 函数关闭已打开的文件 C) 利用 fread 函数从二进制文件中读数据,可以用数组名给数组中所有元素读入数据 D) 不可以用 FILE 定义指向二进制文件的文件指针 (40)有以下程序 include main(int argc,char *argv[]) {int i,len=0。 for(i=1。 iprintf(%d\n,len)。 } 程序编译连接后生成的可执行文件是 , 若运行时输入带参数的命令行是: ex1 abcd efg 10回车 则运行的结果是 ______。 A) 22 B) 17 C) 12 D) 9 (41)有以下程序 int fa(int x) {return x*x。 } int fb(int x) {return x*x*x。 } int f(int (*f1)(),int (*f2)(),int x) {return f2(x)f1(x)。 } main() {int i。 i=f(fa,fb,2)。 printf(%d\n,i)。 } 程序运行后的输出结果是 ______。 A) 4 B) 1 C) 4 D) 8 (42)有以下程序 int a=3。 main() {int s=0。 {int a=5。 s+=a++。 } s+=a++。 printf(%d\n,s)。 } 程序运行后的输出结果是 _______。 A) 8 B) 10 C) 7 D) 11 (43)有以下程序 void ss(char *s,char t) {while(*s) {if(*s==t) *s=t39。 a39。 +39。 A39。 s++。 } } main() {char str1[100]=abcddfefdbd,c=39。 d39。 ss(str1,c)。 printf(%s\n,str1)。 } 程序运行后的输出结果是 ______。 A) ABCDDEFEDBD B) abcDDfefDbD C) abcAAfefAbA D) Abcddfefdbd (44)有以下程序 struct STU {char num[10]。 float score[3]。 } main() {struct STU s[3]={{20201,90,95,85}, {20202,95,80,75}, {2。c语言程序设计二级笔试试卷及答案(编辑修改稿)
相关推荐
类型。 79.下列标识中,( B )不是局部变量。 A) register B) 外部static 类 C) auto类 D) 函数形参 80.有一个 int 变量,在程序中使用频率很高,最好把它定义为( A )。 A) register B) auto C) extern D) static 81.下列标识中,( C)是文件级作用域的。 A) 函数形参 B) 语句标号 C) 外部静态标识符
注 :试卷是用誊影手段而成,因此请命题老师用黑色墨水或黑色圆珠笔较工整地书写题目,以保证试卷字迹清晰。 11. 下列程序的输出结果为 ________。 main() { int i=3, b; b=(i)+(i); printf(“ %d” , b); } A. 6 B. 2 C. 3 D. 4 12. 当 c的值不为 0时,在下列选项中能正确将 c的值赋给变量 a、 b的是 A .
hile(n2) { n。 printf(“%d”,n)。 } } A) 543 B)432 C)4321 D)5432 17.下列四种数组定义,合法的数组定义是 ___。 A) char a[ ]=hello。 B) int a[4]={4,3,2,1,0}。 C) char a=hello。 D) char a[4]= hello。 18.设 p1和 p2 均为指向 int 型的指针变量 ,
9。 z39。 五、编程题 (30分 ) 说明:每个语法错误扣 ,语法错误最多扣两分为止。 1. include main() { float x,y。 /*变量 定义 1分 */ scanf(“%f”, amp。 x)。 /*输入 1分 */ if(x0) y=1。 else if(x0) y=1。 else y=0。 /*判断求值 2分 */ printf(“x=%f, y=%f”, x
(C) A. 在队列中只能插入数据 B. 在队列中只能删除数据 C. 队列是先进先出的线性表 D. 队列是先进后出的线性表 (44) 对长度为 N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。 (B) A. N+1 B. N C. (N+1)/2 D. N/2 (45) 信息隐蔽的概念与下述哪一种概念直接相关 ______。 (B) A. 软件结构定义 B. 模块独立 性 C
an=%d”,n,y/n)。 } ───────────────── 11. 打印如下方阵 1 0 0 0 0 0 1 3 1 0 0 0 1 4 3 3 1 0 1 4 4 3 3 3 1 4 4 4 3 3 1 2 1 4 4 3 1 2 2 2 1 4 1 2 2 2 2 2 1 main( ) { int a[7][7],i,j。 for(i=0。 i7。 i++) for(j=0。