c语言100行代码
c#include <stdio.h>
// 定义一个结构体表示学生信息
struct Student {
char name[50];
int roll;
float marks;
};
int main() {
int i, num;
float sum = 0.0;
printf("请输入学生的数量: ");
scanf("%d", &num);
struct Student students[num];
// 输入学生信息
for (i = 0; i < num; ++i) {
printf("请输入第 %d 个学生的姓名: ", i + 1);
scanf("%s", students[i].name);
printf("请输入第 %d 个学生的学号: ", i + 1);
scanf("%d", &students[i].roll);
printf("请输入第 %d 个学生的成绩: ", i + 1);
scanf("%f", &students[i].marks);
sum += students[i].marks;
}
// 输出学生信息
printf("\n学生信息:\n");
for (i = 0; i < num; ++i) {
printf("姓名: %s\n", students[i].name);
printf("学号: %d\n", students[i].roll);
printf("成绩: %.2f\n", students[i].marks);
printf("\n");
}
printf("平均成绩为: %.2f\n", sum / num);
return 0;
}
这是一个简单的 C 语言程序,实现了提示用户输入学生数量。动态分配内存以存储给定数量的学生信息。用户输入每个学生的姓名、学号和成绩。计算学生的平均成绩并输出。打印所有学生的信息。
c#include <stdio.h>
// 定义一个结构体表示学生信息
struct Student {
char name[50];
int roll;
float marks;
};
int main() {
int i, num;
float sum = 0.0;
printf("请输入学生的数量: ");
scanf("%d", &num);
struct Student students[num];
// 输入学生信息
for (i = 0; i < num; ++i) {
printf("请输入第 %d 个学生的姓名: ", i + 1);
scanf("%s", students[i].name);
printf("请输入第 %d 个学生的学号: ", i + 1);
scanf("%d", &students[i].roll);
printf("请输入第 %d 个学生的成绩: ", i + 1);
scanf("%f", &students[i].marks);
sum += students[i].marks;
}
// 输出学生信息
printf("\n学生信息:\n");
for (i = 0; i < num; ++i) {
printf("姓名: %s\n", students[i].name);
printf("学号: %d\n", students[i].roll);
printf("成绩: %.2f\n", students[i].marks);
printf("\n");
}
printf("平均成绩为: %.2f\n", sum / num);
// 查找并输出成绩最高的学生信息
float highest_marks = students[0].marks;
int highest_index = 0;
for (i = 1; i < num; ++i) {
if (students[i].marks > highest_marks) {
highest_marks = students[i].marks;
highest_index = i;
}
}
printf("成绩最高的学生信息:\n");
printf("姓名: %s\n", students[highest_index].name);
printf("学号: %d\n", students[highest_index].roll);
printf("成绩: %.2f\n", students[highest_index].marks);
return 0;
}
这个程序在前一个基础上新增了查找并输出成绩最高的学生信息。