编写一个程序,输入学生人数和每个人的成绩,计算破坏平均成绩,当输入学生人数小于等于0时,输出平均成绩为0分,用循环语法,用c语言
时间: 2024-10-24 17:08:31 浏览: 8
在C语言中,你可以使用循环结构(如for或while)来编写这样一个程序。下面是一个使用`for`循环的示例,它会持续获取学生的成绩,直到输入的学生人数为0:
```c
#include <stdio.h>
double calculate_average(int num_students, int scores[]) {
double total = 0;
if (num_students <= 0) {
return 0;
}
for (int i = 0; i < num_students; i++) {
scanf("%d", &scores[i]); // 输入每个学生的分数
total += scores[i];
}
return total / num_students; // 计算平均成绩
}
int main() {
int students;
printf("请输入学生人数: ");
scanf("%d", &students);
int* student_scores = malloc(students * sizeof(int)); // 分配内存给成绩数组
double average = calculate_average(students, student_scores);
printf("平均成绩: %.2f\n", average); // 打印平均成绩
free(student_scores); // 释放内存
return 0;
}
```
在这个程序中,用户首先输入学生的人数,然后依次输入每个学生的成绩。如果输入的学生人数少于或等于0,计算平均值时直接返回0。注意这里使用了动态内存分配,因为不知道具体需要多少空间来存储所有学生的成绩。
阅读全文