实验五结构体
一、实验目的
1.掌握结构体类型变量的定义和使用。
2.掌握结构体类型数组的概念和使用。
二、实验内容
编写一个程序实现下面的功能:
A.建立一个数组用于存储学生的学号、姓名和三门课程的成绩和平均成绩
B.输入学号后输出该学生的学号、姓名和三门课程的成绩
C.输入学号后删除该学生的数据
D.插入学生的数据
E.输出平均成绩在80分及以上的记录
F.退出
要求用循环语句实现B--E的多次操作
三、实验具体实验程序代码(要有注释)、测试结果(最好截图)和实验总结
1、实验代码
建立一个数组用于存储学生的学号、姓名和三门课程的成绩和平均成绩
输入学号后输出该学生的学号、姓名和三门课程的成绩
um,&stud[i].name,&stud[i].yingyu,&stud[i].shuxue,&stud[i].cc);
stud[i].avg=(stud[i].yingyu+stud[i].shuxue+stud[i].cc)/3;
}
for(i=0;i<n;i++)
{
printf("输入你要查询的学号:");
scanf("%d",&k);
if(k==stud[i].num)
{
printf("---------------------------\n");
printf("-----你要查询的学生信息----\n");
printf(" 学号姓名英语数学C++ \n");
printf("%d\t%s\t%f\t%f\t%f
\n",stud[i].num,stud[i].name,stud[i].yingyu,stud[i].shuxue,stud[i].cc);
printf("---------------------------\n");
printf("***输入你要删除的学号信息***");
scanf("%d",&k);
printf("***输入你要插入的数据:***\n");
scanf("%d\t%s\t%f\t%f\t%f",&stud[i].num,&stud[i].name,&stud[i].yingyu,&stud[i].shuxu e,&stud[i].cc);
}
for(j=0;j<n;j++)
{
if(stud[j].avg>=80)
{
printf("####输出平均分在80分以上的同学:####\n");
printf(" 学号姓名英语数学C++ \n");
printf("%d\t%s\t%f\t%f\t%f
\n",stud[j].num,stud[j].name,stud[j].yingyu,stud[j].shuxue,stud[j].cc);
printf("###################################\n");
}
}
}
return 0;
}
2、运行结果截图
总结:
对于数组的引用,分为数组元素和数组本身的引用。
对于数组元素的引用,其实质为简单变量的引用。
对于数组本身的引用实质是数组首地址的引用。
1.先声明结构体类型再定义变量名
如上面已经定义了一个结构体类型struct student,可以用它来定义变量。
如:
struct student student1,student2;
2.在声明类型的同时定义变量
一般形式:
struct 结构体名称
{
成员列表
}变量名列表;
答销网真情提供:::
文章出处:
&tid=1523&page=1&extra=#pid2387。