第5章的 c语言学习 数组.ppt

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章的 c语言学习 数组

* * (3) 7,3,4,9,8, 10,18 交换 3,7,4,9,8, 10,18 交换 3,4,7,9,8, 10,18 不交换 3,4,7,9,8, 10,18 交换 3,4,7,8,9, 10,18 第三轮比较结束 (4) 3,4,7,8,9, 10,18 第三轮比较 (5) 3,4,7,8,9, 10,18 (6) 3,4,7,8,9, 10,18 第四轮比较结束 第五轮比较结束 第六轮比较结束 * * main( ) { int i,j,t,a[10]; printf(Input 10 number : \n);  for(i=0;i=9;i++) scanf(“%d”,a[i]); /* 输入10个整数 * / for(i=1;i=9;i++) / * 10 -1轮排序处理* / for(j=0;j9-i;j++) / * 10 – i 次相邻数据比较* / if(a[j]a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } / * 交换数据* / printf(The sorted numbers: \n);  for(i=0;i=9;i++) / * 输出排序后数据* / printf(“%4d”,a[i]); printf(“\n\n”); } 冒泡排序程序 * * 一、C中的字符数据 字符数据 字符常量 字符变量 字符串常量 ‘a’,’A’ ‘\n’,‘\t’ char c; “Turbo C” 二、字符数据的输入和输出 char c,d; scanf(“%c”,c); d=getchar(); char c=‘a’,d=‘b’; printf(“%c”,c); putchar(d); §3 字符数组 §3 字符数组 6.3.1 字符数据 * * 一、 数组中的各个元素均为字符变量 二 、每个元素只能存放一个字符 例:char c[20]={‘a’,’b’,’c’,…..}; c[0]=‘a’,c[1]=‘b’,….最后一个元素:c[19] , 其中字符的个数不得多于20 用字符数组可以存放长度不同的字符串 串:用双引号“ ”括起来的字符或转义符序列。 串长:字符串中所包含的字符数。 串结束标记:C中的串以‘\0’结束。‘\0’称为串结束标记。 6.3.2 字符串数据 * * 字符串在字符数组中一个字符占用一个字节。字符串实际占有的存储单元数量等于字符串长度+1。 要定义一个存放字符串“CHINA”的字符数组c,应定义为:char c[6]; 数组c在内存中 实际存放情况 ‘\0’是在字符串存入字符数组时由系统自动填加的,并不是字符串本身的一部分,在计算串长的时候不包括‘\0’。 字符串在数组中的存储格式 \0 A N I H C 串长=5 c[0] c[1] c[2] c[3] c[4] c[5] * * 1 . 为每一个元素赋初值 char c[6]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’}; 2 . C中可以使用字符串常量为字符数组初始化, 可有三种格式。 char ch[6]={“CHINA”}; char ch[6]=“CHINA”; /* 省略 { } */ char ch[ ]=“CHINA” ; /* 省略说明中字符串长度值 */ 6.3.3 字符数组的初始化 * * 1. 字符串在内存中,系统自动加上‘\0’,作为字符串结束标记,字符串所占字节数为串中字符个数+1 char c[6]=“abcde”; 该串共占6个字节。 2. 程序中系统根据‘\0’来判断字符串是否结束,而不是通过数组长度。例如:char c[6]=“ab”; c的长度为6,而实际到b就结束。 6.3.4 关于字符数组的几点说明 * * 判断: (1) char c[10]={“abcde”}; (2) char c[10]={‘a’,‘b’,‘c’,‘d’,‘e’}; (3) char c[10]=“abcde”; (4) char c[10]={‘a’,‘b’,‘c’,‘d’,‘e’,‘\0’}; 这四种初始化是否等价? C语言并不要求所有的字符数组的最后一个元素必须是‘\0’(如果使用串,系统自动加上)。 (1)=(3)=(4) 用字符串常量为数组初始化的比较 * * 基本数据类型中所有的数组都可以通过循环语句,逐一赋值。 int a[10],i; for

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档