学生成绩管理系统vs汇编.docx

上传人:b****6 文档编号:7916118 上传时间:2023-01-27 格式:DOCX 页数:15 大小:18.64KB
下载 相关 举报
学生成绩管理系统vs汇编.docx_第1页
第1页 / 共15页
学生成绩管理系统vs汇编.docx_第2页
第2页 / 共15页
学生成绩管理系统vs汇编.docx_第3页
第3页 / 共15页
学生成绩管理系统vs汇编.docx_第4页
第4页 / 共15页
学生成绩管理系统vs汇编.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

学生成绩管理系统vs汇编.docx

《学生成绩管理系统vs汇编.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统vs汇编.docx(15页珍藏版)》请在冰豆网上搜索。

学生成绩管理系统vs汇编.docx

学生成绩管理系统vs汇编

#include

#include

#include

#include

#include

#defineLENsizeof(structstudent)

#defineFORMAT"%-8d%-15s%-12.1lf%-12.1lf%-12.1lf%-12.1lf\n"

#defineDATAstu[i].num,stu[i].name,stu[i].elec,stu[i].expe,stu[i].requ,stu[i].sum

floatIelec,Iexpe,Irequ;

floatFelec,Fexpe,Frequ;

structstudent/*定义学生成绩结构体*/

{

intnum;/*学号*/

charname[15];/*姓名*/

doubleelec;/*选修课*/

doubleexpe;/*实验课*/

doublerequ;/*必修课*/

doublesum;/*总分*/

};

structstudentstu[50];/*定义结构体数组*/

voidinput();/*录入学生成绩信息*/

voidshow();/*显示学生信息*/

voidsort();/*按总分排序*/

voiddel();/*删除学生成绩信息*/

voidmodify();/*修改学生成绩信息*/

voidmenu();/*主菜单*/

voidinsert();/*插入学生信息*/

voidtotal();/*计算总人数*/

voidsearch();/*查找学生信息*/

main()

{

intn;

menu();

scanf("%d",&n);

while(n)

{

switch(n)

{

case1:

input();break;

case2:

search();break;

case3:

del();break;

case4:

modify();break;

case5:

insert();break;

case6:

sort();break;

case7:

total();break;

default:

break;

}

menu();

scanf("%d",&n);

}

}

voidshow()

{

FILE*fp;

inti,m=0;

fp=fopen("d:

\\data.txt","ab+");

while(!

feof(fp))

{

if(fread(&stu[m],LEN,1,fp)==1)

m++;

}

fclose(fp);

printf("numbernameelectiveexperimentrequiredsum\t\n");

for(i=0;i

{

printf(FORMAT,DATA);/*将信息按指定格式打印*/

}

}

voidmenu()

{

system("cls");

printf("\n");

printf("\n");

printf("\t|--------------------Studentmanagementsystem--------------------|\n");

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

printf("\t|0.exit|\n");

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

printf("\t|1.inputrecord|\n");

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

printf("\t|2.searchrecord|\n");

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

printf("\t|3.deleterecord|\n");

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

printf("\t|4.modifyrecord|\n");

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

printf("\t|5.insertrecord|\n");

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

printf("\t|6.order|\n");

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

printf("\t|7.number|\n");

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

printf("\t|-----------------------------------------------------------------|\n");

printf("\n");

printf("\n");

printf("choose(0~7):

");

}

voidinput()

{

inti,m=0;

charch[2];

FILE*fp;

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)/*打开指定文件*/

{

printf("cannotopen\n");

return;/*返回主函数*/

}

while(!

feof(fp))/*feof()函数是用来判断指针是否已经到达文件尾部的,

若指针指向文件末尾,则返回值为“真”,返回。

*/

{

if(fread(&stu[m],LEN,1,fp)==1)

m++;/*统计当前记录条数*/

}

fclose(fp);

if(m==0)

printf("Norecord!

\n");

else

{

system("cls");

show();/*调用show函数,显示原有信息*/

}

if((fp=fopen("d:

\\data.txt","wb"))==NULL)

{

printf("cannotopen\n");

return;

}

for(i=0;i

fwrite(&stu[m],LEN,1,fp);/*向指定磁盘文件写入信息*/

printf("pleaseinput(y/n):

/n");

scanf("%s",&ch);

if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0)

{

printf("pleaseinputpercentum:

");

printf("\nelective:

");

scanf("%f",&Ielec);

printf("/nexperiment:

");

scanf("%f",&Iexpe);

printf("/nrequiredcourse:

");

scanf("%f",&Irequ);

}

while(strcmp(ch,"y")==0||strcmp(ch,"Y")==0)

{

printf("number:

");

scanf("%d",&stu[m].num);/*输入学生学号*/

for(i=0;i

if(stu[i].num==stu[m].num)

{

printf("thenumberisexisting,pressanytocontinue!

");

getch();

fclose(fp);

return;

}

printf("name:

");

scanf("%s",&stu[m].name);/*输入学生姓名*/

printf("elective:

");

scanf("%lf",&stu[m].elec);/*输入选修课成绩*/

printf("experiment:

");

scanf("%lf",&stu[m].expe);/*输入实验课成绩*/

printf("requiredcourse:

");

scanf("%lf",&stu[m].requ);/*输入必修课成绩*/

stu[m].sum=stu[m].elec*Ielec+stu[m].expe*Iexpe+stu[m].requ*Irequ;/*计算出总成绩*/

if(fwrite(&stu[m],LEN,1,fp)!

=1)/*将新录入的信息写入指定的磁盘文件*/

{

printf("cannotsave!

");

getch();

}

else

{

printf("%ssaved!

\n",stu[m].name);

m++;

}

printf("continue?

(y/n):

");/*询问是否继续*/

scanf("%s",ch);

}

fclose(fp);

printf("OK!

\n");

}

voidsearch()/*自定义查找函数*/

{

FILE*fp;

intsnum,i,m=0;

charch[2];

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)

{

printf("cannotopen\n");

return;

}

while(!

feof(fp))

if(fread(&stu[m],LEN,1,fp)==1)

m++;

if(m==0)

{

printf("norecord!

\n");

return;

}

printf("pleaseinputthenumber:

");

scanf("%d",&snum);/*输入需要查找学生的学号*/

for(i=0;i

if(snum==stu[i].num)/**查找出入的学号是否在记录中*/

{

printf("findthestudent,show?

(y/n)");

scanf("%s",ch);

if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0)

{

printf("numbernameelectiveexperimentrequiredsum\t\n");

printf(FORMAT,DATA);/*将查找出得结果按指定格式输出*/

break;

}

}

if(i==m)

printf("cannotfindthestudent!

\n");/*没有找到要查额信息*/

system("pause");

}

voidmodify()/*自定义修改函数*/

{

inti,j,snum,m=0;

FILE*fp;

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)

{

printf("cannotopen\n");

return;

}

while(!

feof(fp))

if(fread(&stu[m],LEN,1,fp)==1)

m++;

if(m==0)

{

printf("norecord!

\n");

fclose(fp);

return;

}

printf("pleaseinputthenumberofthestudentwhichdoyouwanttomodify!

\n");

scanf("%d",&snum);

for(i=0;i

if(snum==stu[i].num)/*检索记录中是否有要修改的信息*/

break;

if(i

{

printf("findthestudent!

youcanmodifynow!

\n");

printf("pleaseinputpercentnm:

");

printf("\nelective:

");

scanf("%f",&Ielec);

printf("\nexperiment:

");

scanf("%f",&Iexpe);

printf("\nrequiredcourse:

");

scanf("%f",&Irequ);

printf("name:

\n");

scanf("%s",&stu[i].name);

printf("\nelective:

");

scanf("%lf",&stu[i].elec);

printf("\nexperiment:

");

scanf("%lf",&stu[i].expe);

printf("\nrequiredcourse:

");

scanf("%lf",&stu[i].requ);

stu[i].sum=stu[i].elec*Ielec+stu[i].expe*Iexpe+stu[i].requ*Irequ;

}

else

{

printf("cannotfind!

");

getch();

return;

}

if((fp=fopen("d:

\\data.txt","wb"))==NULL)

{

printf("cannotopen\n");

return;

}

for(j=0;j

if(fwrite(&stu[j],LEN,1,fp)!

=1)

{

printf("cannotsave!

");

getch();

}

fclose(fp);

}

voiddel()/*自定义删除函数*/

{

intsnum,i,j,m=0;

charch[2];

FILE*fp;

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)

{

printf("cannotopen\n");

return;

}

while(!

feof(fp))

if(fread(&stu[m],LEN,1,fp)==1)

m++;

fclose(fp);

if(m==0)

{

printf("norecord!

\n");

return;

}

printf("pleaseinputthenumber:

");

scanf("%d",&snum);

for(i=0;i

if(snum=stu[i].num)

break;

printf("findthestudent,delete?

(y/n)");

scanf("%s",ch);

if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0)

for(j=i;j

stu[j]=stu[j+1];

m--;

if((fp=fopen("d:

\\data.txt","wb"))==NULL)

{

printf("cannotopen\n");

return;

}

for(j=0;j

if(fwrite(&stu[j],LEN,1,fp)!

=1)/*将更改后的记录重新写入指定的磁盘文件中*/

{

printf("cannotsave!

\n");

getch();

}

fclose(fp);

printf("deletesuccessfully!

\n");

}

voidinsert()/*自定义插入函数*/

{

inti,j,k,snum,m=0;

FILE*fp;

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)

{

printf("cannotopen\n");

return;

}

while(!

feof(fp))

if(fread(&stu[m],LEN,1,fp)==1)

m++;

if(m==0)

{

printf("norecord!

\n");

fclose(fp);

return;

}

printf("pleaseinputthepositionwhereyouwanttoinsert!

\n");

scanf("%d",&snum);/*输入要插入的位置*/

for(i=0;i

if(snum==stu[i].num)

break;

for(j=m-1;j>i;j--)

stu[j+1]=stu[j];/*从最后一条记录开始均向后移一位*/

printf("pleaseinputthenewinformation:

\n");

printf("number:

");

scanf("%d",&stu[i+1].num);

for(k=0;k

if(stu[k].num==stu[i+1].num&&k!

=i+1)

{

printf("thenumberisexisting,pressanytocontinue!

");

getch();

fclose(fp);

return;

}

printf("pleaseinputpercentum:

");

printf("\nelective:

");

scanf("%f",&Felec);

printf("\nexperiment:

");

scanf("%f",&Fexpe);

printf("\nrequiredcourse:

");

scanf("%f",&Frequ);

printf("name:

\n");

scanf("%s",&stu[i+1].name);

printf("\nelective:

");

scanf("%lf",&stu[i+1].elec);

printf("\nexperiment:

");

scanf("%lf",&stu[i+1].expe);

printf("\nrequiredcourse:

");

scanf("%lf",&stu[i+1].requ);

stu[i+1].sum=stu[i+1].elec*Felec+stu[i+1].expe*Fexpe+stu[i+1].requ*Frequ;/*计算总成绩*/

if((fp=fopen("d:

\\data.txt","wb"))==NULL)

{

printf("cannotopen\n");

return;

}

for(k=0;k<=m;k++)

if(fwrite(&stu[k],LEN,1,fp)!

=1)/*将修改后的记录写入磁盘中*/

{

printf("cannotsave!

");

getch();

}

fclose(fp);

}

 

voidsort()/*自定义排名函数*/

{

structstudenttemp;

FILE*fp;

inti,j,m=0;

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)/*判断文件是否打开成功*/

{

printf("cannotopen\n");

return;

}

while(!

feof(fp))

if(fread(&stu[m],LEN,1,fp)==1)

m++;/*统计学生个数*/

if(m==0)

{

printf("norecord!

\n");

fclose(fp);

return;

}

for(i=0;i

for(j=i+1;j

if(stu[j].sum>stu[i].sum)

{

temp=stu[i];

stu[i]=stu[j];

stu[j]=temp;

}

for(i=0;i

if(fwrite(&stu[i],LEN,1,fp)!

=1)

{

printf("cannotsave!

");

getch();

return;

}

fclose(fp);

}

价格便宜些□服务热情周到□店面装饰有个性□商品新颖多样□

voidtotal()/*自定义统计学生人数函数*/

{

上海市劳动和社会保障局所辖的“促进就业基金”,还专门为大学生创业提供担保,贷款最高上限达到5万元。

FILE*fp;

大学生对手工艺制作兴趣的调研intm=0;

if((fp=fopen("d:

\\data.txt","ab+"))==NULL)/*判断文件是否打开成功*/

{

printf("cannotopen\n");

成功秘诀:

好市口+个性经营return;

}

while(!

feof(fp))

(一)上海的经济环境对饰品消费的影响if(fread(&stu[m],LEN,1,fp)==1)

(一)上海的经济环境对饰品消费的影响m++;/*统计学生个数*/

if(m==0)

{

printf("norecord!

\n");

附件

(二):

调查问卷设计fclose(fp);

return;

(2)缺乏经营经验}

还有一点就是beadwork公司在“碧芝自制饰品店”内设立了一个完全的弹性价格空间:

选择饰珠的种类和多少是由顾客自己掌握,所以消费者可以根据自己的消费能力进行取舍;此外由于是顾客自己制作,所以从原料到成品的附加值就可以自己享用。

printf("theclassare%dstudents!

\n");/*将统计的个数输出*/

fclose(fp);

1996年“碧芝自制饰品店”在迪美购物中心开张,这里地理位置十分优越,交通四通八达,由于位于市中心,汇集了来自各地的游客和时尚人群,不用担心客流量的问题。

迪美有300多家商铺,不包括柜台,现在这个商铺的位置还是比较合适的,位于中心地带,左边出口的自动扶梯直接通向地面,从正对着的旋转式楼梯阶而上就是人民广场中央,周边4、5条地下通道都交汇于此,从自家店铺门口经过的90%的顾客会因为好奇而进去看一下。

}

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

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1