三、 程序填空题
F1. 以下程序可判断输入的一个整数是否能被3或7整除,若能整除,输出“yes”,否则输出“no”。请填空。 #include “stdio.h” void main() { int k;
printf(“Enter a int number:”); scanf(“%d”,<&k>); if(
printf(“no\\n”); }
N2.下面程序的功能是计算1-3+5-7+ ?? -99+101的值。 main() {
int i,t=1,s=0;
for(i=1;i<=101;i+=2) {
t=
printf(\; }
F3.下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。 main()
{ float x,amax,amin; scanf(\; amax=x; amin=x;
while(
{ if(x>amax) amax=x; if( printf(\; } F4.下面程序的功能是计算100至1000之间有多少个数其各位数字之和是5。 #include “stdio.h” void main() { int i,s,k,count=0; for(i=100;i<=1000;i++) { s=0; k=i; while(k) { s=s+k; k= if( printf(“%d”,count); } F5下列程序功能是求数组中主对角线元素之和,请补充完成 main() { int a[3][3],i,j,s=0; for( i=0;i<3;i++ ) for( j=0;j<3;j++) scanf(\ for(i=0;i<3;i++) for( j=0;j<3;j++) if() s+=a[i][j]; printf(\} R6. 下面程序的功能是:输入一个字符,如果它是一个大写字母,则把它变成小写字母,如果它是一个小写字母,则把它变成大写字母,其它字符不变,请将程序补充完整: main() { char ch; scanf(“%c”,&ch); if (ch>=?A? && ch <=?Z?) ch=ch+32; else if ( R7. 请将用户输入的x,y,z三个整数按照从小到大的顺序排列 main() { int x,y,z,t; scanf(\if(x>y) { t=y;y=x;x=t;} if( {t=z;z=x;x=t;} if( {t=y;y=z;z=t;} printf(\} F8. 以下程序从读入的整数数据中,统计大于零的整数个数和小于零的整数个数。用输入零来结束输入,程序中用i统计大于零的个数,用变量j统计小于零的整数。请填空。 void main() { int n,i,j; i=0;j=0; printf(“Enter INT numbers,with 0 to end\\n”); scanf(“%d”,&n); while( printf(“i=M j=M\\n”,i,j); } F9. 以下程序用“辗转相除法”来求出两个正整数的最大公约数。请填空。若两个数分别放在m和n中,求最大公约数的算法如下: (1) 将两数中最大的那个放在m中,小的放在n中。 (2) 求出m被n除后的余数r。 (3) 若余数为0则执行步骤(7);否则执行步骤(4)。 (4) 把除数作为新的被除数;把余数作为新的除数。 (5) 求出新的余数r。 (6) 重复步骤(3)到(5)。 (7) 输出n,n即为最大公约数。 void main() { int r,m,n; printf(“Enter m,n:”); scanf(“%d%d”,<&m,&n>); printf(“m=%d n=%d\\n”,m,n); if (m {r=m;m=n;n=r;} r= printf(“H.C.F=%d\\n,n); } R10. 以下程序可判断输入的一个字符是否为小写字母,如果是,则转换为对应的大写字母并输出;否则,就原样输出。请填空。 #include “stdio.h” void main() { char k; printf(“Enter a character here:”); scanf(“%c”,<&k>); if( printf(“%c\\n”,k); } 1.程序打印如下形式的图形 * * * * * * * * * * main() { for(int i=1;i<=4;i++) { for(int j=1; ① ;j++) printf( ② ); printf( ③ ); } } 2.充下列程序,找出100—200之间的全部素数 # include “math.h” main() { int m,k,i,n=0; for (m=101;m<=200;m=m+2) { k=sqrt(m); for ( i=2; (6)___________ ; i++ ) if ( (7)__ __ ___ ) break; if ( (8)__________ ) { printf(“%d”,m); n=n+1; } if (n==0) printf(“\\n”); } printf(“\\n”); } 3. 第三章 数组 一、 判断题 1.字符串“girl”大于字符串“good”。 2.C语言中有字符串变量,与字符数组等价。( ) R3.同一数组可以存储不同类型的值。( ) N4.若有:int a[2][3]; 则 a+1 和 a[1] 的值以及类型都一样。() R5.字符 '\\0' 的值就是 0 。() 6.C语言中是用字符串变量来存放字符串。( ) 7. 表达式sizeof(\)的值是 4 。() N8. 同数组的名字一样,函数的名字也是一种指针。() 9、C语言中在定义数组时,一个数组的数组元素的数据类型可以不相同; )count++; }