C语言课程设计88344_第1页
C语言课程设计88344_第2页
C语言课程设计88344_第3页
C语言课程设计88344_第4页
C语言课程设计88344_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、沈阳理工大学(信息科学与技术学院)C语言课程设计2013/12/31成绩评定表学生姓名班级学号专业电子信息工程课程设计题目C语言课程设计任务(三十一)数组应用、查找字符、旅游景点信息管理程序的设计评语组长签字:成绩日期20 年 月曰9课程设计任务书学院信息科学与工程学院专业电子信息工程学生姓名马斌班级学号1303030331课程设计题目c语言课程设il任务(三十一)数组应用、査找字符、旅游景点信息管理程序的设讣实践教学要求与任务:1. 编写函数,求一个二维数组两条对角线上元素的最大值和最小值:主函数中初始化 一个4X4的数组,输出该数组,并调用函数后,输出结果。2. 谙编写一个函数fun (c

2、har *s, char c),其功能是:求岀s所指字符串中,包含 c中字符的个数。例如,若输入字符串为:1234aasdd233,输入的字符为3,则输出3。3. 旅游景点信息管理程序设汁4. 设计结构体数组,结构中包数据为:编号、景点名称、旅游地名、所需费用等。5. 设计各个函数,分别实现以下功能:6. (1)输入数据(2)显示所有信息(3)输入旅游地名,显示符合该条件的记录,并所需总费用。设讣菜单,通过选择菜单调用以上各函数。工作计划与进度安排:第一天:开题,系统设计。第二天:设计数据库,设计网页。第三天:编码实现,测试系统。第四天:书写设计报告。第五天:系统评价、验收、答辩。指导教师:专

3、业负责人:学院教学副院长:201 年 月201年 月201 年 月曰日日1 数组应用 NO TABLE OF CONTENTS ENTRIES FOUND.1. 数组应用11题目内容编写函数,求一个二维数组两条对角线上元素的最大值和最小值;主函数中 初始化一个4X4的数组,输出该数组,并调用函数后,输出结果。1.2算法图框图1.1为数组应用算法图框1. 3源程序及注释#include#define N 4void max(int strN)int i, j, ml, m2;int strlN = 0,str2N = 0;0,用于承载量对角线上的数*/for(i=0;iN;i+)for(j=0;

4、jN;j 卄)if(i=j)*/strli=strij;给一维数组*/辻(i+j=N-1)str2i=strij;ml=strl0; for(i=l;iN;i+)if (mKstrl i)ml=strl ij;/*定义了两个一维数组,负初值为/*两层循环,用于查找*/*查找主对角线数,行标等于列表/*将二维数组的主对角线数依次负/*查找副对角线数*/*辻语句,用于寻找最大值*/*将最大值负给ml*/m2=str20;for(i=l;iN;i+) if(m2str2il)m2=str2i;printf (z,主对角线中最大值:%dn/z, ml);printf (副对角线中最大值:dn, m2)

5、;void min(int strN)int i, j, ml, m2;int strlN = 0,str2N = 0;for(i=0;iN;i 卄)for(j=0;jN;j+)if(i=j)strli=strij;if(i+j=N-l)str2i=strij;ml=strl0;for(i=l;istrli)ml=strl i;m2=str20;for(i=l;istr2i)m2=str2i;printf (主对角线中最小值:dn, ml);printf (副对角线中最小值:%dn,/, m2);void main()int strEN N = 0;/*定义一个二维数组用于承载输入数据int

6、i, j;printf (请输入一个%d*%d 的数组:n, X, X);for(i=0;iN; i+)/*外层循环控制行数*/for(j=0; jN; j+)/*内层循环控制输入数据*/scanf(%d,&stri j);printf C 该数组是:n);for(i=0;i#define N 50/*定义了一个指针型数组变量,一个字符int fun (char *s,char c)*/int n二0;while(*s!=0)/*while循环用于循环结构的结束*/if (*s=c) 入字符相同*/*辻语句用于判断指针指向的字符是否与输n+;/*n Ik算要统讣字符的个数权s+;return

7、n;void main()char strN, ch;int num;printf (请输入一串字符串:“);gets(str);printf (请输入一个字符:“);scanf&ch);num=fun(str, ch);/*调用函数*/printf (“%c在字符串s中岀现的次数是:d次rT, ch, str, num);2. 4程序结果图2. 2字符査找的运行结果截图3. 旅游景点信息管理程序设计3.1题目内容设计结构体数组,结构中包数据为:编号、景点名称、旅游地名、所需费用 等。设计各个函数,分别实现以下功能:(1)输入数据 (2)显示所有信息 (3)输入旅游地名,显示符合该 条件的记录

8、,并所需总费用。设计菜单,通过选择菜单调用以上各函数。3. 2算法图框图3.1.1为旅游景点信息管理程序设计主调函数算法图框开始u与已有信息比较并负 ot值心结热/*定义整型变量num表示编号*/*定义字符串数组,用于承载景点名称*/*定义字符串数组,用于承载旅游地名称/*定义整型变量price表示所需费用*/图3. 1.2为旅游景点信息管理程序设计被调函数查找部分算法图框3. 3源程序及注释#includestdio. h#includestring h#define N 20struct travel int num;char sight N;char address N;int pric

9、e;int n=0;struct travel tN;void set (struct travel *p)/*此处为被调函数,用于数据输入*/ printff 第%d 个旅游地点:n,n+l);scanf&pn, num);scanf(%s, &pn. address);scanf (“%s: &p n. sight);scanf&pn. price);pn.num二n+1;n+;void show (struct travel *p)/*此处为被调函数,用于显示所有输入信息*/ int i二0;printf Cn编号t景点名称t旅游地名t所需费用n);for (i=0; in; i+)/*

10、for循环,用于控制输出*/ printf (,%dt%stt%st%dn/,, pi. num, pi. sight, pi. address, p i.price);void fun (struct travel *p)/*此处为被调函数,用于查找信息*/ char sort N:/*定义一个字符串数组,用于承载需查找的旅游地名权int nrO;printf Cn请输入旅游地名:);scanfsort);printf Cn编号t景点名称t旅游地名t所需费用n);for (m=0: mn; m+) if (!strcmp(sort, pm. address) )/*Lt较所输入旅游地名与指针

11、指向 的字符串是否相同*/ printf (,z%dt%stt%st%dn, pm num, pm sight, pm address, pL m price);void main() int a;Do/*dowhile循环控制程序运行于结束*/ printf (,zn*请选择菜单材叭n);printf Cnl.输入数据2.显示所有信息3.显示符合条件信息n);printf (n输入一个数字:);scanf&a);switch (a)/*switch()结构,用于选择调用哪个被调函数*/ case 1:set (t);break;case 2:show(t):break;case 3:fun(

12、t);break;default: printf (,znot fountn,z):while(1);3- 4运行结果23D:C语言课程设计(三+- ) DebugC语言误程谿(三+-) .exe*请选择菜单“卜输人数扌启2 显示所有信息3 显示符合条件信息 j in incf kongEino 200*请选择菜单*卜输人数扌启2 显示所有信息3 显示符合条件信息2 taian taiehan 500*请选择菜单“卜输人数拆2 显示所有信息3 显示符合条件信息3 qingdao laoshan 200*请选择菜单“k 输人数掳2显示所有信息3显示符合条件信息.:景点名称 kongmiao ta

13、ishan laoshan旅游地名所需费用jining 2HG taian 500 qingdao 200E请迪華菜单*k 输入数拐2显示所有信息3显示符合条件信息&俞入一个数字请渝人旅游地名:Jibing景点名称koiiymiao旅游地名所需费用Jin lug 200请选扌圣菜单十k 输入数扌居2 显示所有信息3 显示符合条件信息 输入一个数字:图3. 3为旅游景点信息管理程序的设计的运行结果截图7.总结我的课程设讣是数组应用、查找字符、旅游景点信息管理程序的设汁。经过近两天的设计和同学的帮助,我的程序终于完成了!达到了要求的目的。对于我们这些新手来说,这是很大的考验,我一次次的问自己,怎么

14、才能找到课堂所学与实际应用的最佳结合点?怎么才能让自己的程序在篇幅上简单,在使用价值上丰 富?怎样让自己的计划更具有序性,而不会忙无一用?经过自己的琢磨,听取了同学的建议, 还査阅了很多书籍,才做到了心中有数,才了解了C语言课程设计的真正用意一一培养自学 能力,养成程序编辑的好习惯。我从来不相信车到山前必有路的说法,认为那只是懒惰者 自寻懒惰的借口,我要积极,要把握,要努力。我们自己能做到的仅此而已,因为人力也有 所不能及。在课程设计过程中,我学到了很多人生的哲理,懂得怎么样去制左汁划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪,黑夜过去了,我 们收获的是黎明。在本

15、次实践中,给我印象最为深刻的是在文件删除程序的编译过程中,先 有我的各个子程序都已经编辑成功,那么这最后的程序就将是我成功的关键。老天不会让我 太过顺利,他在这最后的时刻设置的障碍,是要考验我的能力,他要置我于死地?在这个问 题的解决上,我打了退堂鼓,我不能忍受长时间的无功而反,时间正在消磨我的意志。没有 了柳暗花明的一天,那么我怎么能说经受住了考验?谢谢老师的那句话,她说:人力有所不,然而,人的精神是不会败倒的。我鼓起勇气,到处问.到处查资料,黄天不负有心人, 在一篇文章上,终于看到了我所特别要求的函数,我实现了组合是关键的理论。不得不说 这是精神的胜利,是永不言败的精神让我夺得胜利。谢谢给我指点迷津的老师!5.参考文献马秀丽,刘志妩,李筠.C语言程序设计.北京清华大学出版社.C语言课程设计任务(三十一)题目名称:数组应用、査找字符、旅游景点信息代理程序的设计内容及要求:8. 编写函数,求一个二维数组两条对角线上元素的最大值和最小值;主函数中初 始化一个4X4的数组,输岀该数组,并调用函数后,输出结果

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论