C语言程序设计模拟试题2new.doc
《C语言程序设计模拟试题2new.doc》由会员分享,可在线阅读,更多相关《C语言程序设计模拟试题2new.doc(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计模拟试卷二一、填空题。(每空2分,共30分) 1.设有变量说明语句 int x=1,y=2;则执行下述printf语句的输出结果是_ _。 printf(%fn,1.0+x/y);2.执行下述程序 #include main() int x,y; scanf(%2d%*2s%1d,&x,&y); printf(%dn,x+y); 若从键盘输入 则程序的输出结果是_。3.以下程序的功能是:从键盘上输入若干名学生的成绩(百分制,可带小数,以输入负数或0为结束标志),统计并输出最高成绩和最低成绩。请填空。 #include main() float x,amax,amin; scanf
2、(%f,&x); amax=x; amin=x; while ( ) if (xamax) amax=x; else if (xamin) amin=x; scanf(%f,&x); printf(namax=%fnamin=%fn,amax,amin); 4.设n是整型变量,且已具有某正整数值。根据下述数学式求s的值并输出。可编写如下之程序段实现之。请填空。 int k; double s,d; s=0.0; d=1.0; K=0; do s=s+d; _ _; d=1.0/(k*(k+1); while (k=n); printf(%fn,s);5.执行下述程序的输出结果是_ _。 #in
3、clued main() int a6,i; for (i=0;i3)%5; printf(%3d,ai); printf(n); 6.执行下述程序时的输出结果是_ _。 #include main() int a=2,4,6,*ptr=&a0,x=8,y,z; for (y=0;y3;y+) z=(*(ptr+y)x)?*(ptr+y):x; printf(%dn,z); 7.执行下述程序的输出结果是_ _。 #include main() int a2=10,20,30,40,50,60,(*p)2; p=a; printf(%dn,*(*(p+2)+1); 8.执行以下程序的输出结果是_
4、 _。 #include main() int s,i,sum(); for (i=1;i=10;i+) s=sum(i); printf(s=%dn,s); sum(int k) int x=0; return (x+=k); 9.下述函数定义用来求出两个整数之和,并通过函数的模拟传地址调用,传回两整数相加之和值,请填空。 void add(int x,int y,_ _) *z=x+y; 10.函数func的功能是将整型变量x的值转换成二进制数,并将该二进制数的每一位存入由整型指针b所指向的一维数组a,最低位存放于a0中,次低位存放于a1中,依此类推。请填空。 void func(int
5、x,int *b) int r; do r=x%2; _=r; x/=2; while (x); 11.以下程序中函数invert实现将数组内所有数组元素的值逆置。比如,执行本程序将输出 10 9 8 7 6 5 4 3 2 1请填空。 #include main() int a10=1,2,3,4,5,6,7,8,9,10,i,n=10; invert(a,n-1); for (i=0;i10;i+) printf(%3d”,ai); printf(n); invert(int *s,int num) int *t,k; t=s+num; while (_ _) k=*s; *s=*t; *
6、t=k; s+; t-; 12.若有以下定义和说明,则结构体变量w在内存中所占的字节数是_union aa float x; float y; char c6; ; struct st union aa v; float w5; double ave; w; 13.执行下述程序的输出结果是_ _。 #include struct str float x; char *y; *m; struct str group3= 95.0,Li, 82.5,Wang, 73.5,Sun ; main() m=group; printf(%.lf,%sn,m-x,m-y); 14.下面的程序用来统计某文件文
7、件中字符的个数。请填空。 #include #include main() FILE *fp; long num=0; if (fp=fopen(fnam.dat,r)=NULL) printf(Cant open this file!n); exit(0); while (_ _) fgetc(fp); num+; printf(num=%dn,num); fclose(fp); 15.执行下述程序后,输出结果为_ _。 #include #define FUN1(a,b) a+b #define FUN2(a,b) a-b #define CAL(a,b) a*b+a+3 main() p
8、rintf(%dn,CAL(FUN1(3,5),FUN2(4,5); 二、单项选择题。(每题1分,共20分)1以下不是c语言规定保留字的是( )。(A)float (B)integer (C)signed (D) unsigned2.设int型变量x有初始值3,则表达式x+*5/10的值是( )(A)0 (B)1 (C)2 (D)33.下述程序执行后的输出结果是( ) include main() int x=f; printf(%cn,a+(x-a+1); (A)g (B)h (C)i (D)j4.设有程序#include main() int i,j; for (i=0,j=1;i100)
9、 break; (B)for (;);(C)int k=1000; do +k; while (k=10000);(D) int s=36; while (s);-s;6.假定a和b为int型变量,则执行下述语句组后,b的值为( )。 a=1; b=10; do b-=a; a+; while (b-0); (A)9 (B)-2 (C)-1 (D)87.设有变量说明语句 int a=1,b=0;则执行以下程序段的输出结果为( )。 switch (a) case 1: switch (b) case 0:printf(*0*);break; case 1:printf(*1*);break;
10、case 2:printf(*2*);break; printf(n); (A)*0* (B)*0*2* (C)*0*1*2* (D)有语法错误8.以下合法的数组说明是( )。 (A)char a7=string; (B)int a5=0,1,2,3,4,5; (C)char a=string; (D)INT a=0,12,3,4,5;9.下述程序代码中有语法错误的行是( )。 int i,ia10,ib10; /*第1行*/ for (i=0;i=9;i+) /*第2行*/ iai=0; /*第3行*/ ib=ia; /第4行*/ (A)第1行 (B)第2行 (C)第3行 (D)第4行10.
11、若已定义 int a9,*p=a;并在以后的语句中未改变p的值,则不能表示a1地址的表达式是( )。(A)p+1 (B)a+1 (C)a+ (D)+p11.若有下述说明和语句 int *pp,*p,a=10,b=20; pp=&p; p=&a; p=&b; printf(%d,%dn,*p,*pp);则输出结果是( )。 (A)10,10 (B)10,20 (C)20,10 (D)20,2012.执行下述程序后的输出结果是( )。 #include func(int a) int b=0; static int c=3; a=c+,b+; return (a); main() int a=2,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 模拟 试题 new
限制150内