程序填空并调试: 有5名学生,每个学生的数据信息包括学号、姓名和一门课的成绩。要求按学生的成绩由高到低排序,然后输出学生的信息以及平均成绩。 #include <stdio.h> struct student { int num; char name[20]; int score; }stu[5]; main() { struct student *pt,*p[5]; int i, j, k, sum=0; for(i=0;i<5;i++) {scanf('%d%s%d", &stu[i].num, stu[i].name, &stu[i].score); p[i]=&stu[i]; sum=sum+_p[i]①; } for(i=0;i<5;i++) { k=i; for(j=i;j<=5;j++) if( ②) k=j; if(k!=i) { pt=p[i]; p[i]=p[k]; p[k]=pt;} } for(i=0;i<5;i++) printf(“%d, %s, %d", ③); printf("Average=%d\n", ④); }
时间: 2024-04-25 19:27:26 浏览: 16
#include <stdio.h>
struct student {
int num;
char name[20];
int score;
}stu[5];
int main() {
struct student *pt, *p[5];
int i, j, k, sum=0;
for(i=0;i<5;i++) {
scanf("%d %s %d", &stu[i].num, stu[i].name, &stu[i].score);
p[i]=&stu[i];
sum=sum+p[i]->score;
}
for(i=0;i<5;i++) {
k=i;
for(j=i+1;j<5;j++)
if (p[j]->score > p[k]->score) k=j;
if(k!=i) {
pt=p[i];
p[i]=p[k];
p[k]=pt;
}
}
for(i=0;i<5;i++)
printf("%d, %s, %d\n", p[i]->num, p[i]->name, p[i]->score);
printf("Average=%d\n", sum/5);
return 0;
}
相关问题
程序填空并调试: 有5名学生,每个学生的数据信息包括学号、姓名和一门课的成绩。要求按学生的成绩由高到低排序,然后输出学生的信息以及平均成绩。
下面是 Python 代码实现,可以直接运行并输出结果:
```python
class Student:
def __init__(self, id, name, score):
self.id = id
self.name = name
self.score = score
def __repr__(self):
return f"{self.id}\t{self.name}\t{self.score}"
def sort_students(students):
return sorted(students, key=lambda s: s.score, reverse=True)
def print_students(students):
for s in students:
print(s)
avg_score = sum(s.score for s in students) / len(students)
print(f"平均成绩:{avg_score:.2f}")
if __name__ == '__main__':
students = [
Student(1, "张三", 80),
Student(2, "李四", 90),
Student(3, "王五", 75),
Student(4, "赵六", 85),
Student(5, "钱七", 95),
]
sorted_students = sort_students(students)
print_students(sorted_students)
```
输出结果如下:
```
5 钱七 95
2 李四 90
4 赵六 85
1 张三 80
3 王五 75
平均成绩:85.00
```
下面程序的功能:有一个一维数组score,内放10个学生成绩,统计不及格的学生人数。请填空。
下面是统计不及格学生人数的程序:
```c
int score[10] = {60, 80, 30, 40, 70, 90, 55, 66, 77, 88};
int count = 0;
for(int i=0;i<10;i++){
if(score[i]<60){
count++;
}
}
printf("不及格的学生人数为:%d", count);
```
其中,count用来统计不及格学生的人数,for循环用来遍历整个数组,如果某个学生成绩小于60,就将count加1。最后输出count的值即可。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)