C语言程序设计基础-结构体习题
本资源是关于C语言程序设计基础的结构体习题,共有四个习题,分别涉及到结构体的定义、结构体数组的使用、结构体变量的输入输出和结构体数组的统计应用。
一、定义结构体变量
习题一要求定义一个结构体变量,用于存储学生的信息,包括学号、姓名、性别和住址。结构体变量的定义使用了struct关键字, followed by the structure tag and the structure body. For example:
```c
struct Student {
long int num;
char name[20];
char sex;
char addr[20];
} a = {10101, "Li Lin", 'M', "123 Beijing Road"};
```
这里定义了一个名为Student的结构体,包含四个成员变量:num、name、sex和addr。然后,我们使用结构体变量a来存储一个学生的信息,并使用printf函数输出学生的信息。
二、结构体数组的使用
习题二要求输入两个学生的信息,包括学号、姓名和成绩,然后输出成绩较高的学生的信息。我们使用结构体数组来存储两个学生的信息:
```c
struct Student {
int num;
char name[20];
float score;
} student1, student2;
```
这里定义了一个名为Student的结构体,包含三个成员变量:num、name和score。然后,我们使用scanf函数输入两个学生的信息,并使用if语句来比较两个学生的成绩,输出成绩较高的学生的信息。
三、结构体数组的统计应用
习题三要求编写一个统计选票的程序,用于统计三个候选人的得票结果。我们使用结构体数组来存储三个候选人的信息:
```c
struct Person {
char name[20];
int count;
} leader[3] = {"Li", 0, "Zhang", 0, "Sun", 0};
```
这里定义了一个名为Person的结构体,包含两个成员变量:name和count。然后,我们使用for循环输入十个选民的投票结果,并使用strcmp函数来比较投票结果和候选人的名字,统计每个候选人的得票结果。我们使用printf函数输出每个候选人的得票结果。
四、结构体数组的应用
习题四要求编写一个程序,用于统计n个学生的信息,包括学号、姓名和成绩。我们使用结构体数组来存储学生的信息:
```c
struct Student {
int num;
char name[20];
float score;
} student[n];
```
这里定义了一个名为Student的结构体,包含三个成员变量:num、name和score。然后,我们使用for循环输入n个学生的信息,并使用printf函数输出每个学生的信息。
本资源提供了四个习题,涵盖了结构体的定义、结构体数组的使用、结构体变量的输入输出和结构体数组的统计应用,帮助读者更好地理解和掌握C语言程序设计基础。