当前位置:文档之家› 2010级C语言期末考试试卷(A卷)

2010级C语言期末考试试卷(A卷)

桂林电子科技大学信息科技学院试卷2010-2011 学年第 2 学期课号I04BT014课程名称C语言程序设计(A卷;、闭卷)适用班级(或年级、专业)10级、全院一单项选择题(每题2分,共40分)1 以下叙述正确的是。

A C程序基本组成单位是语句B 简单C语句必须以分号作为结束符C C程序每一行只能写一个语句D 注释语句可以嵌套2 设a和b均为int型变量,则执行以下语句后的输出为。

int a=20; int b=3; printf("%d\n",a+=(b%=2));A 0B 20C 21D 223 设int型占2个字节,且int i=-2;,则语句printf("%u",i);的输出结果为。

A -2B -32768C 65535D 655344 以下程序运行后的输出结果是。

main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d\n",d*y);}A 0B 3C 3.07D 3.25 以下程序运行后的输出结果是。

main(){ int a=2,b=-1,c=2;if(a<b)if(b<0) c=0;else c++;printf("%d\n",c);}A 0B 1C 2D 36 以下程序的执行结果是。

main(){ int n=9;while(n>6) { n--; printf("%d",n); }}A 987B 9876C 8765D 876void main(){ int x=15,y=21,z=0;switch (x/8){ case 2: z=z+1;break;case 1: z=z+1;switch (y/21){ default : z=z+1;case 0: z=z+1;break;}}printf("%d\n",z);}A 4B 3C 2D 18 以下程序的输出结果是。

main(){int i=0,a=0;while(i<20){ for(; ;)if((i%10)==0) break;else i--;i+=11;a+=i;}printf("%d\n",a);}A 11B 21C 32D 339 以下程序执行后的输出结果是。

main(){int x=1,y=1;while(y<=5){ if(x>=10) break;if(x%2==0){ x+=5;continue;}x-=3; y++;}printf("%d,%d",x,y);}A 6,6B 7,6C 10,3D 7,3void main(){ int a, b;for(a=1,b=1; a<=100; a=a+1){ if(b>=10) break;if(b%3==1){ b=b+3; continue; };}printf("%d\n",a);}A 3B 4C 5D 10111 以下程序的输出结果是。

main(){ int i,k,a[10],p[3];k=5;for(i=0;i<10;i++) a[i]=i;for(i=0;i<3;i++) p[i]=a[i*(i+1)];for(i=0;i<3;i++) k+=p[i]*2;printf("%d\n",k);}A 20B 21C 22D 2312若运行以下程序时输入:2 4 6<回车>,则输出结果是___。

main(){ int x[3][2]={0},i;for(i=0;i<3;i++) scanf("%d",x[i]);printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);}A 2 0 0B 2 0 4C 2 4 0D 2 4 613 以下程序运行后的输出结果是。

void reverse(int a[], int n){ int i, t;for(i=0; i<n/2; i++){ t=a[i]; a[i]=a[n-1-i]; a[n-1-i]=t; }}main(){int b[10]={1,2,3,4,5,6,7,8,9,10}, i, s=0 ;reverse (b, 8);for(i=6; i<10; i++)s+=b[i];printf("%d\n",s);}A 22B 10C 34D 30main(){ char a[2][4];strcpy(a,"you"); strcpy(a[1],"me");a[0][3]='&';printf("%s\n",a);}A youB you&C meD you&me15 调用函数的实参与被调用函数的形参应有如下关系。

A 只要求实参与形参个数相等B 只要求实参与形参顺序相同C 只要求实参与形参数据类型相同D 上述三点均需具备16 以下程序运行后的输出结果是。

long fun(int n){ long s;if(n==1||n==2) s=2;else s=n-fun(n-1);return s;}main(){printf("%ld\n",fun(3));}A 1B 2C 3D 417 以下程序运行后的输出结果是。

void main(){ int i, x[3][3]={9,8,7,6,5,4,3,2,1}, *p=&x[1][1];for(i=0; i<4; i+=2) printf("%d ", p[i]);}A 5 1B 5 2C 5 3D 9 718 已知下列说明语句,则表达式**(q+2)的值是。

static int a[]={2,4,6,8}static int *p[]={a,a+1,a+2,a+3};int **q;q=p;A 2B 4C 6D 819 有以下说明语句,对结构变量中成员age的正确引用是。

struct student{ int age;int sex;}stud1,*p;A p->ageB student.ageC *p.ageD stud1.student.age#include<stdio.h>void fun(char *fname, char *st){ FILE *myf; int i;myf=fopen(fname, "w");for(i=0; i<strlen(st); i++) fputc(st[i], myf);fclose(myf);}main(){ fun("test.txt", "new world");fun("test.txt", "hello,");}A new worldhello,B hello,rldC new worldD hello,二填空题(每题3分,共30分)1 下面的程序运行时从键盘上输入9876543210<回车>,程序的输出结果是。

main(){int a;float b,c;scanf("%2d%2f%2f",&a,&b,&c);printf("a=%d,b=%.1f,c=%.0f",a,b,c);}2 若输入字符串:abcde<回车>,则以下while循环体将执行次。

while((ch=getchar())=='e') printf("*");3 下列程序的输出结果是。

main(){ int s,i;for(s=0,i=1;i<3;i++,s+=i);printf("%d\n",s);}4 若int类型变量占两个字节,定义int x[10]={0,2,4};,则数组x在内存中所占的字节数是。

5 以下程序的输出结果是。

main(){int b[3][3]={0,1,2,0,1,2,0,1,2}, i, j, t=0;for(i=0; i<3; i++)for(j=i; j<=i; j++) t=t+b[j][j];printf("%d",t);}6 以下程序的输出结果是。

main(){ char ch[]="abc",x[3][4]; int i;for(i=0;i<3;i++) strcpy(x[i],ch);for(i=0;i<3;i++) printf("%s",&x[i][i]);printf("\n");}7 运行下面程序,其输出结果是。

#include <stdio.h>int x,y;one(){ int a,b;a=25,b=10;x=a-b;y=a+b;}main(){ int a=9,b=5;x=a+b;y=a-b;one();printf("%d,%d\n",x,y):}8 以下程序的输出结果是。

void fun(int x, int y){ x=x+y; y=x-y; x=x-y;printf("%d,%d",x,y);}main(){ int x=2,y=3;fun(x,y);printf("%d,%d\n",x,y);}9 以下程序的输出结果是。

void print(int w){ int i;if(w!=0){ print(w-1);for(i=1;i<=w;i++)printf("%d",w);printf("\n");}}main(){ print(4); }10 以下程序的输出结果是。

void swap(int *a, int *b){ int *t;t=a; a=b; b=t;}main(){ int i=2,j=5,*p=&i,*q=&j;swap(p,q); printf("%d %d\n",*p,*q)}三程序填空题(每空3分,共30分)1 以下程序的功能是从键盘输入若干个学生的成绩,统计最高成绩和最低成绩,当输入为负数时,结束输入。

相关主题