《C语言期末复习填空题部分.doc》由会员分享,可在线阅读,更多相关《C语言期末复习填空题部分.doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、期末复习填空题部分一、 填空题1 设x为int型变量,写出描述“x是偶数与y是奇数”的表达式是 x%2=0 & y%2=1 。2 以下程序的输出结果是 -27 。#includevoid main() char c;c=0345;printf(%dn,c);3 设有语句int a=3;,则执行了语句 a+=a-=a*a后,变量a的值是 -12 。4 若float x;以下程序段的输出结果是 5. x=3.;printf(%fn,(int)(x*1000+0.5)/(float)1000);5 下面的程序运行时从键盘上输入,程序的输出结果是a=123,b=456.0,c=789。#include
2、void main() int a;float b,c;scanf(%3d%3f%3f,&a,&b,&c);printf(a=%d,b=%.1f,c=%.0f,a,b,c);6 若输入字符串:abcdefg,则以下while循环体将执行 0 次。while(ch=getchar()=g) printf(*);7 下面程序的输出结果是67,D。main() char ch1,ch2;ch1=A+5-3; ch2=A+6-3;printf(%d,%cn,ch1,ch2);8 执行下面的语句:printf(%dn,(a=3*5,a*4,a+5);,输出是 20 。9 下列程序的输出结果是 3,2 -
3、1 。main() int x=0,y=5,z=3;while(z-0 & +x5) y=y-1;printf(%d,%d,%dn,x,y,z);10 下列程序的输出结果是 54 。#includevoid main() int s=0,i=1;for(;i=0;i-) ai=10-i; printf(%d%d%dn,a2,a5,a8);13 下列程序运行的结果是 6 。main() char ch7=65ab21; int i,s=0;for(i=0;chi=0 & chi=9;i+=2) s=10*s+chi-0;printf(%dn,s);14 运行下面程序,其输出结果是 15,35 。
4、#include int x,y;one() int a,b;a=25,b=10;x=a-b;y=a+b;main() int a,b;a=9,b=5;x=a+b;y=a-b;one();printf(%d,%dn,x,y):15 运行下面程序,其输出结果是 321 。#include main() void printd()int n=123;printd(n);void printd(int n) int i;if(n0) n=-n; putchar(-); putchar(n%10+0);if(i=n/10)!=0) printd(i);16 以下程序的输出结果是 abb 。#inclu
5、devoid main() char ch=abc,x33; int i;for(i=0;i3;i+) strcpy(xi,ch);for(i=0;i3;i+) printf(%s,&xii);printf(n);17 运行下面程序,从键盘输入三个字符ab#,其输出是 ab#ba 。#include void recursion() char c; c=getchar(); putchar(c); if(c!=#) recursion(); putchar(c); void main() void recursion(); recursion();18 以下程序的输出结果是_55_。#defi
6、ne M 5#define N M+Mmain() int k;k=N*N*5; printf(%dn,k);19 以下程序的输出结果是 12 15 。#include void swap(int *a, int *b) int *t; t=a; a=b; b=t; void main() int i=12, j=15, *p=&i, *q=&j; swap(p,q); printf(%d %dn, *p,*q); 20 以下程序的输出结果是 15 12 。#include void swap(int *a, int *b) int t ; t=*a; *a=*b; *b=t; void ma
7、in() int i=12, j=15, *p=&i, *q=&j; swap(p,q); printf(%d %dn, *p,*q);二、程序填空题1 下列程序的输出结果是16.00,请填空。main() int a=9,b=2;float x= 6 .6【1】 ,y=1.1,z;z=a/2+b*x/y+1/2;printf(%5.2fn,z);2 下列程序是求 的值。#include stdio.hmain() int i=2; float sum=1;while( i=50 【1】 ) sum=sum+1.0/i; i+2 【2】 ; printf(sum=%fn, sum【3】 );3
8、 以下程序的功能是从键盘输入若干个学生的成绩,统计最高成绩和最低成绩,当输入为负数时,结束输入。请填空使程序完整。#includevoid main() float x,max,min;scanf(%f,&x);max=min= x 【1】 ;do if(xmax) max=x;if(x=o【3】 );printf(%f,%f,max,min);4 以下程序的功能是:从键盘上输入若干个学生的成绩(用输入负数结束输入),统计出平均成绩,并输出低于平均分的学生成绩。请填空。#include stdio.hmain() int n=0,i; float x1000,sum=0.0,ave,a;pri
9、ntf(Enter mark:n); scanf(%f,&a);while(a=0.0 & n1000) sum+=a 【1】 ; xn= a 【2】 ;n+; scanf(%f,&a); ave= sum/n 【3】 ;print(Output:n);printf(ave=%fn,ave);for(i=0;in;i+) if( xiave【4】 ) printf(%fn,xi);5 以下程序,数组a中存放一个递增数列。输入一个整数,并将它插入到数组a中,使之仍为一个递增数列。请填空。#includevoid main() int a【1】11=1,10,20,30,40,50,60,70,8
10、0,90,x,i,p; scanf(%d,&x); for(i=0,p=10;i10;i+) if(x=p;i-) ai+1=ai; 【3】ap=x ; for(i=0;i=10;i+) printf(%5dn,ai); printf(n);6 以下程序的功能是:将t数组的内容连接到s数组内容的后面,使s数组保存连接后的新字符串。main() static char s30=abcdefg,t=abcd; int i=0,j=0;while(si!=0) 【1】 i+ ;while(tj!=0) si+j=tj; j+; 【2】si=j=0 ;printf(%sn,s);7 一个整数称为完全平
11、方数,是指它的值是另一个整数的平方。例如81是个完全平方数,因为它是9的平方。下列程序是在三位的正整数中寻找符合下列条件的整数:它既是完全平方数,且三位数字中又有两位数字相同:例如144(12*12)、676(26*26)等,程序找出并输出所有满足上述条件的三全数。程序如下:main() int n,k,a,b,c;for(k=1;k+) n=k*k【1】 if(n999) 【3】 break ;a=n/100;b= n/10%10 【4】 ;c=n%10;if(flag(a,b,c) printf(n=%d=%d*%dn,n,k,k);flag intx,inty,intz 【5】 retu
12、rn(!(x-y)*(x-z)*(y-z); 8 以下程序的功能是:将任意十进制正整数转换成二进制数,请填空使程序完整。 #includestdio.hint dtob(int n,int *p) int m,i=0; do m=n%2; *(p+i)=m; 【1】 ; 【2】 ; while(n!=0); return i;void main() int n,j,a20; printf(Input the umber: n); scanf(%d,&n); j=dtob(n,a); for(;j0;j-) printf(%d, 【3】 );9 下面函数的功能是从输入的十个字符串中找出最长的那个
13、串,请填空使程序完整。void fun(char str1081,char *sp) int i;*sp = str0 【1】 ;for(i=1;i10; i+)if(strlen(*sp)strlen(stri) *sp=stri 【2】 ;10 下面程序的功能是将一个整数字符串转换为一个整数,例如:“-1234”转换为1234,请填空。#include#includeint chnum(char *p) int num=0,k,len,j ,sign=1; len = strlen(p) ; if(*p =-) sign = -1 ;p+; len-; for ( ; *p【1】; p+) k=*p-0【2】; j=(-len) ; while (j-【3】) k=k*10 ; num = num + k ; return (num*sign);void main() int a; char p10; gets(p); a=chnum(p); printf(“%dn”,a);
限制150内