收藏 分销(赏)

C语言专业课程设计报告字符串处理.doc

上传人:快乐****生活 文档编号:4431900 上传时间:2024-09-22 格式:DOC 页数:16 大小:342.50KB
下载 相关 举报
C语言专业课程设计报告字符串处理.doc_第1页
第1页 / 共16页
C语言专业课程设计报告字符串处理.doc_第2页
第2页 / 共16页
点击查看更多>>
资源描述
C语言专业课程设计报告字符串处理 课程设计报告 课程设计题目:研究生初试录取 学生姓名 :李俊 专 业 :计算机应用技术 班 级 : 1140302 指导教师 : 宋文琳 2012年 06 月 23日 目录 一)实验题目........................................3 二)实验目的........................................3 三)实验要求........................................3 四)实验思路........................................4 五)实验过程........................................6 六)实验调试和结果...............................9 七)实验小结.....................................13 实验题目 字符串处理 (1)不使用系统库函数,编写多个函数实现; (2)定义字符数组存放字符串,从键盘输入; (3)调用不同的函数,实现字符串的连接、拷贝、比较、求字符串长度、对字符串内字符进行排序、查找字符串中某个字符是否存在; (4)分别输出以上字符串处理的结果。 二)实验目的 本次课程设计的主要目的是综合运用所学的C语言知识解决一个比较实际的简单问题,侧重对数组、函数、指针、结构体等相关内容的综合应用,使学生能进一步熟悉掌握C语言的基本语法,进一步提升编程能力并逐步培养编程思维,进而不断提高学生解决问题的能力,并为以后的语言学习打下良好的基础。 三) 实验要求 1. 学生独立完成课程设计的主要内容; 2. 按照实验课表安排进行,不得无故旷课; 3.按照选题规则确定课程设计题目,不可随意更换,但可在完成规定的任务之后,根据 个人兴趣选做其它题目; 4.严格按照报告格式撰写课程设计报告; 5.程序实现方式可以自选,可采用指针、数组或其任意组合方式完成。 四)实验思路 1)整体思路 操作3: 比较 输入需要操作的字符串str1、str2(查找操作另输入需查找的字符) 操作4: 求字符串长度 操作5: 对字符串内字符进行排序 操作6: 查找某个字符是否存在 其它操作: 显示出错 操作2: 拷贝 操做1: 连接 运用if函数选择进行不同操作 引用各操作的自定义函数(结果输出在引用函数中) 五)实验过程 代码: #include<> void main() {void lianjie(char a[],char b[]); void kaobei(char a[],char b[]); void bijiao(char a[],char b[]); void qiuchangdu(char a[],char b[]); void paixu(char a[],char b[]); void chazhao(char a[],char b[],char c); char str1[50],str2[40]; char t; int i; printf("需要进行的操作:;;;;;\n"); scanf("%d",&i); if(i==1) {printf("要连接的字符串1:"); scanf("%s",str1); printf("要连接的字符串2:"); scanf("%s",str2); lianjie(str1,str2);} else if(i==2) {printf("拷贝的字符串1:"); scanf("%s",str1); printf("要拷贝的字符串2:"); scanf("%s",str2); kaobei(str1,str2);} else if(i==3) {printf("要比较的字符串1:"); scanf("%s",str1); printf("要比较的字符串2:"); scanf("%s",str2); bijiao(str1,str2);} else if(i==4) {printf("要求长度的字符串1:"); scanf("%s",str1); printf("要求长度的字符串2:"); qiuchangdu(str1,str2);} else if(i==5) {printf("要排序的字符串1:"); scanf("%s",str1); printf("要排序的字符串2:"); scanf("%s",str2); paixu(str1,str2);} else if(i==6) {printf("要查找的字符串1:"); scanf("%s",str1); printf("要查找的字符串2:"); scanf("%s",str2); printf("输入要查找的字符:"); t=getchar(); printf("\n"); chazhao(str1,str2,t);} else printf("没有此操作\n"); } void lianjie(char a[],char b[]) { int i=0,j=0; while(a[i]!='\0')i++; while(b[j]!='\0')a[i++]=b[j++]; a[i]='\0'; printf("连接结果为:%s\n",a); } void kaobei(char a[],char b[]) { int i=0; for(i=0;i<11;i++) a[i]=b[i]; a[i]='\0'; printf("拷贝结果为%s;\n",a); } void bijiao(char a[],char b[]) { int i=0; while(a[i]==b[i]&&a[i]!='\0') i++; if(a[i]==b[i]) printf("两个字符串相等;\n"); else if(a[i]>b[i]) printf("第一个字符串大;\n"); else printf("第二个字符串大;\n"); } void qiuchangdu(char a[],char b[]) { scanf("%s",b); int i=0,j=0; while(a[i]!='\0') i++; printf("第一个字符串的长度为:%d\n;",i); while(a[j]!='\0') j++; printf("第二个字符串的长度为:%d\n",j); } void paixu(char a[],char b[]) { int i=0,j=0,n=0,m=0; char t; while(a[n]!='\0') n++; for(i=0;i<n-1;i++) for(j=0;j<n-1;j++) if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;} printf("第一个字符串排序结果为:"); for(i=0;i<n;i++) printf( "%c",a[i]); while(b[m]!='\0') m++; for(i=0;i<m-1;i++) for(j=0;j<m-1;j++) if(b[j]>b[j+1]) {t=b[j];b[j]=b[j+1];b[j+1]=t;} printf("第二个字符串排序结果为:"); for(i=0;i<m;i++) printf( "%c",b[i]); printf("\n"); } void chazhao(char a[],char b[],char c) { int i=0,j=0; while(a[i]!='\0') i++; for( j=0;j<i;j++) { if(a[j]!=c) ; else break;} if(j<i) printf("第一个字符串有字符 %c\n;",c); else printf("第一个字符没有字符%c;",c); i=0;j=0; while(b[i]!='\0') i++; for( j=0;j<i;j++) { if(b[j]!=c) ; else break;} if(j<i) printf("第二个字符串有字符 %c\n",c); else printf("第二个字符没有字符%c\n",c); } 六)实验调试和结果 输入界面: 操作结果: 调试中出现的错误和改正: 定义过程中出现未将引用函数放入主程序中,定义的数组开始没有放在主程序里,而是在引用函数中,引用函数有少数不能自己写出来,在通过多次尝试之后终于得出正确的程序代码,在输入字符时未加取地址符,加入之后又遇到不能输入字符的情况。 七) 实验小结 在自主编程的过程中认识到自己在拓宽思维方面的缺陷,程序的大体能够自己掌握,但在细节部分缺陷太多。对数组、函数已基本掌握,但对指针和结构体的掌握不到位,没有能够将指针和结构体运用进去。在编写程序方面已经能够达到熟练运用,没有犯低级错误。通过C语言程序设计课程学习,已经学习到了自己编程,自己调试,不足的方面能自己上网自学。在之后的C语言学习中,一定会加深对C语序的学习,使自主编程能力更进一步。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服