C语言学生成绩管理系统编码.docx

上传人:b****8 文档编号:9309780 上传时间:2023-05-18 格式:DOCX 页数:20 大小:17.07KB
下载 相关 举报
C语言学生成绩管理系统编码.docx_第1页
第1页 / 共20页
C语言学生成绩管理系统编码.docx_第2页
第2页 / 共20页
C语言学生成绩管理系统编码.docx_第3页
第3页 / 共20页
C语言学生成绩管理系统编码.docx_第4页
第4页 / 共20页
C语言学生成绩管理系统编码.docx_第5页
第5页 / 共20页
C语言学生成绩管理系统编码.docx_第6页
第6页 / 共20页
C语言学生成绩管理系统编码.docx_第7页
第7页 / 共20页
C语言学生成绩管理系统编码.docx_第8页
第8页 / 共20页
C语言学生成绩管理系统编码.docx_第9页
第9页 / 共20页
C语言学生成绩管理系统编码.docx_第10页
第10页 / 共20页
C语言学生成绩管理系统编码.docx_第11页
第11页 / 共20页
C语言学生成绩管理系统编码.docx_第12页
第12页 / 共20页
C语言学生成绩管理系统编码.docx_第13页
第13页 / 共20页
C语言学生成绩管理系统编码.docx_第14页
第14页 / 共20页
C语言学生成绩管理系统编码.docx_第15页
第15页 / 共20页
C语言学生成绩管理系统编码.docx_第16页
第16页 / 共20页
C语言学生成绩管理系统编码.docx_第17页
第17页 / 共20页
C语言学生成绩管理系统编码.docx_第18页
第18页 / 共20页
C语言学生成绩管理系统编码.docx_第19页
第19页 / 共20页
C语言学生成绩管理系统编码.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言学生成绩管理系统编码.docx

《C语言学生成绩管理系统编码.docx》由会员分享,可在线阅读,更多相关《C语言学生成绩管理系统编码.docx(20页珍藏版)》请在冰点文库上搜索。

C语言学生成绩管理系统编码.docx

C语言学生成绩管理系统编码

#include 

#include

#include

#include

#define kemu 10//最多考试科目

//函数声明部分

void menu();//界面

void quanbu();//显示全部数据

void insert();//增加数据

void change();//修改学生数据

void dele();//删除数据

void find();//查看某位同学记录

void pingjun();//按平均分排序

//void quanbu();//

//结构

struct student

{

charxue[20];//学号

charming[10];//姓名

float chengji[kemu];//M 门成绩

float zong;//总分

float pingjun;//平均分

}xuesheng[100],xuesheng2[100],x2;//我假设一次最

多有 100 名学生要输入数据

//////////////////////////////

void insert() //增加数据函数

{

int i;

char yn;

char daiti[20];

FILE *fp=NULL;    /*定义文件指针*/

fp=fopen("学生记录.txt","a+");

if((fp)==NULL)        /*如果打开文件失败,则结束程序*/

{

printf("文件不存在!

\n");

getch();  /*待按任意键继续*/

exit(0); /*终止程序*/

}

 

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

{

if(i%2==0)

{

printf("要加入学生数据吗?

y/n:

\n");

}

scanf("%c",&yn);

if(yn=='n')

{

break;

}

else if(yn=='y')

{

printf("请输入 5 位数以内的学号:

");

scanf("%s",xuesheng[i].xue);

if(strlen(xuesheng[i].xue)>5)

{

printf("输入错误!

请输入 5 位数以内的学

号!

\n\n\n");

}

zeng();

printf("输入 4 个汉字以内的名字:

");

scanf("%s",xuesheng[i].ming );

if(strlen(xuesheng[i].ming)>8)

{

printf("输入错误!

请输入 4 个汉字以内的

名字!

\n\n\n");

}

zeng();

printf("请输入程序成绩:

");

scanf("%f",&xuesheng[i].chengji [0] );

printf("请输入英语成绩:

");

scanf("%f",&xuesheng[i].chengji [1] );

printf("请输入网页成绩:

");

scanf("%f",&xuesheng[i].chengji [2] );

xuesheng[i].pingjun

=(xuesheng[i].chengji [0]+xuesheng[i].chengji

[1]+xuesheng[i].chengji [2])/3;

fprintf(fp,"%s\t\t%s\t\t%f\t\t%f\t\t%f\t\t%f\t\t\n",xueshen

g[i].xue ,xuesheng[i].ming, xuesheng[i].chengji

[0],xuesheng[i].chengji [1],xuesheng[i].chengji

[2],xuesheng[i].pingjun );

}

 

}

fclose(fp);

 

system("cls");

jie();

}

////////////////////////////

void change()//修改数据

{

 

int i,j;

char a[20]; //要修改学生的学号

char yn;

FILE *fp;

system("cls");

fp=fopen("学生记录.txt","r");

if((fp)==NULL)/*如果打开文件失败,则结束程序*/

{

printf("文件不存在!

\n");

getch();/*待按任意键继续*/

exit(0); /*终止程序*/

}

printf("请输入要修改学生的学号:

");

scanf("%s",a);

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

{

fscanf(fp," %s\t%s%f\t%f\t%f\t%f\t

\n",xuesheng2[i].xue ,xuesheng2[i].ming, &xuesheng2[i].chengji

[0],&xuesheng2[i].chengji [1],&xuesheng2[i].chengji

[2],&xuesheng2[i].pingjun);

if(xuesheng2[i].xue ==NULL)

{

break;

}

}

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

{

if(strcmp(xuesheng2[i].xue,a)==0)

{

printf("请输入 5 位数以内的学号:

");

scanf("%s",xuesheng2[i].xue);

if(strlen(xuesheng2[i].xue)>5)

{

printf("输入错误!

请输入 5 位数以内的学

号!

\n\n\n");

 

}

getch();

xiu();

printf("输入 4 个汉字以内的名字:

");

scanf("%s",xuesheng2[i].ming );

if(strlen(xuesheng2[i].ming)>8)

{

printf("输入错误!

请输入 4 个汉字以内的

名字!

\n\n\n");

 

}

getch();

xiu();

 

printf("请输入程序成绩:

");

scanf("%f",&xuesheng2[i].chengji [0] );

printf("请输入英语成绩:

");

scanf("%f",&xuesheng2[i].chengji [1] );

printf("请输入网页成绩:

");

scanf("%f",&xuesheng2[i].chengji [2] );

xuesheng2[i].pingjun

=(xuesheng2[i].chengji [0]+xuesheng2[i].chengji

[1]+xuesheng2[i].chengji [2])/3;

xuesheng[i].pingjun

=(xuesheng2[i].chengji [0]+xuesheng2[i].chengji

[1]+xuesheng2[i].chengji [2])/3;

fprintf(fp,"%s\t\t%s\t\t%f\t\t%f\t\t%f\t\t%f\t\t\n",xueshen

g2[i].xue ,xuesheng2[i].ming, xuesheng2[i].chengji

[0],xuesheng2[i].chengji [1],xuesheng2[i].chengji

[2],xuesheng2[i].pingjun );

}

}

 

fclose(fp);

fp=fopen("学生记录.txt","w");

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

{

//

printf("|%s\f\t|%s\f\t|%.2f\f\t|%.2f\f\t

|%.2f\f\t|%.2f\f\t\n",xuesheng[i].xue ,xuesheng[i].ming,

xuesheng[i].chengji [0],xuesheng[i].chengji [1],xuesheng[i].chengji

[2],xuesheng[i].pingjun);

 

xuesheng2[i].xue[0] <='9')

if(xuesheng2[i].xue[0] >='0'&&

{

fprintf(fp,"%s\t\t%s\t\t%f\t\t%f\t\t%f\t\t%f\t\t\n",xueshen

g2[i].xue ,xuesheng2[i].ming, xuesheng2[i].chengji

[0],xuesheng2[i].chengji [1],xuesheng2[i].chengji

[2],xuesheng2[i].pingjun );

}

else

{

}

break;

}

 

}

////////////////////////////

void dele()//删除数据

fclose(fp);

printf("\n\t\t\t 请按任意键继续。

\n");

getch();

jie();

{

int i,j;

char a[20]; //要删除学生的学号

char yn;

FILE *fp;

system("cls");

fp=fopen("学生记录.txt","r");

if((fp)==NULL)/*如果打开文件失败,则结束程序*/

{

printf("文件不存在!

\n");

getch();/*待按任意键继续*/

exit(0); /*终止程序*/

}

printf("请输入要删除学生的学号:

");

scanf("%s",a);

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

{

if(xuesheng2[i].xue[0] >='0'&&

xuesheng2[i].xue[0] <='9')

{

fscanf(fp," %s\t%s%f\t%f\t%f\t%f\t

\n",xuesheng2[i].xue ,xuesheng2[i].ming, &xuesheng2[i].chengji

[0],&xuesheng2[i].chengji [1],&xuesheng2[i].chengji

[2],&xuesheng2[i].pingjun);

}

else

{

}

break;

}

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

{

if(strcmp(xuesheng2[i].xue,a)==0)

{

printf(" 学号姓名程序成绩英语

成绩网页成绩平均成绩\n");

printf("______________________________________________________

__________________________");

printf(" %s\f\t%s\f\t%.2f\f\t%.2f\f\t%.2f\f\t %

.2f\f\t\n",xuesheng2[i].xue ,xuesheng2[i].ming,

xuesheng2[i].chengji [0],xuesheng2[i].chengji

[1],xuesheng2[i].chengji [2],xuesheng2[i].pingjun);

break;

}

}

if(i==100)

{

printf("不存在此学生!

");

}

 

for(j=i;j<100;j++)

{

xuesheng2[j] =xuesheng2[j+1] ;

 

}

 

fclose(fp);

getch();

fp=fopen("学生记录.txt","w");

 

xuesheng2[i].xue[0] <='9')

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

{

if(xuesheng2[i].xue[0] >='0'&&

{

fprintf(fp,"%s\t\t%s\t\t%f\t\t%f\t\t%f\t\t%f\t\t\n",xueshen

g2[i].xue ,xuesheng2[i].ming, xuesheng2[i].chengji

[0],xuesheng2[i].chengji [1],xuesheng2[i].chengji

[2],xuesheng2[i].pingjun );

}

else

{

}

break;

 

}

 

 

}

////////////////////////////

void find()//查询学生记录

fclose(fp);

printf("\n\t\t\t 请按任意键继续。

\n");

getch();

jie();

{

int i;

char yn;

char a[20];//要查询的姓名

FILE *fp;

system("cls");

fp=fopen("学生记录.txt","r");

if((fp)==NULL)        /*如果打开文件失败,则结束程序*/

{

printf("文件不存在!

\n");

getch();  /*待按任意键继续*/

exit(0); /*终止程序*/

}

printf("请输入要查询学生的姓名:

");

scanf("%s",&a);

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

{

fscanf(fp," %s\t%s%f\t%f\t%f\t%f\t

\n",xuesheng[i].xue ,xuesheng[i].ming, &xuesheng[i].chengji

[0],&xuesheng[i].chengji [1],&xuesheng[i].chengji

[2],&xuesheng[i].pingjun);

if(strcmp(xuesheng[i].ming,a)== 0)

{

break;

}

}

if(i==101)

{

printf("不存在此学生。

\n");

}

else

{

printf(" 学号姓名程序成绩英语

成绩网页成绩平均成绩\n");

printf("______________________________________________________

__________________________");

printf(" %s\f\t%s\f\t%.2f\f\t%.2f\f\t%.2f\f\t %

.2f\f\t\n",xuesheng[i].xue ,xuesheng[i].ming, xuesheng[i].chengji

[0],xuesheng[i].chengji [1],xuesheng[i].chengji

[2],xuesheng[i].pingjun);

}

scanf("%c",&yn);

printf("请问要继续查看吗?

y/n:

\n");

scanf("%c",&yn);

if(yn=='y')

{

fclose(fp);

cha();

}

else

{

fclose(fp);

jie();

}

 

}

////////////////////////////

void pingjun()//按平均分排序

{

char a[20];

char yn;

int i,j;

FILE *fp;

system("cls");

fp=fopen("学生记录.txt","r");

if((fp)==NULL)/*如果打开文件失败,则结束程序*/

{

printf("文件不存在!

\n");

getch();/*待按任意键继续*/

exit(0); /*终止程序*/

}

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

{

fscanf(fp," %s\t%s%f\t%f\t%f\t%f\t

\n",xuesheng2[i].xue ,xuesheng2[i].ming, &xuesheng2[i].chengji

[0],&xuesheng2[i].chengji [1],&xuesheng2[i].chengji

[2],&xuesheng2[i].pingjun);

}

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

for(j=i+1;j<100;j++)

{

if(xuesheng2[i].pingjun

{

x2=xuesheng2[i];

xuesheng2[i]=xuesheng2[j];

 

}

}

xuesheng2[j]=x2;

 

xuesheng2[i].xue[0] <='9')

for(i=0,j=1;i<100;i++,j++)

{

if(xuesheng2[i].xue[0] >='0'&&

{

printf("第%d 名

____________________________________________________________________

___\n",j);

printf(" 学

号姓名程序成绩英语成绩网页成绩平均

成绩\n");

 

printf(" %s\f\t%s\f\t%.2f\f\t%.2f\f\t%.2f\f\t %

.2f\f\t\n",xuesheng2[i].xue ,xuesheng2[i].ming,

xuesheng2[i].chengji [0],xuesheng2[i].chengji

[1],xuesheng2[i].chengji [2],xuesheng2[i].pingjun);

}

else

{

break;

}

fclose(fp);

}

printf("\n\t\t\t 请按任意键继续。

\n");

}

getch();

jie();

/////////////////////////////

void quanbu()//显示学生全部记录

{

int i;

FILE *fp;

system("cls");

fp=fopen("学生记录.txt","r");

if((fp)==NULL)/*如果打开文件失败,则结束程序*/

{

printf("文件不存在!

\n");

getch();/*待按任意键继续*/

exit(0); /*终止程序*/

}

printf(" 学号姓名程序成绩英语

成绩网页成绩平均成绩\n");

printf("______________________________________________________

__________________________");

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

{

 

//编码中发现用结构体 xuesheng 打印会出现数据混

乱,为此创建了 xuesheng2.

fscanf(fp," %s\t%s%f\t%f\t%f\t%f\t

\n",xuesheng2[i].xue ,xuesheng2[i].ming, &xuesheng2[i].chengji

[0],&xuesheng2[i].chengji [1],&xuesheng2[i].chengji

[2],&xuesheng2[i].pingjun);

//if(xuesheng[i].xue[0] ==

'1'||xuesheng[i].xue[0] =='2'||xuesheng[i].xue[0]

=='3'||xuesheng[i].xue[0] =='4'||xuesheng[i].xue[0]

=='5'||xuesheng[i].xue[0] =='6'||xuesheng[i].xue[0]

=='7'||xuesheng[i].xue[0] =='8'||xuesheng[i].xue[0]

=='9'||xuesheng[i].xue[0] =='0')

if(xuesheng2[i].xue[0] >='0'&&

xuesheng2[i].xue[0] <='9')

{

 

printf(" %s\f\t%s\f\t%.2f\f\t%.2f\f\t%.2f\f\t %

.2f\f\t\n",xuesheng2[i].xue ,xuesheng2[i].ming,

xuesheng2[i].chengji [0],xuesheng2[i].chengji

[1],xuesheng2[i].chengji [2],xuesheng2[i].pingjun);

}

else

{

break;

}

}

fclose(fp);

printf("\n\t\t\t 请按任意键继续。

\n");

getch();

menu();

}

//////////////////////////////

 

void menu()//界面.

{

int xuanze;

system("cls");

 

);

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

printf("\t\t***********************************************\n");

printf("\t\t*\t\t1.增加学生记录\t            *\n");

printf("\t\t*\t\t2.修改学生记录\t            *\n");

printf("\t\t*\t\t3.删除学生记录\t            *\n");

printf("\t\t*\t\t4.查询学生记录\t            *\n");

printf("\t\t*\t\t5.按学生平均分排序\t     *\n");

printf("\t\t*\t\t6.显示学生全部记录\t     *\n");

printf("\t\t*\t\t7.退出                    *\n");

printf("\t\t***********************************************\n"

 

printf("\n\t\t 请选择<1—7>:

\n");

scanf("%d",&xuanze);

switch(xuanze)

{

case

(1):

zeng();break;

case

(2):

xiu();break;

case(3):

shan();break;

case(4):

cha();break;

case(5):

pingjun();break;

case(6):

quanbu();break;

case(7):

exit(7);break;

default:

printf("输入错误,请重新输入!

");getch();system("cls");jie();

 

}

}

 

//////////

main()

{

printf("\n\t\t\t******************************\n");

printf("\t\t\t**\n");

printf("\t\t\t*作品:

学生成绩管理系统*\n");

p

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2