用C语言中的结构体编写: 输入并显示五个学生的学号、姓名、手机号、语文成绩
时间: 2024-05-14 21:17:02 浏览: 143
C语言利用结构体数组实现学生成绩管理系统
5星 · 资源好评率100%
和数学成绩。
答案:
在C语言中,可以使用结构体来存储和管理一组相关的数据。在本题中,我们可以定义一个名为“student”的结构体,用于存储学生的信息,包括学号、姓名、手机号、语文成绩和数学成绩。
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LEN 20
#define MAX_PHONE_LEN 20
struct student {
int id;
char name[MAX_NAME_LEN];
char phone[MAX_PHONE_LEN];
float chinese_score;
float math_score;
};
int main() {
int i;
struct student stu[5];
for(i = 0; i < 5; i++) {
printf("Please enter information for student %d:\n", i+1);
printf("ID: ");
scanf("%d", &stu[i].id);
printf("Name: ");
scanf("%s", stu[i].name);
printf("Phone: ");
scanf("%s", stu[i].phone);
printf("Chinese score: ");
scanf("%f", &stu[i].chinese_score);
printf("Math score: ");
scanf("%f", &stu[i].math_score);
printf("\n");
}
printf("ID\tName\tPhone\t\tChinese\tMath\n");
for(i = 0; i < 5; i++) {
printf("%d\t%s\t%s\t", stu[i].id, stu[i].name, stu[i].phone);
printf("%.2f\t%.2f\n", stu[i].chinese_score, stu[i].math_score);
}
return 0;
}
```
在上述代码中,我们首先定义了一个结构体“student”,其中包含五个成员:id、name、phone、chinese_score和math_score。在主函数中,我们创建了一个包含五个“student”结构体的数组,并使用循环依次输入每个学生的信息。最后,我们再次使用循环输出所有学生的信息。
注意,在输入字符串时,需要使用“%s”格式化符,并通过数组名来指定存储字符串的数组。同时,由于字符串数组的大小是有限的,因此需要通过#define指令定义MAX_NAME_LEN和MAX_PHONE_LEN来限制输入的长度,以避免出现内存溢出的问题。
阅读全文