c语言第7次实验内容(字符数组)邹显春.pptVIP

c语言第7次实验内容(字符数组)邹显春.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
该实验内容依据教材: C语言程序设计实验教程 邹显春、王建国主编 高等教育出版社 制作人:邹显春 E-Mail:zouxc@swu.edu.cn 掌握C语言程序设计的诀窍---重在上机实践!!!!!! 目标:熟练阅读、编写程序 实验7 字符数组 (P33) 说明:参考程序的代码已经放在了备注中,但希望同学们本着对自己负责的精神,先独立完成,再看参考答案 一、实验目的 1.了解字符串结束符在字符数组中的作用 2.掌握掌握字符数组的使用 3.掌握几种常用字符数组的使用与实现方法 二、实验内容(P34-35) 设计性实验—教材实验6中设计性实验的②、④、⑤、⑥ 温馨提示 三、实验内容示范 设计性试验 ②从键盘上输入10个字符串,对字符串按升序排列并输出。要求有输入输出提示 说明: 此题可以一次性输入字符串后统一进行处理,亦可每次输入后立即处理,前者需要使用一个二维字符串数组存放数据,后者则可反复利用同一个数组空间,注意空间应该足够大 提示: 读入字符串可用gets实现,同时使用strlen求得字符串实际长度(strlen函数包含在string.h中) 10个字符串的处理需用一层循环 对每个字符串进行排序可用任意一种排序方法,可参见上一次设计性实验③的操作,需用到二层循环 程序运行效果(部分显示) 参考程序代码见备注 ④编写一个程序实现一下功能:在字符串sir中找到最大的字符并放在第一个位置上,并将该字符前的原字符往后顺序移动,如chyab变成ychab 提示: 输入字符串后,同样先求长度 用一次循环查找出字符串中的最大字符以及位置,单独保存下来 第二次循环从字符串最大字符的位置起倒序直到第二个字符,依次将前一个位置的字符存放到当前字符上 最后将最大字符存放到第一个字符位置。 程序运行效果 参考程序代码见备注 ③编写一个程序,实现口令检查功能。从键盘输入一个口令与已经存入数组中的口令进行比较;如果输入口令正确,屏幕输出“欢迎使用计算机!”,如果输入口令不正确,屏幕显示“你的口令不正确!”;可以有三次输入口令的机会。要求输入的口令以*显示,例如输入123,屏幕不能显示123,以***显示。 提示口令输入部分程序如下: #include”conio.h” i=0; ch=getch(); /*getch()函数从键盘接收字符,不在屏幕上显示*/ wihle(ch!=13) /*13为换行符ASCII码,键盘输入为回车键*/ { st[i]=ch; putchar(‘*‘); ch=getch(); i++; } st[i]=‘\0’; putchar(‘\n’); //注意此句教材中的提示没有,用于输完密码后屏幕也显示换行 提示: 先开辟一个字符数组存放密码(可事先自行随意设置字符作为密码) 再开辟字符数组st[]存储输入的字符,外层设置三次循环,循环内可根据前述代码进行密码的输入 使用strcmp()对密码字符串和输入字符串进行比较,如果比较结果为0,则直接跳出循环,否则显示输入密码不正确 循环后设置语句判断是否是跳出循环还是正常循环完毕(检查循环变量是否超过设定值)确定最终显示输入正确还是输入错误 程序运行效果 参考程序代码见备注 如果三次均输入错误: 三次以内输入正确: ③编写一程序,验证字符串连接、复制、比较、测试字符串长度等功能,该程序结构如下图: 该题说明: 字符串输入输出用gets和puts实现,puts函数输出字符串后会自动换行,不必再添加‘\n’ 要求循环四次各选择一种操作(这里题目没有明显说明每次操作是否使用输入时的数据还是前次操作完成后存留在字符串中的数据,如果是前者,需要再定义两个字符串,在每次循环时都先将原始字符串复制进来) 注意字符串比较的功能为了简单起见与库函数strcmp不同,在两个字符串不同时返回0,完全相同时返回1,(strcmp返回值分为-1, 0 ,1) 各功能建议像库函数一样,都写在自定义函数中,然后在主程序中进行调用即可 提示: 连接操作:传入两个字符串数组,循环条件是判断当前元素是否是‘\0’, 再执行循环从第二个字符串起始起,把每个字符存放到第一个字符串刚找到的位置起依次向后; 复制操作:直接执行循环从第二个字符串的起始位置,把每个字符都存放到第一个字符串的起始位置依次向后; 比较操作:设置循环,结束的条件是两个字符串任意一个读到‘\0’标志符,比较字符串中每一个字符,如果相同,则继续循环,否则直接返回0(此时已跳出自定义函数),如果是整个循环结束,就返回1 求长度操作“执行一个空的for循环,循环条件是判断当前元素是否是‘\0’,返回循环变量 参考程序代码见备注 * * * * * #includestdio.h #includestring.h void main

文档评论(0)

飞扬的岁月 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档