C语言课程设计论文Word文件下载.docx
- 文档编号:22095321
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:14
- 大小:43.01KB
C语言课程设计论文Word文件下载.docx
《C语言课程设计论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言课程设计论文Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
1、搜索、阅读相关文献和资料;
2、除必做题外,选择下述题目中的1-2个,设计算法,实现代码;
1)需求分析通过对用户需求进行调查分析,写出需求分析文档。
2)总体设计根据需求分析文档,初步提出问题解决方案,以及软件系统的体系结构和数据结构的设计方案,并写出书面文档总体设计说明书。
3)详细设计根据总体设计说明书,在总体设计的基础上,对系统进行详细设计,以便下一步进行程序编码工作。
4)编写代码。
5)调试运行分析结果
课程设计目标
本课程设计是《高级语言程序设计》课程的组成之一,也是它的继续和延伸。
进一步加深C语言中结构体、指针、内存分配、文件等内容的理解,从课程设计的过程中理解结构化设计的精髓,领悟程序调试的内涵。
采用研究型学习方法,完成一个管理类型的小型软件。
在课程设计前期安排学习面向对象编程、软件工程、VC开发环境有关知识,以自学和上机实验为主。
开设本课程的目的是使学生通过参加小型软件的开发过程,进一步掌握面向对象的程序设计方法,使学生具有团队协作精神,并培养学生的创新能力和创新意识。
参考文献
及资料
1、《C语言程序设计》谭浩强主编第二版或第三版清华大学出版社
2、国外网站,等
3、苏小红《C语言大学实用教程》电子工业出版社
4、金保华《C语言程序设计实验指导与习题解答》科学出版社
5、杨彩霞《C语言程序设计实验指导与习题解答》中国铁道出版社
注:
此套表填写一式三份,于课程设计前一周分别交至教学督导团、教务科、教研室
课程设计计划书
周次
日期
设计内容
具体要求
设计教室
指导时间段
19
周二
2013.1.8
布置任务
讲授相关内容
构思解题方案
10:
00-12:
00龙计算中心
周三
2013.1.9
需求分析
写出需求分析文档
周四
2013.1.10
总体设计
详细设计
写出书面文档总体设计说明书
画出各模块流程图
周五
2013.1.11
编写代码
用C语言在VC环境下编写代码
20
周一
2013.1.14
单元测试
设计测试方案及用例并进行测试
2013.1.15
程序设计与调试
通过分析测试结果,排除错误
2013.1.16
程序集成与调试,最终测试
完善结果,编写技术文档
2013.1.17
提交课程设计报告
完成并提交课程设计报告
指导教师在课程设计期间每天指导时间不少于2小时。
教学院长、教学主任:
教研室主任:
填表人:
张贞贞闫雒恒填表时间:
2012年12月15日
一、必做题
1.有3个学生,各学4门课,计算总平均分数,并查找有一门以上课程不及格的学生,打印输出他们的全部课程成绩。
(通过函数调用完成)
C程序如下:
#include<
stdio.h>
math.h>
#defineM3
#defineN4
voidLine(charc,inta)//输出打印头文件
{inti;
for(i=1;
i<
=a;
i++)
printf("
%c"
c);
\n"
);
}
voidfun(floata[M][N])//定义学生成绩处理的fun函数
{inti,j;
floatsum,A[M];
floatave=0.0;
for(i=0;
M;
i++)
{sum=0.0;
for(j=0;
j<
N;
j++)
sum+=a[i][j];
A[i]=sum/N;
//计算每个学生的平均成绩
}
for(i=0;
ave+=A[i]/M;
//计算总平均成绩并输出
Line('
-'
60);
Totalofscores'
average:
%6.2f\n"
ave);
Thefailedstudent:
\n\n"
i++)//输出有一门以上成绩不及格学生学号
for(j=0;
if(a[i][j]<
60)
{printf("
TestfailedstudentID:
No.%d.\n"
i+1);
break;
};
Outputallsutdents'
score:
\n\n"
//输出所有学生成绩
ID\tclass1\tclass2\tclass3\tclass4\tAverage\n"
for(i=0;
{printf("
No.%d"
//输出学生学号
for(j=0;
j++)
\t%6.2f"
a[i][j]);
printf("
\t%6.2f\n"
A[i]);
}
Line('
voidmain()
{inti,j,flag=0;
floata[M][N];
Input3studentswitheach4scors:
\n\n"
//提示输入成绩
3&
&
flag==0;
4;
j++)//运用双重FOR循环输入学生成绩
{scanf("
%f"
&
a[i][j]);
if((a[i][j]<
0)||(a[i][j]>
100))//检验输入成绩是否有误
{printf("
InputError!
!
flag=1;
break;
printf("
if(flag==0)
fun(a);
//调用fun函数输出处理后学生成绩
程序运行结果如下所示:
图1
2.将一组字符串按字典顺序输出。
C程序如下:
#include<
string.h>
#defineM5
#defineN20
voidLine(charc,inta)//输出打印头文件
printf("
voidsort(chars[M][N],charstr[N])//定义字典排序sort函数
{inti,j;
M-1;
for(j=i+1;
if(strcmp(s[i],s[j])>
0)//不同字符串字典排序
{strcpy(str,s[i]);
strcpy(s[i],s[j]);
strcpy(s[j],str);
%s"
s[i]);
chara[M][N],arr[N];
InputEnglishstringarray:
//提示输入字符串
scanf("
%s"
a[i]);
Outputtheoldstringarray:
//提示输出字符串
Outputthesortedstringarray:
//提示输出排序后的字符串
sort(a,arr);
程序运行结果如下:
图2
3.输入一行字符,要求完成:
(1)每个单词中的第一个字母改成大写字母(如果原来已是大写字母则不变)。
(2)全变成大写字母
(3)全变成小写字母
要求:
以函数的形式实现,在main函数中调用,要支持输入
编写C程序如下:
#defineM50
voidchange1(chara[M])//定义一个函数change1
{inti;
if(a[0]>
='
a'
a[0]<
z'
)
{a[0]=a[0]-32;
for(i=1;
{if(a[i]=='
'
(a[i+1]>
a[i+1]<
))
a[i+1]=a[i+1]-32;
elseif(a[0]>
A'
Z'
)//将字符串中各单词的首个小写字母变为大写
{for(i=1;
if(a[i]=='
a[i+1]=a[i+1]-32;
else
Thefirstcharacterisablank"
70);
Outputfirstchar_uppercase:
"
puts(a);
}
voidchange2(chara[M])//定义一个函数change2
if(a[i]>
a[i]<
a[i]=a[i]-32;
//将字符串中所有小写字母变为大写字母
OutputEnglishuppercase:
voidchange3(chara[M])//定义一个函数change3
i++)//将字符串中所有大写字母变为小写字母
{if(a[i]>
a[i]=a[i]+32;
OutputEnglishletters:
{inti,l,flag=0;
chara[M];
\nInputEnglishstring:
//提示输入英文字符串
gets(a);
Outputtheoldstring:
puts(a);
l=strlen(a);
l;
if(a[i]=='
\0'
{flag=1;
i++)//检查输入字符是否为英文字符或空格
if((a[i]<
'
a[i]!
)||(a[i]>
{printf("
InputError!
flag=1;
if(flag==0)
{change1(a);
change2(a);
change3(a);
图3
通讯录管理系统
2、个人通讯录管理系统
一、需求分析
设计一个通讯录管理系统,以实现以下功能:
(1)信息添加功能
(2)信息查询功能
(3)信息修改功能
(4)信息删除功能
(5)信息排序功能
(6)信息浏览功能
(7)读取数据文件
(8)新建数据文件
需求说明:
(1)通讯录中的每一个信息包括姓名(规定字节数为15个)、电话(规定字节数为15个)和工作单位(最大字节数为30个)等信息。
(2)录入的信息要求存入文件,并可以通过读取数据文件进行查询、修改、删除和浏览等基本操作。
(3)对通讯录中的信息要求分别按照序号和姓名两种方式进行查询,并返回符合条件的信息。
(4)对通讯录中的信息修改应逐个进行,一个信息记录的修改不应该影响其他的信息记录。
(5)对通讯录中的信息要求分别按照序号和姓名两种方式进行删除,并保存删除后的信息。
(6)对通讯录中的信息要求分别按照序号和姓名两种方式进行排序,并返回排序后的信息。
(7)所设计的通讯系统要求以菜单方式工作,为用户提供清晰的使用提示,根据用户的选择进行各种处理。
二、总体设计
(1)设计主控制菜单程序(menu()函数),实现菜单选择模块。
①输出功能菜单(包括新建、读取文件、添加、查询、修改、删除、浏览、排序等)。
②按提示信息选择功能菜单,并输出返回值。
(2)设计New()函数,实现新建数据文件功能。
(3)设计Load()函数,实现文件读取功能,若文件不存在,则返回New(),进入新建数据文件。
(4)设计Add()函数,实现信息添加功能,分别录入序号、姓名、电话和工作单位。
若序号已存在,则重新输入。
(5)设计Qur()函数,实现信息查询功能,通过设计提示菜单,实现按序号和姓名两种方式查询。
(6)设计Modify()函数,实现信息修改功能,在修改前,首先显示所有信息,然后通过序号实现修改。
(7)设计Del()函数,实现信息删除功能,通过设计提示菜单,实现序号和姓名两种方式进行删除。
(8)设计Sort()函数,实现信息排序功能,通过设计提示菜单,实现按序号和姓名两种方式进行排序。
(9)设计Disp()函数,实现信息浏览功能。
(10)设计Save()函数,实现信息保存功能,将新建或读取的文件,在退出程序后进行保存。
三、详细设计
四、编写代码
五、调试总结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 论文