数学科学学院C语言复习资料
}
23、下面程序的功能是输入学生的姓名和成绩,然后输出。 #include
{ char name[20]; /* 学生姓名 */ int score; /* 学生成绩 */ } stu, *p; main ( ) { p=&stu;
printf(\ gets( ① ); printf(\ scanf(\ ② );
printf(\ ③ , ④ ); }
24、 求1 + 1/2 +1/4 + 1/6 + · + 1/100 的值。 #include “stdio.h” main( ) { int i =2 ; float sum ; ① ; while ( i <=100)
{ sum = ② ; ③ ; } printf ( “ sum = %f “ , sum); }
25、以下程序的功能是:从键盘输入若干个学生的成绩,统计计算出平均
46
数学科学学院C语言复习资料
成绩,并输出低于平均分的学生成绩,用输入负数结束输入。 main( )
{ float x[1000], sum = 0.0, ave, a ; int n=0, i;
printf(“Enter mark:\\n”); scanf(“%f”,&a);
while(a>=0.0 && n<1000) {
sum =sum+a; x[n]= ① ; n++;
scanf(\% f \ ② ); }
ave= ③ ; printf(“Output: \\n”); printf(“ave=%f\\n”,ave); for(i=0; i if( ④ ) printf(\n”,x[i]); } 26、将输入的百分制成绩转换成相应的等级。为B …… 60分以下为E。 main() { int score,temp; char grade; scanf(\ if(score ==100) temp=9; else temp= ① ; switch( ② ) { case 9:grade='A'; break; 47 —90分为A,89—80分100数学科学学院C语言复习资料 case 8:grade='B'; break; case 7:grade='C'; break; case 6:grade='D'; break; ③ } printf (\Grade=%c\\n\score, grade); } 27、下列程序输出结果为 。 func(int i) {printf(“%d”,i); return ++i; } main() {int i=2; printf(“%d”,func(i)); } 28、以下程序运行后的输出结果是 。 main() {int x=5; while (x<10) {x++; if (x%4!=1) continue; else printf(“%d\\t”,x); } } 29、以下程序运行后的输出结果是 。 int isnumber(char c) {return((c>=?0?&&c<=?9?)?1:0);} main() 48 数学科学学院C语言复习资料 {char a[]=”a1b23c45d6”,*p=a; int k=0; while (*p!=?\\0?) {if (isnumber(*p)==0) a[k++]=*p; p++; } a[k]=?\\0?; printf(“%s\\n”,a); } 30、下面程序是计算s=1-2+3-4+…+99-100并输出结果,填空完成程序。 int fun(int n) {int s=0,f=1,i; for(i=1;i<=n;i++) { f=-f; } return ; } main() {int fun(int n); printf(“s=1-2+3-4+…+99-100=%d\\n”, ); } 31、下列程序的功能是输入一个字符串s,将所有空格删除后再输出。请填空完善程序。 main() {char s[80];int x,y; printf(“please enter a string to s:”); gets(s); for(x=0,y=0; ;x++) {if (s[x]!=? ?) { ; y++; } 49 数学科学学院C语言复习资料 } s[y]= ; printf( ); } 32、下列函数的功能是:计算表达式f(n)= 的值。请填空完善。 long f(int n) {if ( ) {printf(“非法数据!\\n”); exit(-1); } else if (n==0) ; else return ; } 33、下列函数的功能是:计算s=1+1/2+1/3+…+1/n 请填空完善。 #include for(k=1; ;k++) {f= ; s+=f; } return ; } 34、下列程序的功能是:输入一个字符串到数组中,将其中的小写字母转换成大写字母。请填空完善。 50