2022年c语言多维数组 .pdf

上传人:Che****ry 文档编号:34265148 上传时间:2022-08-15 格式:PDF 页数:4 大小:35.79KB
返回 下载 相关 举报
2022年c语言多维数组 .pdf_第1页
第1页 / 共4页
2022年c语言多维数组 .pdf_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《2022年c语言多维数组 .pdf》由会员分享,可在线阅读,更多相关《2022年c语言多维数组 .pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、一、高维数组有时,数组的维数并不止一维,例如一个记录消费中心在第一季度里各个月的收入数据就可以用二维数组来表示。定义二维数组的方法是在一维数组定义的后面再加上一个用方括号括起来的维数说明。例如:float array38; 实际上,这个数组可以看成3 个连续的一维数组,每个一维数组具有8 个元素。该数组在内存中的存储格式为最左边的维数相同的元素连续存储,也即按行存储的。首先存储第一行8个元素,其次是第二行,最后是第三行。main() int array33=1,2,3,4,5,6,7,8,9; int i,j; for(i=0;i3;i+) for(j=0;j3;j+) printf(%3d)

2、; printf(n); 它的输出结果为:1 2 3 4 5 6 7 8 9 可以看出,二维数组元素是按行存储的。我们也可以对数组进行赋值,而不是初始化。main() int array33; int i,j; for(j=0;j3;j+) for(i=0;i3;i+) scanf(%d,&arrayij); for(i=0;i3;i+) for(j=0;j3;j+) printf(%3d); printf(n); 当输入 1 2 3 4 5 6 7 8 9 输出为:1 4 7 2 5 8 3 6 9 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -

3、 - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 数组可以是二维、三维甚至是更高维数的,虽然C语言对维数的处理没有上限,但是处理高维数组是很头疼的事。一般尽量避免处理四维和四维以上的数组。下面看一个三维数组的例子:main() int array234; int i,j,k; for(i=0;i2;i+) for(j=0;j3;j+) for(k=0;k4;k+) arrayijk=i*12+j*4+k; 这个三维数组可以看成2 个二维数组,每个二维数组又可以看成3 个一维数组。可以在头脑里想象成两个平行平面,每个平面内

4、有3*4 个点。所以共有24 个元素。二、字符串数组上面讲的都是存放数值的,有一类数组,用来处理字符串的,我们叫字符串数组。其实字符串数组也是二维数组,只是它的特殊性,才单独拿出来说的。main() char s1010; int i; for(i=0;i10;i+) scanf(%s,si); 先看它的输入特性,前面在说输入语句的时候说过,遇到字符串输入,可以不加 & ,现在只要记住这个特性就可以,以后说指针的时候再讲为什么。但是这儿为什么用si,可能很多人不太明白。我们定义的是二维数组,而输入的时候,却使用一维数组的形式。这是因为字符串在内存里地址可以用它的名字表示,就好象这种形式:mai

5、n() char s10; scanf(%s,s); 定义的是一维数组,输入语句用变量形式表示一样。通过前面的%s 形式可以看出,si是一个数组,所以s 就是二维数组了。这里要注意一点,scanf()函数在输入字符串时候不能支持空格,看下面的例子:main() char s310; int i; for(i=0;i10;i+) scanf(%s,si); for(i=0;is2i) printf(s1s2n); exit(1); else ; if(s1i=0 & s2i!=0) printf(s1 else if(s2i=0 & s1i!=0) printf(s1s2n); else pri

6、ntf(s1=s2n); 上面的例子就是比较两个字符串大小的,先比较第一个,如果相同,接着比较第二个,如果不相同,则分出大小。一直往后比较,直到其中某一个到0,你也可以先用strlen()函数找出最小的长度。exit()函数的作用是退出程序,具体它的用法可以看看相关资料。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 其实 C语言把我们经常需要的字符串处理函数都做好了,我们只需要调用它即可。如 strcmp()用来比较、 str

7、cpy()用来拷贝等等。看看它们的用法:#include string.h main() char s110,s210,s210; int k; gets(s1); gets(s2); k=strcmp(s1,s2); /*比较 s1 和 s2 大小 */ if(k=0) printf(s1=s2n); else if(k0) printf(s1s2n); else printf(s1 strcpy(s3,s1); /*把 s1 拷贝到 s3*/ printf(%sn,s3); 可以看出,比较大小时,如果ks2; 如果 k=0,则 s1=s2。实际上这是一个函数,具体什么是函数,以及为什么写成那种形式,我们下节再说。这些函数都包含在string.h头文件中,所以在程序的开头,都要写上#include string.h。字符串处理有很多函数,你们可以看看相关的书,也可以看看Turbo C 的帮助。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁