c语言课程设计报告

时间:2024.4.21

C语言程序设计

课程设计

学生姓名:                               

 学  号:                             

系  (院):                         

专    业:                      

设计(论文)题目:        学生选课系统管理       

完成日期:              20##年6月              

指导教师:                                


目录

一、实验目的

二、实验内容

三、总体设计

四、详细设计

五、运行结果

六、课程设计体会

一、实验目的:

1.      通过课程设计,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。

2.      通过课程设计,进一步掌握C有并重要的数据结构。掌握并熟练运用指针、链表、结构体、文件等数据结构。

3.      通过课程设计,提高程序开发能力,能运用合理的控制流编写清晰高效的程序。

4.      通过课程设计,培养C语言知识运用和自学能力,真正的把课堂上获得的知识运用起来,培养自己对程序编写的兴趣,并能独立设计和实现一个中小型系统。

5.     通过课程设计,加强了自己的程序分析能力。

二、实验内容:

学生选修课程系统设计

假定有n门课程,每门课程有课程编号、课程名称、课程性质、总学时、授课学时、实验或上机学时、学分、开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。

1、要求:

试设计一个选修课程系统,使之能提供以下功能:

(1)   系统以菜单方式工作。

(2)   课程信息和学生选课信息输入功能(课程信息用文件保存)——入。

(3)   课程信息浏览功能——输出。

(4)   查询功能(至少一种查询方式)——算法。

(5)   按学分查询。

(6)某门课程学生选修情况(可选项)。

2、分析:

      由于题目要求将学生的选课信息用结构体形式输入,并写入文件中,所以应提供文件的输入输出等操作:在过程中需有浏览、插入、修改、查找、删除学生选课信息等操作,顾应分别建立个功能模块;另外还应提供键盘式选择菜单实现程序运行。

3、总体设计:

根据题目要求,可以将系统分为六个模块:

1)       系统以菜单方式工作模块;

2)       课程信息与学生选课信息录入功能模块;

3)       课程信息浏览功能模块;

4)       查询模块;

5)       按学分查询模块;

6)       某些课程学生选修情况模块。

三、总体设计

  1。本系统的功能如图一所示

功能:调用各个主要模块,实现选课系统的整体功能。

2.输入函数   

功能:提供用户输入窗口,用户输入数据,用数据文件的形式保存所有的课程信息。

3.显示函数 

功能:提供用户输入窗口,显示用户输入系部的全部课程信息。

4  查询函数  

功能:显示满足用户输入学分的所有课程信息;

5  查询函数  

功能:显示满足用户输入课程性质的所有课程信息;

6  查询函数 

功能:显示用户输入课程名的所有课程信息;

7  选课函数  

功能:提供选课界面供学生选课,用文件保存学生输入的信息;

四、详细设计

如图2为选择模块图

功能:提供选课界面供学生选课,用文件保存学生输入的信息

{

int courseCode;                 //课程编号

       char courseName[20];           //课程名称

       char courseType[10];           //课程性质

       int totalperiod;               //总学时

       int classperiod;               //授课学时

       int experiperiod;               //实验或上机学时

       float creditHour;     //学分

       int term;                //开课学期

       struct subjects *next;//next是指针变量,指向结构体变量,链表

}SUB;

录入课程信息:

SUB *create_form()          //创建链表

{

       SUB *head,*tail,*p;//定义结构体指针变量

       int courseCode,totalperiod,classperiod;

       int experiperiod,term;

       float creditHour;

       char courseName[20],courseType[10];

       int size=sizeof(SUB);

       head=tail=NULL;//将空地址赋给头指针,链表中无结点

       printf("输入选修课程信息:\n");

       

}

查询方式:

 switch(a)//多分支选择语句

   {

              case 1:printf("请输入要查找的课程的名称:");

                     scanf("%s",min);

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

                     for(ptr=head;ptr;ptr=ptr->next)

                            if(strcmp(min,ptr->courseName)==0)//比较查找课程和结构体成员编号是否相同

                                    t=0;//如果相同,输出课程信息

                     if(t)

                            printf("\t\n未找到!\n");

                     t=1;

                     system("pause");

                     goto L1;//指定跳转到l1,程序将处理从下一行开始的命令

                           

          case 2:printf("请输入要查找的课程的性质:");

                 scanf("%s",type);

                             for(ptr=head;ptr;ptr=ptr->next)

                        if(strcmp(type,ptr->courseType)==0)

                            {

                                    printf("%5d%12s%9s%9d%9d%11d%11.6f%7d\n",ptr->courseCode,ptr->courseName,ptr->courseType,ptr->totalperiod,ptr->classperiod,ptr->experiperiod,ptr->creditHour,ptr->term);

                                    t=0;

                            }

                     if(t)

                            printf("\t\n未找到!\n");

                     t=1;

                     system("pause");

                     goto L1;

 

         case 3:printf("输入要查找的课程的学分:");

                 scanf("%d",&courseCode);

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

                 for(ptr=head;ptr;ptr=ptr->next)

                        if(ptr->creditHour==courseCode)

                            {

printf("%5d%12s%9s%9d%9d%11d%11.6f%7d\n",ptr->courseCode,ptr->courseName,ptr->courseType,ptr->totalperiod,ptr->classperiod,ptr->experiperiod,ptr->creditHour,ptr->term);

                                    t=0;

                            }

                     if(t)

                            printf("\n\t未找到!\n");

                     t=1;

                     system("pause");

                     goto L1;

                    

              case 4:break;

       }

}

 

返回主菜单

五、运行结果:

六、课程设计体会:

回顾起此次课程设计,至今我仍感慨颇多,的确,在这些日子,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。虽然我的这个课程设计有很多缺陷,但是我以后会一直改进直到它能比较完善的工作。以后我会更努力的学习c语言。


第二篇:C语言课程设计报告模版


C程序设计课程设计报告

C语言课程设计报告模版

(页面设置:A4纸,上下左右边距2.5厘米2.5厘米3厘米1.5厘米,页眉页脚均1.7厘米)

题目

(居中小二号黑体)

作者

(与题目空一行,作者之间空两个全角空格,居中小四号宋体)

作者班级学号

(不同作者的班级学号之间用逗号隔开,居中五号宋体,下空2行)

一 课题分析

(序号与文字之间空1个全角空格,居中小三号黑体,下主标题同此)

1.1 设计要求(顶格,四号黑体,序号与文字之间空1个半角空格,所有子标题同此) 装

线 正文(首行缩进两个全角空格,小四号宋体,段前段后0行,1.5倍行距,下面所有正文同此) 1.1.1 ☆☆☆(顶格、四号黑体,如果需要下一级子标题按照此规律设置) 正文 1.1.2 ☆☆☆ 正文

1.2 实现功能

C程序设计课程设计报告

(一级层次之间空2行)

二 整体设计(居中、小三号、黑体)

2.1框架设计(顶格、四号黑体)

正文(首行缩进两个全角空格,小四号宋体)

2.2 功能设计(顶格、四号黑体,如果需要可按照此形式继续扩充,名称自拟)

正文(首行缩进两个全角空格,小四号宋体)

表1

C语言课程设计报告模版

C语言课程设计报告模版

装 订 线

(表与正文空一行)

三 详细设计(居中、小三号、黑体)

3.1 ☆☆☆(顶格、四号黑体) 3.2 ☆☆☆(顶格、四号黑体)

四 总结(居中、小三号、黑体)

参考文献(标题顶格、四号黑体,与上空2行;正文五号宋体,顶格)

文献是期刊时,书写格式为:

C程序设计课程设计报告

[编号] 作者.文章题目.期刊名(外文可缩写),年份,卷号,期号:起~止页码

文献是图书时,书写格式为:

[编号] 作者.书名(译音). 出版地:出版单位,出版年,起~止页码

文献是网页时,书写格式为:

[编号] 网站名称.资料名称.URL地址.时间

以上,编号用中扩号内阿拉伯数字排序。作者只写到第三位,余者写“等”,英文作者超过3人写“et al”(斜体)。如果需要两行的,第二行文字要位于编号的后边,与第一行文字对齐。中文的用五号宋体,外文的用五号Times New Roman字体。

附 录

(另起一页,居中小三号黑体,“附录”两字中间空两个全角空格)

(源程序代码,小五号Times New Roman字体,单倍行距)

说明:

1. 课题分析部分:主要写课题的目的、背景、意义,以及预期要达到的功

能、效果等。

2. 整体设计部分:可以按照课题的实现功能或组成框架等方面,写课题是

怎样设计实现的。

3. 详细设计部分:按照各功能的实现,从算法、程序等方面详细介绍。

4. 总结部分:程序的最终实现的效果描述,包括优点和不足之处。

5. 附录部分:程序的源程序代码。

更多相关推荐:
《C语言程序设计》课程设计报告(小组)

东莞理工学院《C语言程序设计》课程设计题目:图书信息管理系统院系:电子工程学院专业:电子信息工程年级:20##班别:2班指导教师:##组长:##同组成员:##目录一、目的....................…

C语言课程设计报告

河南理工大学计算机科学与技术学院课程设计报告20XX20XX学年第一学期课程名称C语言课程设计设计题目《小学算术运算测试》学生姓名学号专业班级计算机07-2班指导教师20XX年9月12日目录1.设计任务书21.…

C语言课程设计报告范例

C语言课程设计报告设计题目专业班级学号姓名任课老师时间目录一课程设计题目及所涉及知识点二课程设计思路及设计流程图三课程设计中遇到的难点及解决办法四小结五附录原程序2一课程设计题目及所涉及知识点一课程设计题目1基...

厦门理工学院11级C语言C语言程序设计课程设计报告

C语言程序设计课程设计报告20xx20xx学年第1学期题目专业班级姓名学号指导教师成绩计算机科学与技术系20xx年12月31日目录一课程设计的目的与要求1二方案实现与调试221掷骰子游戏222射击游戏323汽车...

C语言程序设计课程设计报告

C语言程序设计课程设计报告20xx20xx学年第1学期专业计算机科学与技术班级姓名学号指导教师成绩计算机科学与技术系20xx年12月31日目录一课程设计的目的与要求3二方案实现与调试321掷骰子游戏322汽车加...

c语言程序贪吃蛇课程设计报告

山东工商学院信电学院自动111班第一组贪吃蛇课程设计报告高级语言程序设计课程设计报告ExperimentDesigningreporter课程名称高级语言程序设计英文名称CProgramExperimentDe...

C语言课程信息管理系统课程设计报告

《C语言程序设计》课程设计报告专业:班级:姓名:指导教师:二零##年十二月二十六日目录一、设计题目2二、设计目的2三、设计内容23.1需求分析23.2概要设计33.3详细设计63.5编写过程中遇到的问题及解决办…

c语言课程设计报告书

C语言课程设计报告题目院系组别成员指导老师20xx年月日114目录一课程设计题目3二课程设计要求3三数据结构设计描述31问题描述32设计思想33涉及数据结构知识34各变量的定义和作用35功能模块详细设计3四程序...

C语言课程设计报告

C语言课程设计参考例例子职工信息管理系统1用户分析11用户目的设计一个职工信息管理系统使之能提供以下功能1录入职工信息2显示职工信息3查询职工信息4修改职工信息5删除职工信息14用户需求职工信息包括职工号姓名性...

c语言课程设计报告-西安邮电大学

西安郵電大學C语言课程设计报告书学院名称:计算机学院学生姓名:专业名称:班级:学号:指导教师:时间:20XX年06月03日至20XX年06月12日实验题目:学生通讯录管理系统一、实验目的通过本次实习,进一步巩固…

C语言课程设计报告

1前言设计一个算法求出两个序列的所有LCS分析最坏情况用会计方法证明利用bij求出所有LCS的算法在最坏情况下的需求分析根据最长公共子序列问题的性质即经过分解后的子问题具有高度重复性并且具有最优子结构性质采用动...

C语言课程设计报告示例

课程设计报告课程学号姓名班级教师时间计算机科学与技术系

c语言程序设计课程设计报告(34篇)