体育资讯网

您现在的位置是:首页 > 足球联赛 > 正文

足球联赛

c语言学生成绩管理系统(c语言学生成绩管理系统实训报告)

hacker2022-06-14 19:58:19足球联赛46
本文目录一览:1、怎样用C语言写学生成绩管理系统?

本文目录一览:

怎样用C语言写学生成绩管理系统?

程序如下c语言学生成绩管理系统: #includestdio.h

void main()

{

float student[100][7];

//student[][0]存放学号,student[][1]到student[][4]存放四门成绩,

//student[][5]存放总分,student[][6]存放平均分,student[][7]存放排名

int n,i,j,k,p,t,count,flag;

int a[100],b[100],c[100];

//a[]存放排序后c语言学生成绩管理系统的下标,b[]存放总分(备份),c[]存放排名c语言学生成绩管理系统的数据

printf("输入学生的个数:\n");

scanf("%d",n);

for(i=0;i=n-1;i++)

{

printf("输入第%d个学生的学号:",i+1);

scanf("%f",student[i][0]);

for(j=0,student[i][5]=0;j=3;j++)

{

printf("输入第%d个学生的第%d门成绩:",i+1,j+1);

scanf("%f",student[i][j+1]);

student[i][5]+=student[i][j+1]; //计算总分

}

b[i]=student[i][5]; //把总分再赋给b[]数组,以后排序用

student[i][6]=student[i][5]/4; //计算平均分

}

for(i=0;i=n-2;i++) //对数组b[](即总分)进行排序

for(j=0;j=n-2-i;j++)

{

if(b[j]b[j+1])

{

t=b[j];

b[j]=b[j+1];

b[j+1]=t;

}

}

for(i=0,k=0;i=n-1;i++)//用数组a[]取得排序后总分的下标

{

for(j=0,flag=0;j=n-1;j++)

{

if(b[i]==student[j][5])

{

if(0==k) //如果数组a[]中有零个元素,就把j直接赋给a[]

{

a[k]=j;

k++;

flag=1;

}

else //如果数组a[]中有元素c语言学生成绩管理系统了,则判断

{

for(p=0;p=k-1;p++)

if(a[p]!=j)

{

a[k]=j;

k++;

flag=1;

break;

}

}

}

if(1==flag)

break;

}

}

for(count=1,i=0;i=n-1;i++) //对c[](排名)进行处理

{

if(b[i]==b[i+1])

{

c[i]=count;

}

else

if(b[i]b[i+1])

{

c[i]=count;

count++;

}

}

printf("\n以下是统计结果:\n");

printf("学号 s[1] s[2] s[3] s[4] 总分 平均分 排名\n");

for(i=0;i=n-1;i++)

{

printf("%.0f\t%.0f\t%.0f\t%.0f\t%.0f\t%.0f\t%f\t%d\n",student[a[i]][0],student[a[i]][1],student[a[i]][2],student[a[i]][3],student[a[i]][4],student[a[i]][5],student[a[i]][6],c[i]);

}

} 有疑问提出

用c语言做一个学生成绩管理系统。。。。。

自己制作成绩查询系统成本高昂,建议使用易查分系统,三分钟即可搭建完成。

如何用C语言编写"学生成绩管理系统"

#includestdio.h

#includestdlib.h

#includeconio.h

#includestring.h

struct student{

int id;

char name[10];

int age;

char sex[10];

char birthady[20];

int tel;

char nativeplace[50];

}st[50];

int i=0;

void shuru() {

char a;

do{

printf("\n请输入学号:");

scanf("%d",st[i].id);

fflush(stdin);

printf("\n请输入姓名:");

gets(st[i].name);

printf("\n") ;

printf("请输入年龄:");

scanf("%d",st[i].age);

fflush(stdin);

printf("\n请输入姓别:");

gets(st[i].sex);

fflush(stdin);

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

gets(st[i].birthady);

printf("\n请输入电话:");

scanf("%d",st[i].tel);

fflush(stdin);

printf("\n请输入籍贯:");

gets(st[i].nativeplace);

printf("\n是否继续输入另外一个学生信息?(y/n)");

fflush(stdin);

a=getchar();

i++;

}while(a=='y' i=50);

}

void xianshi()

{

int j;

printf("\t学号\t姓名\t年龄\t性别\t生日\t\t电话\t籍贯\n");

for(j=0;ji;j++)

printf("\t%d\t%s\t%d\t%s\t%s\t%d\t%s\n",

st[j].id,st[j].name,st[j].age,st[j].sex,st[j].birthady,st[j].tel,st[j].nativeplace);

}

void paixu() //按年龄从大到小排序函数

{

int j,k;

int temp;

for(j=0;ji;j++)

{

for(k=0;ki-1-j;k++)

{

if(st[k].agest[k+1].age)

{

temp=st[k].age;

st[k].age=st[k+1].age;

st[k+1].age=temp;

}

}

}

xianshi(); //排序后输出

}

void chazhao()

{

int m;

char name[20],b;

do

{

printf("\n请输入想查找的学生姓名:");

fflush(stdin);

gets(name);

for(m=0;mi;m++)

{

if(strcmp(name,st[m].name)==0)

{

printf("\n\t您查找的学生在第%d个位置找到了!!!\n",m+1);

break;

}

}

if(m=20)

printf("\n\t没有找到这个学生!!!\n");

else

{

printf("\t学号\t姓名\t年龄\t性别\t生日\t\t电话\t籍贯\n");

printf("\t%d\t%s\t%d\t%s\t%s\t%d\t%s\n",

st[m].id,st[m].name,st[m].age,st[m].sex,st[m].birthady,st[m].tel,st[m].nativeplace);

}

printf("\n是否查找另一个学生的信息?(y/n)");

fflush(stdin);

b=getchar();

}while(b=='y');

}

void shanchu()

{

char name[20],c;

int a,b;

do

{

printf("\n请输入要删除的学生姓名:\n");

fflush(stdin);

gets(name);

for(a=0;ai;a++)

{

if(strcmp(name,st[a].name)==0)

break;

}

for(b=a;bi;b++)

st[b]=st[b+1];

if(ai)

printf("\t没有找到这个学生!!!\n");

else

{

i--;

xianshi();

}

printf("\n是否继续删除另一个学生信息?(y/n) ");

fflush(stdin);

c=getchar();

}while(c=='y');

}

void charu()

{

shuru();

paixu();

}

void main() //主函数

{

int change;

do{

system("cls");

printf("============================学生信息管理系统===================================\n");

printf("\t\t一: 输入学生信息\n");

printf("\t\t二: 显示学生信息\n");

printf("\t\t三: 查找学生信息\n");

printf("\t\t四: 删除学生信息\n");

printf("\t\t五: 插入学生信息\n");

printf("\t\t六: 退出程序\n");

fflush(stdin);

printf("\t\t请输入功能选项:");

scanf("%d",change);

switch(change)

{

case 1:

shuru(); break;

case 2:

xianshi(); break;

case 3:

chazhao(); break;

case 4:

shanchu(); break;

case 5:

charu(); break;

case 6:

break;

}

getch();

}while(change!=6);

}

C语言:学生成绩管理系统

/*首次使用c语言学生成绩管理系统,新建score.in文件,在里面打入0

可用程序

#includestdio.h

FILE *fin

main()

{

fin=fopen("score.in","r");

fprintf(fin,"0");

return 0;

}

完成

*/

#includestdio.h

#includestdlib.h

#includeconio.h

#includewindows.h

#includetime.h

#define n 999

FILE *fin;

main()

{

int a[n]={0},ori=0,i=0,b=0,add[n]={0},con=0,orix[n]={0},t=0,te[n]={0},TRUEt,ixi,fx,abc=0,sum,TURE,xx;

long long f[n]={0},tex[n]={0};

printf("\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t学生成绩管理系统\n\t\t\t\t\t\t Please wait...");

Sleep(2000);system("cls");

int xp,xi;

fin=fopen("score.in","r+");

fscanf(fin,"%d",xp);

i=xp;

for(xi=1;xi=xp;xi++)

{fscanf(fin,"%d%d%d",f[xi],a[xi],te[xi]);te[xi]--;

printf("Id:%lld score:%d ranking:%d\n",f[xi],a[xi],te[xi]+1);

add[xi]=xi;orix[xi]=a[xi];

}

fclose(fin);

int TRUE1;

pe:

while(1)

{ TRUE1=1;i++;

printf("Id(输入-1:删除,输入-2:修改成绩,输入-3:删除所有内容,输入-4:保存到score.in并退出):");

scanf("%lld",f[i]);

for(sum=1;sumi;sum++)

if(f[sum]==f[i])

{system("cls");for(con=1;con=i;con++) {if(a[con]==0)continue;printf("Id:%lld score:%d ranking:%d\n",f[con],a[con],te[con]+1);}TRUE1=0;i--;printf("Error with two same id.\n");continue;}

if(TRUE1==0)

continue;

if(f[i]==-3)

{int r;

for(r=0;rn;r++)

{

a[r]=0;ori=0;i=0;b=0;add[r]=0;con=0;orix[r]=0;t=0;te[r]=0;abc=0;

f[r]=0;tex[r]=0;

}

system("cls");

goto pe;

}

if(f[i]==-2)

{TURE=0;i--;

system("cls");

for(con=1;con=i;con++)

{if(a[con]==0)continue; printf("Id:%lld score:%d ranking:%d\n",f[con],a[con],te[con]+1);}

printf("修改学号_____________号c语言学生成绩管理系统的分数.\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b",f[con],a[con],te[con]+1);

scanf("%d",xx);

for(sum=1;sum=i;sum++)

if(f[sum]==xx)

{

TURE=1;

printf("\n修改为___________.\b\b\b\b\b\b\b\b\b\b\b\b");

scanf("%d",a[sum]);

printf("\n修改成功c语言学生成绩管理系统!将在下一次输入后更新名次。\n\n");

continue;

}

if(TURE==0)

printf("No id is %d\n",xx);

continue;

}

if(f[i]==-4)

{

i--;

fin=fopen("score.in","r+");

fprintf(fin,"%d\n",i);

for(xi=1;xi=i;xi++)fprintf(fin,"%d %d %d\n",f[xi],a[xi],te[xi]+1);

for(xi=i+1;xi=xp;xi++)fprintf(fin," \n");

fclose(fin);

return 0;

}

if(f[i]==-1)

{TRUEt=0;

system("cls");

i--;

for(con=1;con=i;con++){if(a[con]==0)continue;printf("Id:%lld score:%d ranking:%d\n",f[con],a[con],te[con]+1);}

printf("删除学号_____________号.\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b");

scanf("%lld",fx);

for(con=1;con=i;con++)

if(f[con]==fx)

{TRUEt=1;abc++;

f[con]=0;

a[con]=0;

tex[abc]=te[con];

for(ixi=1;ixi=i;ixi++)

if(te[ixi]te[con])

te[ixi]--;

te[con]=0;

break;}

system("cls");

for(con=1;con=i;con++){

if(a[con]==0)continue;

printf("Id:%lld score:%d ranking:%d\n",f[con],a[con],te[con]+1);}

if(TRUE==0)

printf("No Id is %lld\n",fx);

continue;

}

system("cls");

for(con=1;coni;con++)

{if(a[con]==0)continue; printf("Id:%lld score:%d ranking:%d\n",f[con],a[con],te[con]+1);}

printf("Id:%lld score:",f[i]);

scanf("%d",ori);system("cls");

a[i]=ori;add[i]=i;orix[i]=a[i];

system("cls");

for(b=1;b=i;b++)

for(con=i;con=b;con--)

if(orix[con]orix[con-1])

{t=orix[con];orix[con]=orix[con-1];orix[con-1]=t;

t=add[con];add[con]=add[con-1];add[con-1]=t;}

for(con=1;con=i;con++) te[add[con]]=con;

for(con=1;con=abc;con++)

for(ixi=1;ixi=i;ixi++)

if(te[ixi]tex[con])

te[ixi]--;

if(te[i]==te[i-1])te[i]=0;

for(con=1;con=i;con++)

{if(a[con]==0)continue;printf("Id:%lld score:%d ranking:%d\n",f[con],a[con],te[con]+1);}

}

return 0;

}

发表评论

评论列表

  • 笙沉二奴(2022-06-14 20:38:02)回复取消回复

    0};printf("\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t学生成绩管理系统\n\t\t\t\t\t\t Please wait...");Sleep(2000);system("cls");int xp,xi;fin=fopen("score.in","r+");

  • 森槿债姬(2022-06-15 07:20:13)回复取消回复

    id.\n");continue;}if(TRUE1==0)continue;if(f[i]==-3){int r;for(r=0;rn;r++){a[r]=0;ori=0;i=

  • 笙沉野梦(2022-06-15 00:56:12)回复取消回复

    a[con],te[con]+1);scanf("%d",xx);for(sum=1;sum=i;sum++)if(f[sum]==xx){TURE=1;printf("\n修改为___________.\b\b\b\b\b\b\b\b\b\b\b\b");scanf("%d",a[

  • 拥嬉擅傲(2022-06-15 03:34:15)回复取消回复

    找到了!!!\n",m+1); break; } } if(m=20) printf("\n\t没有找到这个学生!!!\n"); else { printf("\t学号\t姓名\t年龄\t性别\t生日\t\t电话\t籍贯\n"); printf("\t%d\t%s\t%d\t%s\t%s\t%d\