课程设计说明书范本模板.docx
《课程设计说明书范本模板.docx》由会员分享,可在线阅读,更多相关《课程设计说明书范本模板.docx(28页珍藏版)》请在冰豆网上搜索。
课程设计说明书范本模板
邮电与信息工程学院
课程设计说明书
课题名称:
软件项目实训
学生学号:
6102040124
专业班级:
11测控01班
学生姓名:
徐晗
学生成绩:
指导教师:
陈希
课题工作时间:
2014-6—9至2014—6—22
一、课程设计任务的基本要求:
(1)课程设计目的:
1.全面理解程序的顺序结构、选择结构、循环结构,掌握结构化程序设计的自顶向下,逐步细化,模块化的设计原则.
2.掌握C语言基础知识,灵活应用函数、指针、数组、结构体等知识进行程序设计。
3.掌握利用C语言进行程序设计的方法和技巧,提高学生综合分析和调试程序的能力。
(2)课程设计总体要求:
1.采用模块化程序设计方法。
2.主菜单设计界面如下:
3.子菜单界面如下:
选择结构子菜单:
循环结构子菜单:
4.在对应模块下完成如下功能:
(1)单选择if语句:
(2)双选择if语句:
(3)多选择if语句:
(4)switch语句
(5)while循环语句
(6)do—while循环语句
(7)for循环语句
(8)循环嵌套
例如:
switch语句案例界面:
(3)论文部分
1、学生应提交的资料:
纸质《课程设计说明书》1份;课程设计报告1份.
2、课程设计报告的内容附在《课程设计说明书》后,内容包括:
一、设计目的
1.全面理解程序的顺序结构、选择结构、循环结构,掌握结构化程序设计的自顶而下,逐步细化,模块化的原则.
2.掌握C语言的基础知识,灵活应用函数、指针、数组、结构体等知识进行程序设计.
3。
掌握利用C语言进行程序设计的方法和技巧,提高学生综合分析和调试程序的能力。
二、系统功能模块图
(略)
三、设计函数列表
在C语言中每一个功能模块都对应一个函数,即由函数来实现各功能模块的具体功能,也就是建立功能模块与函数之间一一对应的关系,在编写程序时可以减少不必要的麻烦,从而提高编写程序的效率。
表一自定义函数表
模块名
函数名
说明
C语言模块化系统
main()
主控模块
显示主菜单
showmenu()
显示菜单
…(略)
四、程序代码(源程序清单:
按照上面表格的顺序书写上面的所有函数,注意缩进式书写格式)
(略)
五、编程及调试过程中遇到的主要问题及解决方法
(略)
六、设计心得体会
(略)
三、课程设计报告格式
1、课程设计(论文)报告要求用A4纸排版,单面打印,与《课程设计说明书》一起装订成册。
2、课程设计(论文)报告正文参考字数:
1000字左右
3、正文格式
①页边距:
上2。
5cm,下2。
5cm,左2。
5cm,右2cm,页眉1.5cm,页脚1.5cm,左侧装订;
②字体:
章标题,二号字、黑体、居中;节标题,三号、黑体;正文文字,小四号字、宋体;
指导教师签字:
年月日
二、进度安排:
1、系统设计
十七周:
上午8:
30—11:
30
下午2:
30-5:
00
2、撰写课程设计报告
十八周:
周一~周四
3、报告提交
十八周:
周五
三、应收集资料及主要参考文献:
1.谭浩强著,C++程序设计(第三版),北京:
清华大学出版社,2005
2。
谈浩强著。
C++程序设计。
北京:
清华大学出版社,2004。
3.谭浩强编著,C程序设计题解与上机指导(第三版),北京:
清华
大学出版社,2005
4。
C编写组编,常用C语言用法速查手册,龙门书局,1995
5。
SchildtH著,王曦若,李沛译,ANSIC标准详解,学苑
出版社,1994
四、课程设计摘要(中文):
C语言是一种很好的结构化程序设计语言;结构化程序设计方法可以概括为自顶向下、逐步求精、模块化、限制使用goto语句,将原来较为复杂的问题化简为一系列简单模块的设计。
一个程序的任何逻辑问题均可用顺序结构、选择结构和循环结构这三种基本结构来描述。
【关键词】:
C语言结构化程序设计顺序结构选择结构循环结构
五、课程设计摘要(英文):
AbstracttheClanguageisastructuredprogramminglanguagewell;structuredprogramdesignmethodcanbegeneralizedastop—down,stepwiserefinement,modularity,restrictionsontheuseofthegotostatement,thedesignoftheoriginalcomplexproblemissimplifiedtoaseriesofsimplemodules。
Anykindoflogicofaprogramareavailablesequencestructure,selectionofthesethreekindsofbasicstructureandcyclestructuretodescribe。
Keyword:
Clanguagestructuredprogrammingsequencestructureselectionstructureloopstructure
六、成绩评定:
指导教师评语:
指导教师签字:
年月日
项目
评价
项目
评价
调查论证
工作量、工作态度
实践能力
分析、解决问题能力
质量
创新
得分
七、答辩纪录:
答辩意见及答辩成绩
答辩小组教师(签字):
年月日
课程设计报告
一、设计目的
1。
全面理解程序的顺序结构、选择结构、循环结构,掌握结构化程序设计的自顶而下,逐步细化,模块化的原则。
2。
掌握C语言的基础知识,灵活应用函数、指针、数组、结构体等知识进行程序设计。
3.掌握利用C语言进行程序设计的方法和技巧,提高学生综合分析和调试程序的能力。
二、系统功能模块图
1.采用模块化程序设计方法
单选泽函数
双选择函数
选择函数
多选择函数
switch函数
主菜单函数
While循环
Do-while循环
循环函数
For循环
嵌套循环
2.主菜单设计界面如下:
3.子菜单界面如下:
选择结构子菜单:
循环结构子菜单:
4.在对应模块下完成如下功能:
(1)单选择if语句案例界面:
(2)双选择if语句案例界面:
(3)多选择if语句案例界面:
(4)switch语句案例界面:
(5)while循环语句案例界面:
(6)do—while循环语句案例界面:
(7)for循环语句案例界面:
(8)循环嵌套案例界面:
三、设计函数列表
在C语言中每一个功能模块都对应一个函数,即由函数来实现各功能模块的具体功能,也就是建立功能模块与函数之间一一对应的关系,在编写程序时可以减少不必要的麻烦,从而提高编写程序的效率.
表一自定义函数表
模块名
函数名
说明
主菜单
main()
显示主菜单
子菜单选择
显示选择子菜单
子菜单循环
显示循环子菜单
单选泽if
单选泽if模块
双选择if
双选择if模块
多选择if
多选择if模块
Switch选择
Switch选择模块
While循环
While循环模块
Do-while循环
Do-while循环模块
For循环
For循环模块
嵌套循环
嵌套循环模块
四、程序代码(源程序清单:
按照上面表格的顺序书写上面的所有函数,注意缩进式书写格式)
#include〈stdio.h>
voidmain()
{
voidprintstar();
voidprint_message();
voidprintsecond();
voidprint_m();
printstar();
print_message();
printstar();
printf("\n”);
printf("\n");
print_m();
}
voidprintstar()
{
printf(”****************************************************\n”);
}
voidprint_message()
{
printf("*欢迎进入C语言模块化案例系统*\n”);
printf(”*制作人:
徐晗*\n”);
printf("*设计日期:
2014年6月9日*\n”);
}
voidprint_m()
{
printf("****************************\n”);
printf(”*C语言模块化案例系统*\n");
printf(”*1。
选择结构*\n”);
printf(”*2.循环结构*\n");
printf(”*0。
退出系统*\n”);
printf(”****************************\n");
printf(”请选择相应模块编号(0—2):
”);
voidprint_xuan();
voidprint_xun();
inti;
scanf("%d”,&i);
switch(i)
{case0:
break;
case1:
print_xuan();break;
case2:
print_xun();break;
}
}
voidprint_xuan()
{
printf(”****************************\n");
printf(”*选择结构*\n”);
printf(”*1.单选择if语句*\n”);
printf(”*2.双选择if语句*\n”);
printf(”*3。
多选择if语句*\n”);
printf(”*4.switch语句*\n");
printf(”*0.返回系统*\n”);
printf(”****************************\n”);
printf(”请选择相应模块编号(0—4):
”);
voidone();
voidtwo();
voidthree();
voidfour();
intj;
scanf("%d”,&j);
switch(j)
{case0:
print_m();break;
case1:
one();break;
case2:
two();break;
case3:
three();break;
case4:
four();break;
}
}
voidone()
{
printstar();
printf(”*题目
(1):
单选择语句:
程序的功能是输入一个表*\n");
printf(”*达式x〉y,判断其真假,输入x,y的值,如果大于*\n");
printf(”*为真,则输出x,如果小于为假,则不输出*\n”);
printstar();
intx,y;
printf(”请输入x,y:
”);
scanf("%d,%d",&x,&y);
if(x〉y)
printf(”%d”,x);
printf("x=%d\n”,x);
print_xuan();
}
voidtwo()
{
printstar();
printf("*题目
(2):
双选择语句:
程序的功能是输入一个表*\n”);
printf(”*达式,如x>y,判断其真假,输入x,y的值,如果大*\n”);
printf("*于为真,则输出x,如果小于为假,则输出y*\n”);
printstar();
intx,y;
printf(”请输入x,y:
");
scanf(”%d,%d",&x,&y);
if(x>y)
printf(”max=%d\n”,x);
else
printf(”max=%d\n",y);
print_xuan();
}
voidthree()
{
printstar();
printf(”*题目(3):
多选择语句:
程序的功能是输入任一数*\n”);
printf("*值i,与500进行比较,若i〉500,cost=0.15,再继续*\n”);
printf(”*与300比较,若i>300,则cost=0.10,再与100比较,*\n");
printf(”*若i>100,则cost=0.075,若以上都不满足,则cost=0*\n");
printstar();
inti;
doublecost;
printf("请输入i:
”);
scanf("%d”,&i);
if(i〉500)cost=0.15;
elseif(i〉300)cost=0。
10;
elseif(i>100)cost=0。
075;
elsecost=0;
printf("i=%d,cost=%d\n”,i,cost);
print_xuan();
}
voidfour()
{
printstar();
printf("*题目(4):
switch语句:
程序的功能是输入一个*\n");
printf("*1-7之间的整数,输出相应的星期,如果是其他的*\n");
printf("*整数,则输出“数据错误!
",如输入1,*\n”);
printf(”*输出“星期一”,输入7,则输出“星期日"*\n");
printstar();
intx;
printf("请输入x:
");
scanf(”%d",&x);
switch(x)
{
case1:
printf(”星期一\n");break;
case2:
printf("星期二\n");break;
case3:
printf(”星期三\n");break;
case4:
printf("星期四\n");break;
case5:
printf("星期五\n");break;
case6:
printf(”星期六\n");break;
case7:
printf("星期日\n");break;
default:
printf("数据错误!
\n");break;
}
print_xuan();
}
voidprint_xun()
{
printf("****************************\n”);
printf("*循环结构*\n”);
printf(”*1.while循环语句*\n”);
printf("*2.do—whlie循环语句*\n");
printf("*3。
for循环语句*\n”);
printf(”*4。
循环嵌套*\n”);
printf(”*0。
返回系统*\n”);
printf(”****************************\n”);
printf(”请选择相应模块编号(0—4):
");
voidone_o();
voidtwo_t();
voidthree_t();
voidfour_f();
{intk;
scanf(”%d”,&k);
switch(k)
{case0:
print_m();break;
case1:
one_o();break;
case2:
two_t();break;
case3:
three_t();break;
case4:
four_f();break;
}
}
}
voidone_o()
{
printstar();
printf("*题目
(1):
whlie循环语句:
程序的功能是输入*\n”);
printf("*一个数a初值1,如果a<=100,则s=s+a,且a自加一,*\n”);
printf(”*再次检查a〈=100是否成立,若成立则继续执行*\n");
printf("*s=s+a,且a自加一。
直到a加到大于100为止。
*\n”);
printstar();
inta=1,s=0;
while(a<=100)
{
s=s+a;
a++;
}
printf("最后的结果是:
%d\n”,s);
print_xun();
}
voidtwo_t()
{
printstar();
printf("*题目
(2):
do-whlie循环语句:
程序的功能是输*\n”);
printf(”*入一个数a初值0,首先执行s=s+a,且a自加一,再*\n");
printf(”*判断a〈=100是否成立,若成立则继续执行s=s+a,*\n”);
printf(”*a自加一后判断a<=100是否成立。
直到a加到大于*\n”);
printf("*100时,不再进行。
*\n”);
printstar();
inta=0,s=0;
do
{
s=s+a;
a++;
}while(a〈=100);
printf("最后的结果是:
%d\n”,s);
print_xun();
}
voidthree_t()
{
printstar();
printf("*题目(3):
for循环语句:
程序的功能是输入三个*\n”);
printf(”*表达式i=0;i<=100;i++,首先判断i<=100是否成立*\n”);
printf(”*若成立则继续执行s=s+i,最后执行i++。
加一后再*\n”);
printf(”*判断i<=100是否成立,若成立继续执行s=s+i和i++*\n");
printf("*直到i加到大于100时,不再进行。
*\n");
printstar();
ints=0,i;
for(i=0;i〈=100;i++)
{
s=s+i;
}
printf(”最后的结果是:
%d\n",s);
print_xun();
}
voidfour_f()
{
printstar();
printf(”*题目(4):
循环嵌套:
程序的功能是首先定i=1,*\n");
printf(”*再判断i<=3是否成立,若成立则定义j=1,判断j〈=i*\n");
printf(”*是否成立,若成立则执行s=i+j。
j加一后,i再加一,*\n”);
printf("*直到i加到大于3时,不再进行。
*\n”);
printstar();
intx,y,s;
for(x=1;x〈=3;x++)
{
for(y=1;y〈=x;y++)
s=x+y;
printf("%d\n",s);
}
print_xun();
}
五、编程及调试过程中遇到的主要问题及解决方法
问题一:
编译错误
原因:
Printf的首字母大写
解决方法:
询问老师,将大写字母改为小写
问题二:
语法错误
原因:
Dowhile语句的花括号忘写
解决方法:
与同学讨论,补上花括号
六、设计心得体会
虽然在开学初我对C语言这门课并没有什么兴趣,觉得那些程序枯燥乏味,但在这次课程设计后我发现自己在一点一滴的努力中对C语言的兴趣也在逐渐增加。
这次C语言课程设计我们历时一个星期,对我来说学到的不仅是那些知识,更多的是耐心与细心,它不仅仅让我们综合那些理论知识来运用到设计和创新,更重要的是培养我们的耐心与细心.
在做本次课程设计的过程中,我感触最深的当属查阅大量的设计资料了。
为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。
通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,重要的是如何把自己平时所学的东西应用到实验中.虽然自己对于这门课懂的并不多,很多基础的东西都还没有很好的掌握,觉得很难,也没有很有效的办法通过自身去理解,但是靠着这一个多礼拜的“学习”,在同学的帮助和讲解下,渐渐对这门课逐渐产生了些许的兴趣,自己开始主动学习并逐步从基础慢慢开始弄懂它.
总评成绩:
(教师评分×75%+答辩成绩×25%)
课程设计评审标准(指导教师用)
评价内容
具体要求
权重
调查论证
能独立阅读文献和从事其他调研;能提出并较好地论述课题实施方案;有收集、加工各种信息及获得新知识的能力.
0.1
实践能力
能正确选择研究(实验)方法,独立进行研究工作.如装置安装、调试、操作。
0.2
分析解决
问题能力
能运用所学知识和技能去发现和解决实际问题;能正确处理实验数据;能对课题进行理论分析,得出有价值的结论。
0.2
工作量、
工作态度
按期圆满完成规定任务,工作量饱满,难度较大,工作努力,遵守纪律;工作作风严谨务实。
0。
2
质量
综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学;文字通顺,技术用语准确,符号统一,编号齐全,书写工整规范,图表完备、整洁、正确;论文结果有应用价值。
0。
2
创新
工作中有创新意识;对前人工作有改造或独特见解.
0。
1