C语言专业课程设计字符串处理
C语言程序设计 课程设计汇报 题 目 字符串处理 学 号 姓 名 同组人员 年级专业 09电子信息工程2班 指导老师 完成日期 年 6 月 19 日 目录 1. C语言程序设计目标要求3 2. 字符串处理设计要求....3 3. 字符串处理步骤图...3 4. 字符串处理源程序...5 5. 程序分析.9 5.1头文件应用9 5.2函数应用9 5.3库函数调用...10 6.程序调试截图...11 7.参考资料...13 8.总结...14 9. 物理和电子信息学院课程设计评定意见15 C语言程序设计目标要求 在老师指导下,学生依据选定课题,综合利用所学程序设计知识,完成问题分析、模块设计、代码编写、程序调试和运行等训练任务。 经过课程设计,初步锻炼利用所学基础知识处理实际问题能力,掌握软件开发基础过程和基础方法和良好编程风格,培养在软件开发中相互合作团体意识 字符串处理设计要求 1从键盘输入一个英文句子并保留在字符数组中; 2能删除多出空格单词之间只留一个空格,句子前后无空格; 3能统计某单词出现频度; 4能替换某个单词。法实现也可。 字符串处理步骤图 这个程序调用3个功效函数,分别起处理删除空格、查找某个单词出现频度、用一个单词替换原来一个单词。最终,在主程序里对这3个函数进行调用,完成函数要求全部功效。 下面就是总程序步骤图 开始 输入英文句子 输出英文句子 调用Deletestr函数清除前导和后导空格,中间多出空格 输出清除空格后句子 输入要统计个数单词 调用FintCountstr函数统计其出现次数 调用Swapstr函数替换某个单词 输出替换后英文句子 结束 字符串处理源程序 include stdio.h include string.h include ctype.h void Deletechar str[] { int i,j,Length,StartBlank0,EndBlank0,MiddleBlank0; Lengthstrlenstr; fori0; iLength; i /* 删除前导空格 */ ifstr[i] StartBlank; else break; forj0; jLength; j str[j]str[jStartBlank]; Length-StartBlank; foriLength-1; i0; i-- /* 删除后导空格 */ ifstr[i] EndBlank; else break; Length-EndBlank; whileEndBlank0 { str[Length-1EndBlank]str[LengthEndBlank]; EndBlank--; } i0; /* 删除中间多出空格 */ whileiLength { ifstr[i] { ifstr[i1] { forji1; jLength; j str[j]str[j1]; MiddleBlank; Length--; } else i; } else i; } } void FindCountchar str[] { char FindWord[20],*p1,*p2; int count0; /* 查找单词出现次数 */ printfEnter a Findword\n; getsFindWord; p1str; p2FindWord; while*p1\0 { if*p1*p2isalpha*p1-1 while*p1*p2*p2\0 { p1; p2; } else p1; if*p2\0*p1 ||*p1\0 count; /* 所查找单词完全匹配 */ p2FindWord; /* 重置查找单词 */ } printfFindCountd\n,count; } void Swapchar str[] { char SwapWord[20],FindWord[20],*p1,*p2; int j,s,k,i0,SwapWordLength,strLength,FindWordLength,n; printfEnter a FindWord\n; getsFindWord; printfEnter a SwapWord\n; getsSwapWord; p1str; p2FindWord; strLengthstrlenstr; /* 原英文句子长度 */ FindWordLengthstrlenFindWord; /* 查找单词长度 */ SwapWordLengthstrlenSwapWord; /* 替换单词长度 */ nSwapWordLength-FindWordLength; /* 查找和替换单词长度差 */ while*p1\0 { if*p1*p2isalpha*p1-1 while*p1*p2*p2\0 { p1; p2; i; } else { p1; i; } if*p2\0*p1 ||*p1\0 /* 所查找单词完全匹配 */ { ifn0 {