- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 数组;一维数组的引用
数组必须先定义,后使用
只能逐个引用数组元素,不能一次引用整个数组
数组元素表示形式: 数组名[下标]
其中:下标可以是常量或整型表达式;一维数组的初始化
初始化方式 ;程序举例;例 用数组求Fibonacci数列前20个数;例 用冒泡法对10个数排序;例;#include stdio.h
main()
{ int a[10],i,j,t;
printf(Input 10 numbers:\n);
for(i=0;i10;i++)
scanf(%d,a[i]);
printf(\n);
for(j=0;j10-1;j++)
for(i=0;i10-j-1;i++)
if(a[i]a[i+1])
{t=a[i]; a[i]=a[i+1]; a[i+1]=t;}
printf(The sorted numbers:\n);
for(i=0;i10;i++)
printf(%d ,a[i]);
};例 用简单选择法对10个数排序;例;#include stdio.h
main()
{ int a[10],i,j,k,x;
printf(Input 10 numbers:\n);
for(i=0;i10;i++)
scanf(%d,a[i]);
printf(\n);
for(i=0;i10-1;i++)
{ k=i;
for(j=i+1;j10;j++)
if(a[k]a[j]) k=j;
if(i!=k)
{ x=a[i]; a[i]=a[k]; a[k]=x;}
}
printf(The sorted numbers:\n);
for(i=0;i10;i++)
printf(%d ,a[i]);
};7.2 二维数组及多维数组
二维数组的定义
定义方式:
数据类型 数组名[常量表达式][常量表达式];;二维数组理解;二维数组元素的引用
形式: 数组名[下标][下标]
二维数组元素的初始化
分行初始化:;
程序举例;例 求二维数组中最大元素值及其行列号;例 读入下表中值到数组,分别求各行、各列及表中所有数之和;7.3 字符数组和字符串
字符数组
定义 ; 例 char diamond[][5]={{., .,*},{.,*,.,*},
{*, ., ., . ,*},{.,*, .,*},{., .,*}};
;例 输出一个字符串;字符串
字符串及其结束标志
无字符串变量,用字符数组处理字符串
字符串结束标志:‘\0’;字符串的输入输出
逐个字符I/O: %c
整个字符串I/O: %s;例 main( )
{ char a[5]={‘H’,’e’,’l’,’l’,’o’};
printf(“%s”,a);
};main()
{
char a[]={h,e,l,\0,l,o,\0};
printf(%s,a);
};main()
{
int i;
char a[5];
scanf(%s,a);
for(i=0;i5;i++)
printf(%d,,a[i]);
};例 字符串输入举例;例 若准备将字符串“This is a string.”记录下来,
错误的输入语句为:
(A)scanf(“%20s”,s);
(B)for(k=0;k17;k++)
s[k]=getchar();
(C)while((c=getchar())!=‘\n’)
s[k++]=c;;常用的字符串处理函数
包含在头文件 string.h
;字符串连接函数strcat
格式:strcat(字符数组1,字符数组2)
功能:把字符数组2连到字符数组1后面
返值:返回字符数组1的首地址
说明:?字符数组1必须足够大
?连接前,两串均以‘\0’结束;连接后,串1的‘\0’取消,
新串最后加‘\0’;例 strcpy与strcat举例;字符串比较函数strcmp
格式:strcmp(字符串1,字符串2)
功能:比较两个字符串
比较规则:对两串从左向右逐个字符比较(ASCII码),
直到遇到不同字符或‘\0’为止
返值:返
文档评论(0)