4条回答 默认 最新
- CSDN专家-link 2021-06-01 18:05关注
typedef struct _student { char name[20]; unsigned int nID; int score; }student; int main() { student stu[50]; int i,n; printf("请输入实际考生人数:"); scanf_s("%d", &n); for (i = 0; i < n; i++) { printf("\n请输入第%d个学生姓名:", i + 1); scanf_s("%s", stu[i].name, 20); printf("\n请输入第%d个学生学号:", i + 1); scanf_s("%d", &stu[i].nID); printf("\n请输入第%d个学生成绩:", i + 1); scanf_s("%d", &stu[i].score); } // int nL = 0, nJ = 0, nM = 0, nH = 0, nC = 0; int nMax = 0, nMin = 101; float fAvg = 0.0,fTotal = 0.0; for (i = 0; i < n; i++) { if (stu[i].score >= 90) nC++; else if (stu[i].score >= 80) nH++; else if (stu[i].score >= 70) nM++; else if (stu[i].score >= 60) nJ++; else nL++; if (nMax < stu[i].score) nMax = stu[i].score; if (nMin > stu[i].score) nMin = stu[i].score; fTotal += stu[i].score; } fAvg = fTotal / n; printf("最高分:%d,最低分:%d,平均分:%.2f\n", nMax, nMin, fAvg); printf("优秀人数:%d,占比:.2f%%%\n", nC, nC*1.0 / n * 100); printf("良好人数:%d,占比:.2f%%%\n", nH, nH*1.0 / n * 100); printf("中等人数:%d,占比:.2f%%%\n", nM, nM*1.0 / n * 100); printf("及格人数:%d,占比:.2f%%%\n", nJ, nJ*1.0 / n * 100); printf("不及格人数:%d,占比:.2f%%%\n", nL, nL*1.0 / n * 100); return 0; }
解决 3无用
悬赏问题
- ¥15 已知平面坐标系(非直角坐标系)内三个点的坐标,反求两坐标轴的夹角
- ¥15 webots有问题,无响应
- ¥15 数据量少可以用MK趋势分析吗
- ¥15 使用VH6501干扰RTR位,CANoe上显示的错误帧不足32个就进入bus off快慢恢复,为什么?
- ¥15 大智慧怎么编写一个选股程序
- ¥100 python 调用 cgps 命令获取 实时位置信息
- ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
- ¥15 C语言使用vscode编码错误
- ¥15 用KSV5转成本时,如何不生成那笔中间凭证
- ¥20 ensp怎么配置让PC1和PC2通讯上