- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
;数组:具有相同数据类型的若干个有序数据的集合。
数组的分类:
一维数组
二维数组
字符数组;01.一维数组;本章重点难点;;1.一维数组的定义;3.一维数组元素的引用;4.应用举例;2)编写十进制数转换成二进制的程序。
把一个十进制数x转换成二进制数的基本思路是:不断把x%2的余数存入a数组中(x值为x不断除以2后的商),直至x值为0,最后逆序输出a数组各元素值。比如,十进制数26转化为二进制数为11010如图所示。
;;1.二维数组的定义;2.二维数组的初始化;3.二维数组元素的引用;1)二维数组的输入和输出。定义一个二整型数组arr[3][4],向其中输入数据并依次输出。
main()
{
intarr[10],i,j;
for(i=0;i3;i++)
for(j=0;j4;j++)
scanf(%d,arr[i][j]);
printf(“该二维数组为:\n”);
for(i=0;i3;i++)/*逐行输出共3行*/
{ for(j=0;j4;j++) /*每行输出4个元素*/
printf(%4d,x[i][j]);
printf(\n);}/*一行元素输出后换行*/
};?;3)输出杨辉三角形。
杨辉三角,是二项式系数在三角形中的一种几何排列。例如,图3-6所示6×6的a矩阵,数字部分就构成一个杨辉三角形。它有如下特点:
①第1列及主对线元素为1,即:
for(i=1;i=6;i++)
a[i][1]=a[i][i]=1;
②从第3(i=3)行开始,各行第2列(j=2)到第i-1列各项值等于该项左肩值加上头顶值,即:
for(i=3;i=6;i++)
for(j=2;j=i-1;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
根据以上两步就形成了杨辉三角形。
③输出杨辉三角形。第1行输出1个数,第2行输出2个数,第i行输出i个数。;;1.字符数组的定义;3.字符数组元素的引用;5.字符串;表3-1字符串和字符数组在使用上的不同;2)例3-13编写十进制数转换成十六进制数的程序。
思路:十进制数转换成十六进制数的方法和例3-5中十进制数转换成二进制数一样,所不同的是:
转换成十六进制数中除数为16。
十六进制数有16个数字:0~9、A~F,需要用字符数组来保存。
;1)字符串输入函数gets(字符数组):从键盘输入一个字符串到字符数组。
例如:charch[8]; /*该串占8字节内存*/
2)字符串输出函数puts(字符数组):将一个字符串输出。
例如:charch[]={abcd};/*该串占5个字节内存,即ch数组长度为5*/
puts(ch);
3)求字符串长度的函数strlen(字符数组):求字符数组所表示串的长度。
例如:strlen(abcd)的结果为4。
;4)字符串连接函数strcat(字符数组1,字符数组2):把字符数组2所表示的串连到字符数组1所表示的串的后面,并删去串1后的结束标记“\0”。
说明:
①字符数组1必须足够大,以便容纳连接后的串2。
②连接前,两串均以“\0”结束;连接后,串1的“\0”取消,新串最后加“\0”。
③本函数返回值是字符数组1的首地址。
;5)字符串比较函数strcmp(字符数组1,字符数组2)
;1)编写求字符串长度的程序。
思路:输入一个字符串s,设置一个计数器i,初值为0,从s[0]开始扫描串中的各个元素,若不为\0,则i加1,否则程序结束。最后的i值即为串长度。
文档评论(0)