c语言利用结构体类型编一程序,实现输入一学生的学号、英语期中和期末成绩,然后输出成绩,期中和期末成绩分别占总分的30%和70%,保留两位小数。输入输出都用结构体形式。(可以不用函数调用) 提示,建一个结构类型如: struct {int num; float emid; float efinal; }; 上面的成员分别代表学生的学号、英语期中和期末成绩。 //定义一个结构变量,也可以定义一个指向结构变量的指针 //输入输出用结构变量或结构变量的指针去实现
时间: 2024-03-16 16:45:01 浏览: 142
下面是一份实现输入一学生的学号、英语期中和期末成绩,然后输出成绩的C语言程序,使用了结构体类型:
```c
#include <stdio.h>
struct student {
int num; // 学号
float emid; // 英语期中成绩
float efinal; // 英语期末成绩
};
int main() {
struct student stu; // 定义一个结构体变量stu
// 输入学号、期中成绩和期末成绩
printf("请输入学号:");
scanf("%d", &stu.num);
printf("请输入英语期中成绩:");
scanf("%f", &stu.emid);
printf("请输入英语期末成绩:");
scanf("%f", &stu.efinal);
// 计算总分
float total = stu.emid * 0.3 + stu.efinal * 0.7;
// 输出成绩
printf("学号:%d\n", stu.num);
printf("总分:%.2f\n", total);
return 0;
}
```
在上面的程序中,我们定义了一个结构体类型`student`,包含了学生的学号、英语期中成绩和英语期末成绩。然后在`main`函数中,我们定义了一个结构体变量`stu`,并使用`scanf`函数分别输入学号、期中成绩和期末成绩。接着,我们根据题目要求计算总分,然后使用`printf`函数输出学号和总分,保留两位小数。
需要注意的是,我们在计算总分时,使用了期中成绩占总分的30%,期末成绩占总分的70%的权重。最后,我们使用`return 0`语句结束程序。
阅读全文