C语言 期末大作业

C语言 期末大作业,第1张

给你做好了,有问题可以在找我

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

#define N 12

FILE *fi

struct student

{

int num

char name[8]

int yuwen

int shuxue

int yingyu

}st[N]

void main()

{

struct student t

int i,j

char* s="学号 姓名 语文 数学 英语 总分 平均分\n"

double avr[N],sum[N]

for(i=0i<Ni++)

sum[i]=0

printf("输入%d 学生信息\n",N)

printf("**************************************************\n")

printf("学号 姓名 语文 数学 英语\n")

for(i=0i<Ni++)

scanf("%d%s%d%d%d%d",&st[i].num,st[i].name,&st[i].yuwen,&st[i].shuxue,&st[i].yingyu)

if((fi=fopen("d:\\student.txt","w"))==NULL)

{

printf("文件无法打开\n")

exit(1)

}

for(i=0i<Ni++)

fprintf(fi,"%d %s %d %d %d %d\n",st[i].num,st[i].name,st[i].yuwen,st[i].shuxue,st[i].yingyu)

fclose(fi)

//将文件进行保存

printf("学号 姓名 平均分 总分\n")

for(i=0i<Ni++)

{

sum[i]=st[i].yuwen+st[i].shuxue+st[i].yingyu

avr[i]=(st[i].yuwen+st[i].shuxue+st[i].yingyu)/3.0

printf("%d %s %.2lf %.2lf",st[i].num,st[i].name,avr[i],sum[i])

printf("\n")

}

printf("按总成绩排序如下\n")

printf("**************************************************\n")

for(i=0i<N-1i++)

for(j=0j<N-i-1j++)

if(sum[j]<=sum[j+1])

{

t=st[j]

st[j]=st[j+1]

st[j+1]=t

}

printf("学号 姓名 语文 数学 英语 总成绩\n\n")

for(i=0i<Ni++)

printf("%d %s %d %d %d %d %.2lf\n",st[i].num,st[i].name,st[i].yuwen,st[i].shuxue,st[i].yingyu,sum[i])

for(i=0i<Ni++)

{

sum[i]=st[i].yuwen+st[i].shuxue+st[i].yingyu

avr[i]=(st[i].yuwen+st[i].shuxue+st[i].yingyu)/3.0

}

//再次打开文件将学生的成绩按总成绩的高低进行排序输出到文件保存

if((fi=fopen("d:\\student.txt","w"))==NULL)

{

printf("文件无法打开\n")

exit(1)

}

fputs(s,fi)

for(i=0i<Ni++)

fprintf(fi,"%d %s %d %d %d %d %.2lf %.2lf\n",st[i].num,st[i].name,st[i].yuwen,st[i].shuxue,st[i].yingyu,sum[i],avr[i])

fclose(fi)

getchar()

}

给你个大概思路~~~~~

1。把每个学生的的信息先组合成一个结构体

struct

Student

{

……},

然后就用它来定义学生,

struct

Student

stu[100](有能力的话建义用动态内存的链表结构,不明白当我没说)

2。“自顶向下,逐步求精”,把各个功能写成各个函数,如添加,删除,查询,退出……(看你自己了,这正是C语言的模块化思想

3。主函数就是打出这些选择,让USER

去选,然后调用相应的函数去执行,完了又回到主菜单,以此循环

如果能使用图形的界面,增加动画之类的会更好的(呵呵,不会当我没说~~~~)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12110367.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存