实验08 结构体和共用体

更新时间:2024-04-18 18:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验八 结构体和共用体 (2学时)

一、实验目的

1.掌握C语言结构体变量的定义和使用方法。 2.掌握结构体类型数组的概念和使用方法。 3.学会设计简单的结构体程序。

二、实验重点

1.掌握结构体类型变量的定义和使用方法。 2.掌握结构体类型数组的概念和使用。

三、实验难点

掌握结构体类型数组的概念和使用方法。

四、实验内容及步骤

1.有一学生信息包含学号、姓名、性别、年龄、电话等信息,要求设以一个结构体用于存储该学生信息,实现学生信息的输入和显示。 解题思路:

(1)使用结构体实现学生信息的存储。 (2)按照学号顺序排列学生信息。 (3)实现按照学号查找学生信息。 参考程序如下:

#include struct student{ char num[10]; char name[10]; char sex[5]; int age; };

void main( )

{

struct student stu[3]; int i;

int choice;

printf(\ for( i=0;i<3;i++ ) {

if( i==0 )

printf(\if( i==1 ) printf(\if( i==2 )

printf(\

printf(\scanf(\

printf(\scanf(\printf(\scanf(\printf(\scanf(\

}

printf(\ scanf(\

choice--;

printf(\ The number is %s\\n\ printf(\ The name is %s\\n\ printf(\ The sex is %s\\n\

printf(\ The age is %d\\n\}

2.对候选人得票的统计程序。设有3个候选人,每次输入一个得票的候选人的名字,要求最后输出各候选人的得票结果。 解题思路:

(1)使用结构体实现候选人信息的存储。 (2)按照姓名实现候选人得票结果的统计。

(3)涉及到字符串的比较,需要在前面加入#include 参考程序如下:

#include #include struct Person{ char name[20]; int count;

}leader[3]={ \void main( ) {

int i,j;

char leader_name[20]; for(i=1;i<=10;i++) {

printf(\scanf(\for(j=0;j<3;j++) { }

if(strcmp(leader_name,leader[j].name)==0) leader[j].count++;

} }

五、课后作业

有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课的成绩、平均分数)。

要求用input函数输入10个学生数据;用average函数求总平均分;用max函数找出最高分的学生数据;总平均分和最高分学生的数据都在主函数中输出。

六、总结

1.结构体在程序设计中的作用。

2.总结在解题过程中遇到的问题及解决方法。

本文来源:https://www.bwwdw.com/article/gmdp.html

Top