C课程设计报告例子模板Word文档格式.docx
- 文档编号:22760125
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:15
- 大小:82.23KB
C课程设计报告例子模板Word文档格式.docx
《C课程设计报告例子模板Word文档格式.docx》由会员分享,可在线阅读,更多相关《C课程设计报告例子模板Word文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
inta[6]={5,10,40,68,82};
intnum;
//记录插入元素值
intadd;
//记录待插入的位置
inti;
fun(intnum)
{if(num>
a[4])add=5;
//是否插在数组末尾,若是add=5
else
{for(i=0;
i<
5;
i++)
{if(num<
=a[i])
{add=i;
break;
}
for(i=5;
i>
add;
i--)
a[i]=a[i-1];
//先将啊a[add]以及后面的元素向后移动一个位置,空出a[add]
a[add]=num;
}//不是,继续寻找插入的位置,并赋值给add
main()
{
printf("
初始数组如下:
"
);
for(i=0;
i++)
%5d"
a[i]);
printf("
\n"
输入一个待插入的数据:
scanf("
%d"
&
num);
fun(num);
插入后的数组如下:
6;
i++)printf("
1.4运行结果
图1.2数据合并的运行结果截图
2插入数据
2.1题目内容
编写一个函数fun,其功能是:
将两个两位的正整数a,b合并成一个整数放在c中。
合
并的方式是:
将a数的十位和个位依次放在c数的个位和十位上,b数的十位和个位依
放在c数的百位和千位上。
例如:
当a=45,b=12。
调用函数后,c=2154,。
2.2算法框图
(A)
(B)
图2.1插入数据的算法的N-S图
2.3源程序及注释
{inta,b,c;
printf("
请输入两个两位正整数(任意一个为零则结束):
%d%d"
a,&
b);
c=1000*(b%10);
//用b的个位输出c的千位
c+=100*(b/10);
//用b的十位输出c百位
c+=10*(a%10);
//用a的个位输出c的十位
c+=a/10;
//用a的十位输c的个位
%d和%d的组合结果为:
%d\n"
a,b,c);
2.4运行结果
图2.2插入数据的运行结果截图
3家庭财务管理程序的设计
3.1题目内容
设计结构体数组,结构中包含财务数据为:
编号,财务类别(如:
定期,理财等),存入金
额,存期(单位:
年),年利率,到期金额等。
其中,定期存款到期金额的计算公式:
到期金额=存入金额*(1+存期*年利率*80%)
理财存款到期金额的计算公式:
到期金额=存入金额*(1+存期*年利率)
设计各个函数,分别实现以下功能:
(1)输入数据
(2)输入某编号,若找到该编号,则删除对应记录(3)显示所有记录
设计菜单,通过选择菜单调用以上各个函数。
3.2算法框图
图3.1家庭财务管理程序设计的算法的N-S图
3.3源程序及注释
#include<
stdlib.h>
string.h>
conio.h>
#defineMAX100//最大记录数
typedefstruct
//定义数据
chartype[20];
floatstarMoney;
inttime;
floatrate;
floatendMoney;
}Fina;
voidAdd(Fina*m,int*num);
voidDlete(Fina*m,intn);
voidShow(Fina*m,intn);
voidmain()
charchioce;
intn=0;
Finam[MAX];
while
(1)
do
system("
cls"
//显示初始界面
puts("
=========家庭财务管理========"
1.录入数据"
2.删除"
3.显示"
4.退出"
============================="
请选择(1~4):
%c"
chioce);
}while(chioce>
'
4'
||chioce<
1'
switch(chioce)
case'
:
Add(m,&
n);
//录入数据
2'
Dlete(m,n);
//删除
3'
Show(m,n);
//显示
exit(0);
//退出
}//输入数据
voidAdd(Fina*m,int*n)
编号:
(m[*n].num));
财务类型:
%s"
(m[*n].type));
存入金额:
%f"
(m[*n].starMoney));
存期(年):
(m[*n].time));
年利率(按小数形式,如:
0.80):
(m[*n].rate));
if(strcmp("
定期"
m[*n].type)==0)
m[*n].endMoney=m[*n].starMoney*(1+m[*n].time*m[*n].rate*0.8f);
else
m[*n].endMoney=m[*n].starMoney*(1+m[*n].time*m[*n].rate);
(*n)++;
getchar();
是否继续添加(Y/N)?
:
}while(chioce!
='
n'
&
chioce!
N'
}//删除
voidDlete(Fina*m,intn)
inti,num;
请输入要删除记录的编号:
for(i=0;
n;
if(m[i].num==num&
m[i].starMoney>
0)
m[i].starMoney=0;
是否继续删除记录(Y/N)?
}//显示
voidShow(Fina*m,intn)
if(m[i].starMoney>
m[i].num);
%s\n"
m[i].type);
%g\n"
m[i].starMoney);
m[i].time);
年利率:
m[i].rate);
到期金额:
%g\n\n\n"
m[i].endMoney);
getch();
3.4运行结果
图3.2家庭财务管理程序设计运行结果截图(A)-显示主菜单
图3.3家庭财务管理程序设计运行结果截图(B)-输入数据
图3.4家庭财务管理程序设计运行结果截图(C)-输入某编号找到后删除对应的记录
图3.5家庭财务管理程序设计运行结果截图(D)-显示所有记录
4总结
我的课程设计是数据合并,插入数据,家庭财务管理程序的设计。
经过近一周
的设计和同学的帮助,我的程序终于完成了!
达到了要求的目的。
对于我们这些新手来说,这是很大的考验,我一次次的问自己,怎么才能找到课堂所
学与实际应用的最佳结合点?
怎么才能让自己的程序在篇幅上简单,在使用价值上丰富?
怎
样让自己的计划更具有序性,而不会忙无一用?
经过自己的琢磨,听取了同学的建议,还查
阅了很多书籍,才做到了心中有数,才了解了C语言课程设计的真正用意——培养自学能
力,养成程序编辑的好习惯。
我从来不相信车到山前必有路的说法,认为那只是懒惰者自寻
懒惰的借口,我要积极,要把握,要努力。
我们自己能做到的仅此而已,因为人力也有所不
能及。
在课程设计过程中,我学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实
现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪,黑夜过去了,我们收
获的是黎明。
在本次实践中,给我印象最为深刻的是在文件删除程序的编译过程中,先有我
的各个子程序都已经编辑成功,那么这最后的程序就将是我成功的关键。
老天不会让我太过
顺利,他在这最后的时刻设置的障碍,是要考验我的能力,他要置我于死地?
在这个问题的
解决上,我打了退堂鼓,我不能忍受长时间的无功而反,时间正在消磨我的意志。
没有了柳
暗花明的一天,那么我怎么能说经受住了考验?
谢谢老师的那句话,她说:
人力有所不能及
,然而,人的精神是不会败倒的。
我鼓起勇气,到处问,到处查资料,黄天不负有心人,在
一篇文章上,终于看到了我所特别要求的函数,我实现了组合是关键的理论。
不得不说这是
精神的胜利,是永不言败的精神让我夺得胜利。
谢谢给我指点迷津的老师。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 报告 例子 模板