一、填空:阅读下列程序说明和程序,在可选答案中,挑选一个正确答案。填补(1) (2) (3) (4)处空白,并注释说明为什么。
程序说明求 1 + 2/3 + 3/5 + 4/7 + 5/9 + … 的前15项之和。 运行示例:sum = 8.667936程序如下:
1 #include <stdio.h>
2 void main( )
3 {
4 int i, b = 1;
5 double s;
6 (1) A ;/*对S赋值*/
7 for(i = 1; i <= 15; i++)
8 {
9 s = s+ (2) A/*将结果累加给S*/
10 (3)D /*每次b加2*/
11 }
12 printf( (4) D , s);/*输出结果,应输出S,若为SUM,之前却没有定义*/
13 }
【供选择的答案】
(1) A、s = 0 B、s = 1 C、s = -1 D、s = 2(2) A、i/b B、double(i)/double(b) C、i/2*i-1 D、(double)i/(double)b(3) A、; B、b = 2 * i – 1; C、b = 1.0 * b; D、b = b + 2; (4) A、"sum = %d\n" B、"s = %c\n" C、"sum = %f\n" D、"s = %s\n"---------------------------------题目分割线-----------------------------------
二、填空:阅读下列程序说明和程序,在可选答案中,挑选一个正确答案。填补(1) (2) (3) (4)处空白,并注释说明为什么。。
【程序说明】输入10个整数,将它们从大到小排序后输出。 运行示例:Enter 10 integers: 1 4 -9 99 100 87 0 6 5 34After sorted: 100 99 87 34 6 5 4 1 0 -9程序如下:数组不懂- -
1 #include <stdio.h>
2 void main( )
3 {
4 int i, j, t, a[10];
5 printf("Enter 10 integers: ");
6 for(i = 0; i < 10; i++)
7 scanf( (1)B);/*输入10个数,并赋给a[i]*/
8 for(i = 1; i < 10; i++)
9 for( (2) C(3)D ; j++)
10 if( (4) )
11 {
12 t = a[j];
13 a[j] = a[j+1];
14 a[j+1] = t;
15 }
16 printf("After sorted: ");
17 for(i = 0; i < 10; i++)
18 printf("%d ", a[i]);
19 printf("\n");
20 }
【供选择的答案】
(1) A、"%f", a[i] B、"%lf", &a[i] C、"%s", a D、"%d", &a[i]
(2) A、j = 0 B、j = 1 C、j = i D、j = i - 1(3) A、j > i B、j < 9 - i C、j < 10 - i D、j > i - 1(4) A、a[i-1] < a[i] B、a[j+1] < a[j+2] C、a[j] < a[j+1] D、a[i] < a[j]---------------------------------题目分割线-----------------------------------
三、编程,输入x后,根据下式计算并输出y值。
#include<stdio.h>
#include<math.h>
int main(void)
{
double x,y;
printf("请输入X:");
scanf("%lf",&x);
if(x<-2){
y=x*x;
printf("y=%.1f\n",y);
}
else if((x>=-2)&&(x<=2)){
printf("y=%.1f\n",y);
}
else{
y=sqrt(x*x+x+1);
printf("y=%.1f\n",y);
}
return 0;
}
---------------------------------题目分割线-----------------------------------
四、编写程序,输入一批学生的成绩,遇0或负数则输入结束,要求统计并输出优秀(大于85)、通过(60~84)和不及格(小于60)的学生人数。
运行示例:
Enter scores: 88 71 68 70 59 81 91 42 66 77 83 0
>=85:2
60-84:7
<60 : 2
#include<stdio.h>
int main(void)
{
int i,grade,A,B,C,n;
printf("A表示优秀\n");
printf("B表示通过\n");
printf("C表示不及格\n");
printf("输入学生人数n:\n");
scanf("%d",&n);
for(i=1;i<=n;i++){
printf("输入学生的得分:");
scanf("%d",grade);
if(grade<=0){
printf("输入有误!");
}
else if(grade>=85){
A++;
}
else if((grade>=60)&&(grade<=84)){
B++;
}
else{
C++;
}
}
printf("A=%d\n,B=%d\n,C=%d\n",A,B,C);
return 0;
}