第7次实验内容(字符数组)_第1页
第7次实验内容(字符数组)_第2页
第7次实验内容(字符数组)_第3页
第7次实验内容(字符数组)_第4页
第7次实验内容(字符数组)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、该实验内容依据教材该实验内容依据教材: :C语语言程序言程序设计实验教设计实验教程程邹显邹显春、王建春、王建国国主主编编高等高等教教育出版社育出版社制作人:邹显春制作人:邹显春E-Mail:掌握掌握C C语言程序设计的诀窍语言程序设计的诀窍-重在上机实践重在上机实践!目标:目标:熟练阅读、编写程序熟练阅读、编写程序实验实验7 7 字符数组字符数组(P33P33)说明:参考程序的代码已经放在了备注中,但希说明:参考程序的代码已经放在了备注中,但希望同学们本着对自己负责的精神,先独立完成,望同学们本着对自己负责的精神,先独立完成,再看参考答案再看参考答案一、实验目的一、实验目的1.了解字符串结束符

2、在字符数组中的作用了解字符串结束符在字符数组中的作用2.掌握掌握字符数组的使用掌握掌握字符数组的使用3.掌握几种常用字符数组的使用与实现方法掌握几种常用字符数组的使用与实现方法二、实验内容(二、实验内容(P34-35P34-35)设计性实验设计性实验教材实验教材实验6中设计性实验的中设计性实验的、温馨提示温馨提示三、实验内容示范三、实验内容示范设计性试验设计性试验从键盘上输入从键盘上输入10个字符串,对字符串安升序排列并输个字符串,对字符串安升序排列并输出。要求有输入输出提示出。要求有输入输出提示说明:说明:此题可以一次性输入字符串后统一进行处理,亦可每次输入后立即处理,前者需要使用一个二维字

3、符串数组存放数据,后者则可反复利用同一个数组空间,注意空间应该足够大提示:提示:读入字符串可用gets实现,同时使用strlen求得字符串实际长度(strlen函数包含在string.h中)10个字符串的处理需用一层循环对每个字符串进行排序可用任意一种排序方法,可参见上一次设计性实验的操作,需用到二层循环程序运行效果(部分显示)程序运行效果(部分显示)参考程序代码见备注参考程序代码见备注编写一个程序实现一下功能:在字符串编写一个程序实现一下功能:在字符串sir中找到最大中找到最大的字符并放在第一个位置上,并将该字符前的原字符往的字符并放在第一个位置上,并将该字符前的原字符往后顺序移动,如后顺序

4、移动,如chyab变成变成ychab提示:提示:输入字符串后,同样先求长度用一次循环查找出字符串中的最大字符以及位置,单独保存下来第二次循环从字符串最大字符的位置起倒序直到第二个字符,依次将前一个位置的字符存放到当前字符上最后将最大字符存放到第一个字符位置。程序运行效果程序运行效果参考程序代码见备注参考程序代码见备注编写一个程序,实现口令检查功能。从键盘输入一个编写一个程序,实现口令检查功能。从键盘输入一个口令与已经存入数组中的口令进行比较;如果输入口令口令与已经存入数组中的口令进行比较;如果输入口令正确,屏幕输出正确,屏幕输出“欢迎使用计算机!欢迎使用计算机!”,如果输入口令,如果输入口令不

5、正确,屏幕显示不正确,屏幕显示“你的口令不正确!你的口令不正确!”;可以有三次;可以有三次输入口令的机会。要求输入的口令以输入口令的机会。要求输入的口令以*显示,例如输入显示,例如输入123,屏幕不能显示,屏幕不能显示123,以,以*显示。显示。提示口令输入部分程序如下:#include”conio.h”i=0;ch=getch();/*getch()函数从键盘接收字符,不在屏幕上显示*/wihle(ch!=13)/*13为换行符ASCII码,键盘输入为回车键*/ sti=ch; putchar(*); ch=getch(); i+;sti=0;putchar(n); /注意此句教材中的提示没

6、有,用于输完密码后屏幕也显示换行注意此句教材中的提示没有,用于输完密码后屏幕也显示换行提示:提示:先开辟一个字符数组存放密码(可事先自行随意设置字符作为密码)再开辟字符数组st存储输入的字符,外层设置三次循环,循环内可根据前述代码进行密码的输入使用strcmp()对密码字符串和输入字符串进行比较,如果比较结果为0,则直接跳出循环,否则显示输入密码不正确循环后设置语句判断是否是跳出循环还是正常循环完毕(检查循环变量是否超过设定值)确定最终显示输入正确还是输入错误程序运行效果程序运行效果参考程序代码见备注参考程序代码见备注如果三次均输入错误:三次以内输入正确:编写一程序,验证字符串连接、复制、比较

7、、测试字编写一程序,验证字符串连接、复制、比较、测试字符串长度等功能,该程序结构如下图:符串长度等功能,该程序结构如下图:该题说明:该题说明:字符串输入输出用gets和puts实现,puts函数输出字符串后会自动换行,不必再添加n要求循环四次各选择一种操作(这里题目没有明显说明每次操作是否使用输入时的数据还是前次操作完成后存留在字符串中的数据,如果是前者,需要再定义两个字符串,在每次循环时都先将原始字符串复制进来)注意字符串比较的功能为了简单起见与库函数strcmp不同,在两个字符串不同时返回0,完全相同时返回1,(strcmp返回值分为-1, 0 ,1)各功能建议像库函数一样,都写在自定义函数中,然后在主程序中进行调用即可提示:提示:连接操作:传入两个字符串数组,循环条件是判断当前元素是否是0, 再执行循环从第二个字符串起始起,把每个字符存放到第一个字符串刚找到的位置起依次向后;复制操作:直接执行循环从第二个字符串的起始位置,把每个字符都存放到第一个字符串的起始位置依次向后;比较操作:设置循环,结束的条件是两个字符串任意一个读到0

温馨提示

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

评论

0/150

提交评论