c语言课程设计论文Word文档下载推荐.docx

上传人:b****6 文档编号:17764684 上传时间:2022-12-09 格式:DOCX 页数:22 大小:75.15KB
下载 相关 举报
c语言课程设计论文Word文档下载推荐.docx_第1页
第1页 / 共22页
c语言课程设计论文Word文档下载推荐.docx_第2页
第2页 / 共22页
c语言课程设计论文Word文档下载推荐.docx_第3页
第3页 / 共22页
c语言课程设计论文Word文档下载推荐.docx_第4页
第4页 / 共22页
c语言课程设计论文Word文档下载推荐.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

c语言课程设计论文Word文档下载推荐.docx

《c语言课程设计论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c语言课程设计论文Word文档下载推荐.docx(22页珍藏版)》请在冰豆网上搜索。

c语言课程设计论文Word文档下载推荐.docx

voidprintall()

显示所有已经存入学生的成绩等信息

4

voidsearch()

根据姓名或者学号查询学生分数

5

voidjgsearch()

根据成绩查询对应的同学

6

voiddel()

删除学生信息

7

voidmodify()

修改学生信息

8

system(“cls”);

清屏

部分功能设计

1.删除学生的信息,输入学生的学号进行删除操作,如果没有此人,系统将会提示无此人,如果找到,系统将会确认你是否需要删除,流程图如1-2所示。

 

图1-2删除学生信息流程图

2.输入学号进行查询对应同学的成绩,流程图如图1-3所示。

图1-3查询功能流程图

3系统实现源程序

主函数设计

voidmain()

{

intx;

system("

cls"

);

/*清屏*/

do

{

printf("

\n欢迎使用学生成绩信息管理系统\n\n\n\n\n"

1---------添加学生信息\n\n"

2---------显示所有学生成绩信息\n\n"

3---------学号或姓名查询\n\n"

4---------成绩查询\n\n"

5---------删除学生成绩信息\n\n"

6---------修改学生成绩信息\n\n"

0---------退出"

请您选择:

"

choice:

scanf("

%d"

&

x);

switch(x)

{

case1:

add();

break;

case2:

printall();

case3:

search();

case4:

jgsearch();

case5:

del();

case6:

modify();

case0:

default:

printf("

\n错误的选择,请重新选择:

gotochoice;

}

}

while(x!

=0);

printf("

\n\n欢迎再次使用学生成绩管理系统\n"

}

添加学生信息

/*学生成绩信息管理系统*/

#include<

>

intc,j,t;

structstu/*定义结构体类型*/

charname[10];

charnum[10];

charscore[10];

student[100],

newstudent[100];

/*添加学生个人信息*/

voidaddnew()

{inta,b,k;

FILE*fp,*fp1,*fp2;

/*FILE类型指针变量的定义形式*/

for(a=0;

a<

200;

a++)

欢迎使用学生成绩管理系统\n\n\n"

录入学生信息\n\n"

输入学生姓名:

scanf("

%s"

student[a].name);

输入学生学号:

student[a].num);

输入学生成绩:

student[a].score);

输入‘1’继续,‘0’结束\n"

/*判断输入是否结束*/

b);

if(b==0)

c=a;

system("

break;

if((fp1=fopen("

"

w"

))==NULL)/*文件名,使用文件方式*/

{printf("

信息写入失败"

exit(0);

if((fp2=fopen("

))==NULL)

if((fp=fopen("

j=sizeof(structstu);

=c;

{if(fwrite(&

student[a],j,1,fp)!

=1)

存入失败!

{if(strcmp(student[a].score,"

80"

)==0)

{fwrite(&

student[a],j,1,fp1);

else

student[a],j,1,fp2);

添加成功!

\n\n"

请输入'

0'

返回\n"

scanf("

k);

fclose(fp1);

fclose(fp2);

fclose(fp);

if(k==0)

system("

/*继续添加成员*/

inta,b,k,p,q;

charwjm[20];

FILE*fp;

j=sizeof(structstu);

欢迎使用学生成绩信息管理系统\n\n\n"

\n\n存储文件名有\n\n"

请输入想继续添加的文件名:

wjm);

for(a=0;

newstudent[a].name);

newstudent[a].num);

newstudent[a].score);

ame,newstudent[q].name);

strcpy(student[p].num,newstudent[q].num);

strcpy(student[p].score,newstudent[q].score);

if((fp=fopen(wjm,"

文件打开失败!

exit(0);

=t+c;

{if(fwrite(&

fclose(fp);

if(k==0)

voidadd()

{intx;

添加学生信息\n\n"

1重新添加信息\n"

2继续添加信息\n"

0返回\n\n\n"

请选择:

switch(x)

case1:

addnew();

case2:

addold();

case0:

default:

/*显示所有学生的成绩*/

voidprintall()

inta,b;

FILE*fp,*fp1,*fp2;

全部已录入学生信息\n\n"

%-10s%-20s%-50s\n"

姓名"

学号"

成绩"

if((fp=fopen("

r"

))==NULL)

{printf("

\n打开失败"

exit(0);

if((fp1=fopen("

if((fp2=fopen("

a=0;

while(!

feof(fp))

{if(fread(&

student[a],j,1,fp)==1)

student[a].name,student[a].num,student[a].score);

a++;

feof(fp1))

student[a],j,1,fp1)==1)

feof(fp2))

student[a],j,1,fp2)==1)

fclose(fp1);

fclose(fp2);

返回上级请输入‘0’!

\n:

if(b==0)

姓名学号查询

intk,b,a;

charcx[20];

查找已录入学生成绩信息\n\n"

k=0;

if((fp=fopen("

))==NULL)

printf("

\n打开失败!

exit(0);

}

请输入学号或姓名:

\n"

cx);

if((cx[0]<

'

)||(cx[0]>

9'

))

{a=0;

while(!

{fread(&

student[a],j,1,fp);

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

\n\n已查到,该记录为:

k=1;

a++;

if('

<

=cx[0]<

='

if(strcmp(student[a].num,cx)==0)

if(!

k)

\n文件中无此人的记录。

fclose(fp);

\n输入“1”继续查找,“0”结束\n"

while(b!

成绩查询

{intb,a;

charcx[20];

FILE*fp;

do

查找学生成绩信息\n\n"

请输入学生成绩:

fread(&

if(strcmp(cx,student[a].score)==0)

{printf("

while(b!

删除学生成绩信息

intm=0,k=0,b,a,q,p;

charxh[20],wjm[20];

删除学生成绩信息\n\n"

\n请输入学号:

xh);

\n请输入欲删除的文件名:

if((fp=fopen(wjm,"

\n文件打开失败!

a=0;

fread(&

um)==0)

{k=1;

break;

}

if(a==t)

printf("

\n\n文件中无此人的记录。

if(k==1)

%-10s%-20s%-50s"

\n确实要删除记录,请按1;

不删除记录,请按0:

scanf("

m);

if(m)

{

for(p=a,q=a+1;

p<

t,q<

=t;

q++,p++)

{

strcpy(student[p].name,student[q].name);

strcpy(student[p].num,student[q].num);

strcpy(student[p].score,student[q].score);

}

for(a=0;

t;

fwrite(&

if(m)

\n删除成功!

\n输入“1”继续,“0”结束\n"

修改学生成绩信息

intk=0,b,a;

修改学生成绩信息\n\n"

\n请输入欲修改文件名:

r+"

t=a-1;

if(strcmp(xh,student[a].num)==0)

k=1;

break;

\n请输入新的姓名:

student[a].name);

\n请输入新的学号:

student[a].num);

\n请输入新的成绩:

student[a].score);

if((fp=fopen(wjm,"

exit(0);

for(a=0;

fwrite(&

\n修改成功!

fclose(fp);

4功能测试

菜单测试

学生成绩管理系统运行后的主菜单界面如图4-1所示。

图4-1系统主界面

系统功能测试

1.添加学生信息

在主菜单按1后,会显示图4-2,再按2添加学生的信息如图4-3所示,如果按1的话那么所有以前的保存的信息都将被清除,接着再重新输入数据。

图4-2学生信息输入界面

图4-3学生信息输入界面

2.显示所有学生成绩信息

在系统菜单上面按2,则所有的学生成绩都会显示如图4-4所示。

图4-4学生成绩浏览

3.学号或姓名查询

在主菜单上输入3,然后在根据姓名或者学号,可以查到该同学的分数,如图4-5和4-6图所示。

图4-5根据学号查询分数

图4-6根据姓名查询分数

4.成绩查询

在主菜单上输入4,可以得到图4-7所示,这是根据分数来确定学生。

图4-7根据分数来确定学生

5.删除学生成绩信息

在主菜单上按5,选择需要删除的对应文档里的该学生的成绩信息,可以得到图4-8所示。

图4-8删除学生信息

6.修改学生的信息

在主菜

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

当前位置:首页 > 自然科学 > 天文地理

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

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