编写一个 C 程序,要求用户输入学生的姓名(最多 20 个字符,使用 char 变量 名[长度])、年龄(整型)、语文成绩、数学成绩和英语成绩(浮点型)。程序需计 算并输出学生的平均成绩和总成绩,输出保留 2 位小数。
时间: 2024-10-11 09:09:36 浏览: 24
你可以创建一个简单的 C 程序,通过以下步骤完成:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LENGTH 20
int main() {
char name[MAX_NAME_LENGTH];
int age;
float chinese_score, math_score, english_score;
// 获取用户输入
printf("请输入学生的姓名(最多20个字符): ");
fgets(name, sizeof(name), stdin); // 注意fgets防止换行符
name[strcspn(name, "\n")] = '\0'; // 移除fgets读取的换行符
printf("请输入学生的年龄: ");
scanf("%d", &age);
printf("请输入语文成绩: ");
scanf("%f", &chinese_score);
printf("请输入数学成绩: ");
scanf("%f", &math_score);
printf("请输入英语成绩: ");
scanf("%f", &english_score);
// 计算总成绩和平均分
float total_score = chinese_score + math_score + english_score;
float average_score = total_score / 3.0; // 总分为3科
// 输出结果保留两位小数
printf("学生姓名: %s\n", name);
printf("年龄: %d\n", age);
printf("总成绩: %.2f\n", total_score);
printf("平均成绩: %.2f\n", average_score);
return 0;
}
```
在这个程序中,我们首先定义了变量来存储用户的输入,然后分别获取这些输入,计算总成绩和平均成绩,并将结果显示出来。`scanf`函数用于读取数值输入,而`fgets`用于读取字符串输入并移除换行符。
阅读全文