课程设计选题管理程序Word格式.docx

上传人:b****1 文档编号:1035194 上传时间:2023-04-30 格式:DOCX 页数:16 大小:96.60KB
下载 相关 举报
课程设计选题管理程序Word格式.docx_第1页
第1页 / 共16页
课程设计选题管理程序Word格式.docx_第2页
第2页 / 共16页
课程设计选题管理程序Word格式.docx_第3页
第3页 / 共16页
课程设计选题管理程序Word格式.docx_第4页
第4页 / 共16页
课程设计选题管理程序Word格式.docx_第5页
第5页 / 共16页
课程设计选题管理程序Word格式.docx_第6页
第6页 / 共16页
课程设计选题管理程序Word格式.docx_第7页
第7页 / 共16页
课程设计选题管理程序Word格式.docx_第8页
第8页 / 共16页
课程设计选题管理程序Word格式.docx_第9页
第9页 / 共16页
课程设计选题管理程序Word格式.docx_第10页
第10页 / 共16页
课程设计选题管理程序Word格式.docx_第11页
第11页 / 共16页
课程设计选题管理程序Word格式.docx_第12页
第12页 / 共16页
课程设计选题管理程序Word格式.docx_第13页
第13页 / 共16页
课程设计选题管理程序Word格式.docx_第14页
第14页 / 共16页
课程设计选题管理程序Word格式.docx_第15页
第15页 / 共16页
课程设计选题管理程序Word格式.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

课程设计选题管理程序Word格式.docx

《课程设计选题管理程序Word格式.docx》由会员分享,可在线阅读,更多相关《课程设计选题管理程序Word格式.docx(16页珍藏版)》请在冰点文库上搜索。

课程设计选题管理程序Word格式.docx

typedefstructdesign

charname[10];

//课程设计名称

intdesID;

//课程设计代号

charinfo[20];

//相关信息

structdesign*next;

}design,*ptrdesign;

3.算法设计

3.1登陆系统

3.1.1主界面

#include"

stdio.h"

structFile.h"

function.h"

InitFunction.h"

voidmain()

{

inti;

students;

designd;

s.next=NULL;

d.next=NULL;

Init(&

s,&

d);

while

(1)

{

i=Welcome();

//程序结束再进行保存

if(i==5)

{

Save(&

break;

}

switch(i)

case1:

Student(&

break;

case2:

Teacher(&

case3:

InitDesign(&

case4:

InitStudent(&

default:

printf("

请按照提示编号进行输入^\n"

);

}

}

3.1.2操作提示

intWelcome()

intinput;

printf("

————————————————————\n"

***********欢迎进入选课系统**************\n"

-----------------------------------------\n"

|\t\t1.学生登录\t\t|\n"

);

|\t\t2.教师登录\t\t|\n"

|\t\t3.录入课程信息\t\t|\n"

|\t\t4.录入学生数据\t\t|\n"

|\t\t5.退出系统\t|\n"

输入所属类别:

"

scanf("

%d"

&

input);

returninput;

3.2学生登录、选课、查询

voidStudent(ptrstustu,ptrdesigndes)

charid[10];

ptrstus;

进入学生系统...\n"

输入您的学号:

%s"

id);

s=SearchStudent(stu,id);

if(s==NULL)

printf("

学生你好,你输入的学号并不存在,即将退出...\n"

else

ChooseDesign(s,des);

//学生选课

intChooseDesign(ptrstustu,ptrdesigndes)

ptrdesignp=des->

next;

charc;

进入学生系统成功:

您的信息如下:

\n"

InfoStudent(stu);

\n所有供你选择的科目如下:

while(p->

next!

=NULL)

InfoDesign(p);

p=p->

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n"

if(stu->

status==0)

目前尚未进行选课,输入课程编号选择兴趣课程,不进行选择请按0:

elseif(stu->

status==1)

printf("

当前选课为:

%d,如需修改请输入新的编号,不进行选择请按0\n"

stu->

Ondesign);

status==2){

getchar();

选课已被老师确认^按任意键退出功能"

getchar();

return1;

}

while

(1){

c);

//判断选择结果

if(c==0){

退出课程选择...\n"

break;

//未找到课程

if(!

SearchDesign(des,c))

并未找到输入编号的课程...请重新确认.\n"

//return1;

//更新状态

else

选择课程%d\n正在修改您的信息\n退出\n"

c);

stu->

Ondesign=c;

status=1;

++++++++++++++++++++++++++++++++++++++++++++++\n"

3.3教师管理

voidTeacher(ptrstustu,ptrdesigndes)

charinputc;

charin[10];

*************进入教师系统**************\n"

|\t\t1.学生信息查询\t|\n"

|\t\t2.课程信息查询\t|\n"

if(2==input)

while(p->

InfoDesign(p);

p=p->

按任意键返回主菜单:

getchar();

if(1==input)

/*printf("

请输入要查询学生的学号,退出请输入exit,输入ALL进行全体学生搜索:

scanf("

in);

if(strcmp(in,"

exit"

)==0)

break;

ALL"

{

s=stu->

while(s)

{

InfoStudent(s);

s=s->

printf("

*/

请输入要查询学生的学号:

scanf("

s=SearchStudent(stu,in);

if(s==NULL){

学号输入有误\n"

continue;

p=SearchDesign(des,s->

InfoStudent(s);

\n是否选定该生课程设计状态?

Y/N"

%c"

inputc);

if('

Y'

==inputc||'

y'

==inputc)

s->

status=2;

3.4导入学生信息

voidInitStudent(ptrstustu,ptrdesigndes)

charnum[10];

ptrstus=stu,p=stu;

intchoose;

while

(1)

{

输入学号,如果学号已存在则为修改,输入exit退出:

scanf("

num);

if(strcmp(num,"

)==0)

//循环结束则证明未找到学生

while(s)

{

if(s->

next==NULL)

p=s;

if(strcmp(s->

stuID,num)==0)

{

进入修改模式\n即将修改信息:

InfoStudent(s);

输入欲修改的项目:

1.姓名\n\t2.学号\nt\t3.年级\n\t4.所选课程\n\\n"

fflush(stdin);

choose);

进行修改:

num);

switch(choose)

case1:

strcpy(s->

name,num);

case2:

stuID,num);

case3:

grade,num);

case4:

ChooseDesign(s,des);

default:

输入有误,请验证"

}

修改结果为:

}//EndIF

s=s->

}//EndWhile

//未找到学生信息_添加

if(s==NULL){

static_stunum++;

s=(ptrstu)malloc(sizeof(student));

p->

next=s;

strcpy(s->

输入该生姓名:

s->

name);

//getchar();

输入该生年级:

grade);

s->

Ondesign=0;

status=0;

next=NULL;

s=p=stu;

}//EndWhile

3.5添加、修改课程设计

voidInitDesign(ptrdesigndes)

charname[20];

ptrdesigns=des,p=des;

intchoose,in;

while

(1)

输入课程设计名称,如果该课程设计已经存在,则进入修改,输入exit退出:

//fflush(stdin);

name);

if(strcmp(name,"

//循环结束则证明未找到课程

while(s)

name,name)==0)

\n进入修改模式\n信息如下:

InfoDesign(s);

\n输入欲修改的项目:

\n\t1.设计名称\n\t2.设计编号\n\t3.课程信息\n\n"

printf("

输入课程设计名称:

scanf("

strcpy(s->

name,name);

break;

输入课程编号:

in);

s->

desID=in;

输入课程信息:

info,name);

//未找到课程信息_添加

s=(ptrdesign)malloc(sizeof(design));

输入课程时间编号:

//fflush(stdin);

(s->

desID));

输入课程相关信息:

static_desnum++;

s=p=des;

4.程序实现及测试:

4.1登陆界面:

4.2登陆课程信息:

4.3进入教师系统:

4.4查询当前已经添加课程:

4.5查询学生状态:

5.结束语:

5.1不足之处:

课程设计及人员的添加与保存比较简易,2次添加出现错误,需要提高程序的实用性,对于错误输入考虑不足,健壮性较差。

5.2设计体会:

经历了这次设计,明白了虽然想着很简单的代码,实践起来由于不了解或者遗忘掉会面临许多困难,让我开始反思自己学的知识的透彻度很低,关于指针的问题再次深刻了自己的理解,对于程序=数据结构+算法的理解开始有了改变,了解到算法与代码之间的差距。

通过实验,亲自体验了在线性表与链表之间的选择,对于这两者的选择有了自己的认识。

完成这个系统面临着许多问题,虽然很艰难,但在使它成功运行的过程所学会的,让我更加深刻的理解了数据结构的意义,我加深了对数据结构的理解

参考文献:

1.谭浩强《C语言程序设计》清华大学出版社2005年7月

2.严蔚敏吴伟民《数据结构》清华大学出版社2001年1月

3.刘光然《数据结构实践训练教程》南开大学出版社2009年4月

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

当前位置:首页 > 成人教育 > 自考

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

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