云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 实验05 数组

实验05 数组

  • 62 次阅读
  • 3 次下载
  • 2025/6/13 18:46:48

实验五 数组

一、实验目的

1、熟练掌握一维数组、二维数组的定义、赋值和输入输出方法; 2、熟练掌握字符数组和字符串函数的使用;

3、掌握与数组有关的常用算法(如查找、排序等)。

二、实验预习

1、阅读教材中数组部分内容。 2、编写好所需要的程序。

三、实验指导

1、输入一长度不超过10 的字符串,判断它是否回文。(51.c) 如:ab22ba,level 均为回文。 (1)算法分析:

回文其实就是字符串中的字符对称相等,所以就要判断对称的字符是否都相等,需 要用循环来控制。可设一字符数组a,长度为10,用来存放此字符串,再设循环变量 i,j,兼做数组下标,进入循环时i 的值为0,指向第零个元素,j 的值为数组长度减1,指向最后一个元素,判断a[i]和a[j]是否相等,如出现不等就退出循环,下次循环时i 增1,j 减1,继续判断a[i]和a[j]的关系,若没出现过不等的情况就是回文。另外应注意循环条件,如上例: 长度为偶数ab22ba,当i=3,j=2 时停止

长度为奇数level, 当i=2,j=2 时停止,故i

(2)根据分析结果编写源程序。

#include \ /* 程序中要用到字符串处理函数*/ #include void main( ) {

char a[10]; int i,j,f=1 ;

/* f 用做标志,若发现某一a[i]与a[j]不等,就置f 为0,

退出循环,若f 为1就是回文,否则不是*/

scanf(\

/*用格式符s 整体输入字符串,因a 为数组名, 已代表数组起始地址,所以输入时不必加取地址符*/

for(i=0,j=strlen(a)-1;i

if(a[i]!=a[j])f=0 ; if(!f)break ; }

/* 若f 为0 提前退出循环,不是回文*/

if(f) printf(\

else printf(\}

(3)在c 编辑环境下编辑源程序。 (4)编译【F9】,直到没有错误。 (5)运行【Ctrl+F9】,输入: wh33hw↙

(6)查看结果【Alt+F5】,输出:Y

2、编一个程序,将两个字符串s1 和s2 进行比较。如果s1>s2,输出一个正数;s1=s2,输出0;s1

两个字符串从第一个字符开始一一对应进行比较,直到不相等的那个字符,从而求得它们的ASCII 码的差值。比如,‘A’与‘C’相比,由于‘A’< ‘C’, 应输出负数,由于‘A’与‘C’的ASCII 码的差值为2,因此,应输出“-2”。同理,“And”和“Aid”比较,根据第2 个字符比较结果,‘n’比‘i’大5,因此应输出‘5’。 (2)程序如下: #include void main( ) {

int i,resu ;

char s1[100],s2[100]; printf(\gets(s1); /*输入串1*/

printf(\gets(s2); /*输入串2*/ i=0 ;

While((s1[i]==s2[i]&&(s1[i]!='\\0'))i++; if(s1[i]=='\\0'&&s2[i]=='\\0')resu=0 ; /*如果相等, 输出0*/ else

resu=s1[i]-s2[i];

/*如果不等,输出ASCII 码的差值*/ printf(\}

(3)在C 编辑环境下输入源程序。 (4)编译【F9】,直到程序无错误。 (5)运行【Ctrl+F9】,输入:

Input string1: aid<回车> input string2: and<回车>

(6)查看运行结果【Alt+F5】:

result: -5 四、实验内容

1、在C 编辑环境下编辑实验指导中给出的程序,编译并运行。

2、输入一个0 到255 之间的十进制整数,要求把此数转化为二进制形式。如:127↙

01111111 提示:十进制转化为二进制用倒序取余法,可将每次产生的余数依次存入一数组中,输出时将数组倒序输出。(53.c)

3、编一个程序,将两个字符串连接起来,不要用strcat 函数。(例:输入china 和pliceman 两个字符串,结果应为chinapliceman 字符串)(54.c) 根据以上题目要求编程并上机调试运行。

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括: 1、实验题目 2、设计思路

3、写出程序源代码 4、写出程序运行结果

5、对实验结果进行分析、总结

搜索更多关于: 实验05 数组 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

实验五 数组 一、实验目的 1、熟练掌握一维数组、二维数组的定义、赋值和输入输出方法; 2、熟练掌握字符数组和字符串函数的使用; 3、掌握与数组有关的常用算法(如查找、排序等)。 二、实验预习 1、阅读教材中数组部分内容。 2、编写好所需要的程序。 三、实验指导 1、输入一长度不超过10 的字符串,判断它是否回文。(51.c) 如:ab22ba,level 均为回文。 (1)算法分析: 回文其实就是字符串中的字符对称相等,所以就要判断对称的字符是否都相等,需 要用循环来控制。可设一字符数组a,长度为10,用来存放此字符串,再设循环变量 i,j,兼做数组下标,进入循环时i 的值为0,指向第零个元素,j 的值为数组长度减1,指向最后一个元素,判断a[i]和a[j]是

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com