c语言实验结构体答案,C语言实验5(结构体).doc

实验五 结构体

一、实验目的

1.掌握结构体类型变量的定义和使用。

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

二、实验内容

编写一个程序实现下面的功能:

建立一个数组用于存储学生的学号、姓名和三门课程的成绩和平均成绩

输入学号后输出该学生的学号、姓名和三门课程的成绩

输入学号后删除该学生的数据

插入学生的数据

输出平均成绩在80分及以上的记录

退出

要求用循环语句实现B--E的多次操作

三、实验具体实验程序代码(要有注释)、测试结果(最好截图)和实验总结

1、实验代码

//科目:C语言实验结构体

//题目:A.建立一个数组用于存储学生的学号、姓名和三门课程的成绩和平均成绩

// B.输入学号后输出该学生的学号、姓名和三门课程的成绩

//作者:武叶

//语言:C语言

//创作时间:2012年4月12日

#include"stdio.h"

#include"string.h"

struct student

{

int num;

char name[20];

float yingyu;

float shuxue;

float cc;

float avg;

};

struct student stud[100];

int main()

{

int i,j,n;

int k=1;

printf("输入有N个学生数:");

scanf("%d",&n);

printf("学号 姓名 英语 数学 c++\n");

for(i=0;i

{

scanf("%d%s%f%f%f",&stud[i].num,&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

{

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].shuxue,&stud[i].cc);

}

for(j=0;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 结构体名称{成员列表}变量名列表;

/forum.php?mod=viewt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值