C语言学生选修课程系统设计

  • 格式:doc
  • 大小:214.50 KB
  • 文档页数:22

下载文档原格式

  / 22
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《高级语言程序设计》课程设计

说明书

设计题目:学生选修课程系统设计

目录

1.设计目的…………………….p2

2 .总体设计……………………p3

3.详细设计…………………….p4

4.调试与测试………………….p5

5.源程序清单与执行结果…….p6

6.建议和体会………………….p21

一.设计目的

(1)基本掌握面向过程程序设计的基本思路和方法;

(2)达到熟练掌握C语言的基本知识和技能;

(3)能够利用所学的基本知识和技能,解决简单的程序设计问题

程序功能:

(1)输入信息,密码保护

(2)浏览信息

(3)查询信息,提供两种查询方式

(4)统计选课情况

(5)进入选课操作

(6)退出选课系统

二.总体设计

设计的流程图如下

三、详细设计

1、输入初始的课程信息:课程信息用文件保存,包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等相关信息。在输入课程信息前要先输入管理员密码,从而限制权限;

2、浏览模块:按照指示就可以找到课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等相关信息;

3、查询模块:按照指示可以选择通过学分查询信息,或者选择课程性质来查询信息;

4、选择模块:通过输入学号和课程编号来选择所修课程,并有统计功能;

5、查阅模块:选择主菜单的选项,可以了解统计所选课程的人数;

6、退出模块:在主菜单选择“0”退出选课系统。

四:调试与测试

问题一、查询模块:

其中包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等相关信息;当输入学分或者课程性质后,系统进行判断时,提示“输入错误!请重新输入!”

解决办法及步骤:

1、浏览所有课程中的学分是否为你所输入的值。

2、浏览所有课程中的课程性质是否有存在你所输入的值。

3、输出用于循环检查语句中的课程,发现乱码。

4、仔细分析乱码的原因,最后发现是变量的类型错误,错将课程性

质的结构体指针变量定义为了其他类型的指针变量。

问题二、选择模块:

从主菜单进入选课系统,通过输入学号和课程编号来选择所修课程。当输入选择信息时,系统却提示“输入错误!请重新输入!”

解决办法及步骤:

1、检查所编写的程序代码是否完全正确,若不是,则改之,然后再继续正确输入选择信息,

2、检查当我们在输入选择信息时,看是否我们输入的信息有误,若是这样的话,我们应当仔细输入选择信息。

五.源程序清单与执行结果

#include<>

#include<>

#include <>

struct course

{

int num;

char name[20]; char kind[10]; int time;

int ttime;

int etime;

int mark;

int term;

};

struct student

{

int snum;

int cnum;

char cname[20]; };

/*课程信息录入*/ void insert()

{

void main();

FILE *fp;

struct course c;

int count,secret=;

int i,secret1;

system("color 1f");

if((fp=fopen("E:\\","a+"))==NULL)

{

printf("cannot open file\n");

}

printf("请输入系统密码:");

scanf("%d",&secret1);

if(secret==secret1)

{

printf("\n密码正确,请输入课程门数:\n");

scanf("%d",&count);

printf("课程编号课程名称课程性质总学时授课学时实验或上机学时学分开课学期:\n");

for(i=0;i

{

scanf("%d %s %s %d %d %d %d %d",&,&,&,&,&,&,&,&;

fprintf(fp,"%d %s %s %d %d %d %d %d\n",,,,,,,,;

}

}

else

printf("抱歉,密码错误,您无此权限\n");

fclose(fp);

main();

}

/*课程信息浏览*/

void browser()

{

void main();

FILE *fp;

struct course c;

int a;

system("color 3f");

if((fp=fopen("E:\\","r"))==NULL)

{

printf("\nCannot open course!\n");

}

printf("课程编号课程名称课程性质总学时授课学时实验或上机学时学分开课学期:\n");

for(;!feof(fp);)

{

fscanf(fp,"%d %s %s %d %d %d %d %d\n",&,&,&,&,&,&,&,&;