失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c语言 程序结集 c语言(结体程序设计).doc

c语言 程序结集 c语言(结体程序设计).doc

时间:2024-03-21 07:17:37

相关推荐

c语言 程序结集 c语言(结体程序设计).doc

c语言(结体程序设计)

C语言程序设计实验报告

实验七、结构体程序设计

【实验目的】

(1)掌握结构体类型的概念、定义和使用;

(2)掌握结构体数组、结构体指针的定义和使用;

【实验内容及步骤】

1、输入5位同学的一组信息,包括学号、姓名、数学成绩、计算机成绩,求得每位同学的平均分和总分,然后按照总分从高到低排序。

【程序代码】:

struct student

{

int num;

char name[10];

double math_score;

double computer_score;

};

#include

main()

{

struct student std[5],std_temp;

int i,j,temp;

double sum[5],aver[5];

for(i=0;i<5;i++)

{

printf("输入第%d学生的学号、姓名、数学成绩、计算机成绩:\n",i+1);

scanf("%d%s%lf%lf",&std[i].num,&std[i].name,&std[i].math_score,&std[i].computer_score);

}

printf("您输入的学生信息为:\n");

for(i=0;i<5;i++)

{

printf("学号:%-5d姓名:%s数学成绩:%3.1lf计算机成绩:%3.1lf\n",std[i].num,std[i].name,std[i].math_score,std[i].computer_score);

}

for(i=0;i<5;i++)

{

sum[i]=std[i].computer_score+std[i].math_score;

aver[i]=sum[i]/2;

}

//按最高分降序排列

for(i=0;i<4;i++)

{

for(j=0;j<4-i;j++)

{

if(sum[j]

{

//交换最高分

temp=sum[j];

sum[j]=sum[j+1];

sum[j+1]=temp;

//交换对应的学生信息

std_temp=std[j];

std[j]=std[j+1];

std[j+1]=std_temp;

//交换平均分

temp=aver[j];

aver[j]=aver[j+1];

aver[j+1]=temp;

}

}

}

printf("按最高分由高到低为:\n");

for(i=0;i<5;i++)

{

printf("学号:%-5d姓名:%s数学成绩:%3.1lf计算机成绩:%3.1lf总分:%3.1lf平均分:%3.1lf\n",std[i].num,std[i].name,std[i].math_score,std[i].computer_score,sum[i],aver[i]);

}

}

【运行结果】

2.定义一个结构体变量(包括年、月、日)。编写一个函数days,计算该日期在本年中是第几天(注意闰年问题)。由主函数将年月日传递给days函数,计算之后,将结果传回到主函数输出。

【程序代码】

struct datetime

{

int year;

int month;

int day;

};

#include

int days(struct datetime);

main()

{

int count_day;

struct datetime date;

printf("请输入年月日:\n");

scanf("%d%d%d",&date.year,&date.month,&date.day);

count_day=days(date);

printf("日期%d/%2d/%2d是%d的第%d天\n",date.year,date.month,date.day,date.year,count_day);

}

int days(struct datetime date)

{

int result=0;

int year=date.year,month=date.month,day=date.day;

switch(month-1)

{

case 12:

result+=31;

case 11:

result+=30;

case 10:

result+=31;

case 9:

result+=30;

cas

如果觉得《c语言 程序结集 c语言(结体程序设计).doc》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。