c语言标准.h不会重复编译吧,求助C语言大佬 , 只会写到一个.c文件里 ,不会用.h头文件...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

简答题】

实验任务:学生成绩统计

从键盘输入一个班(全班最多不超过30人)学生某门课的成绩,当输入成绩为负值时,输入结束,分别实现下列功能:

(1)统计不及格人数并打印不及格学生名单;

(2)统计成绩在全班平均分及平均分之上的学生人数,并打印这些学生的名单;

(3)统计各分数段的学生人数及所占的百分比。(0-59 60-74 75-84 85-100)

实验要求:

1. 将以上三个功能的函数存储在文件chengji.c 文件中,将函数的声明存储在chengji.h头文件中;

3. 要求有良好的输入输出人机交互设计,程序尽量具有容错能力。

相关提示:数组作为函数参数的定义方法:

主调函数中定义一维数组 inta[30]; 作为实参;

函数定义: int func(int a[]) 表示形参为一维数组。

注意:如果被调函数中对作为形参的数组中的数据值进行了改变,则主调函数的数组实参值被改变了,因为数组名是内存地址。

#include

int main()

{

int s[30];

int i, m = 0;

for (i = 0; i < 30;i++) {

scanf_s("%d", &s[i]);

m++;

if (s[i] < 0)

break;

}

int count1 = 0;

printf(" 不及格学生名单:");

for (i = 0; i < m -1; i++) {

if (s[i] < 60) {

printf("%d ", i);

count1++;

}

}

printf("\n 不及格人数为:%d\n", count1);

double average;

int count2 = 0 , sum =0;

for (i = 0; i < m -1; i++) {

sum+= s[i];

}

average= sum * 1.0 / m;

printf(" 成绩在全班平均分及平均分之上的学生名单:");

for (i = 0; i < m -1; i++) {

if (s[i] >=average)

printf("%d ", i);

count2++;

}

printf("\n 成绩在全班平均分及平均分之上的学生人数为:%d\n", count2);

int A=0, B=0, C=0, D=0;

double a, b, c, d;

for (i = 0; i < m -1; i++) {

if (s[i] >= 85&& s[i] <= 100)

A++;

if (s[i] >= 75&& s[i] <= 84)

B++;

if (s[i] >= 60&& s[i] <= 74)

C++;

if (s[i] <= 59)

D++;

}

a= A * 1.0 / m;

b= B * 1.0 / m;

c= C * 1.0 / m;

d= D * 1.0 / m;

printf(" 85-100分数段的学生人数及所占的百分比为:%lf\n 75-84分数段的学生人数及所占的百分比为:%lf\n 60-74分数段的学生人数及所占的百分比为:%lf\n 0-60分数段的学生人数及所占的百分比为:%lf\n", a, b, c, d);

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值