实验7 综合训练
1,/*求 1 + 2/3 + 3/5 + 4/7 + 5/9 + … 的前15项之和。 */
#include <stdio.h>
void main(void )
{
int i, b = 1;
double s;
s=0 ; /*赋值,由0开始加到第十五项才等于从第一项到第十五项*/
for(i = 1; i <= 15; i++)
{
s = s + double(i)/double(b);/*s为浮点型*/
b=b+2;
}
printf("sum=%f\n" , s); /*%f为带小数点浮点型*/
}
2,/*输入10个整数,将它们从大到小排序后输出*/
#include <stdio.h>
int main(void )
{
int i, j, t, a[10];
printf("Enter 10 integers: ");
for(i = 0; i < 10; i++)
scanf("%d",&a[i] ); /*a[i]为整型*/
for(i = 1; i < 10; i++)
for( j=0 ; j<10-i ; j++) /*对a[i]由大到小的顺序排列*/
if(a[j]<a[j+1] ) /*判断大小,便于排序*/
{
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
printf("After sorted: ");
for(i = 0; i < 10; i++)
printf("%d ", a[i]);
printf("\n");
}
3,/*编程,输入x后,计算并输出y值。*/
#include<stdio.h>
#include<math.h>
int main(void)
{
int x;
double y;
printf("Enter x :");
scanf("%d",&x);
y=0; /*赋值y*/
if(x<-2){
y=x*x;
}
if(x>=-2&&x<=2){
y=x+2;
}
else{
y=sqrt(x*x+x+2);
}
printf("y=%lf\n",y);
return 0;
}
4,/*编写程序,输入一批学生的成绩,遇0或负数则输入结束
,要求统计并输出优秀(大于85)、通
过(60~84)和不及格(小于60)的学生人数。*/
#include<stdio.h>
int main(void)
{
int i,g,n,a,b,c; /*定义变量,g为成绩,a,b,c为等级*/
a=b=c=0;
scanf("%d",&n);
for(i=1;i<=n;i++){ /*统计各等级的人数*/
printf("Enter g:");
scanf("%d",&g);
if(g<=0){break;}/*判断g的范围*/
if(g>=85){a=a+1;}
if(g>=60&&g<=84){b=b+1;}
else{c=c+1;}
}
printf("优秀:%d,通过:%d,不及格:%d",a,b,c);
return 0;
}

浙公网安备 33010602011771号