高级语言程序设计教学数组[1]课件

上传人:m**** 文档编号:570784455 上传时间:2024-08-06 格式:PPT 页数:23 大小:324.50KB
返回 下载 相关 举报
高级语言程序设计教学数组[1]课件_第1页
第1页 / 共23页
高级语言程序设计教学数组[1]课件_第2页
第2页 / 共23页
高级语言程序设计教学数组[1]课件_第3页
第3页 / 共23页
高级语言程序设计教学数组[1]课件_第4页
第4页 / 共23页
高级语言程序设计教学数组[1]课件_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《高级语言程序设计教学数组[1]课件》由会员分享,可在线阅读,更多相关《高级语言程序设计教学数组[1]课件(23页珍藏版)》请在金锄头文库上搜索。

1、aa55a44a33a22a11a00n、一、一维数数组的的说明明定定义方式:方式:数据类型数据类型数据类型数据类型 数组名数组名数组名数组名 整型常量表达式整型常量表达式整型常量表达式整型常量表达式 ;例例int a6;一维数组一维数组1 1高级语言程序设计教学数组高级语言程序设计教学数组1 一维数组元素的输入输出一维数组元素的输入输出 int i , a6;for(i= 0; i6; i+ +) scanf(“%d”, &ai);for(i= 0; i6; i+ +) printf(“%5d”, ai);2 2高级语言程序设计教学数组高级语言程序设计教学数组1定定义方式:方式:数据类型数组

2、名数据类型数组名数据类型数组名数据类型数组名 常量表达式常量表达式常量表达式常量表达式1 1 1 1常量表达式常量表达式常量表达式常量表达式2 2 2 2 ;数数组元素元素按行序按行序优先先存存储原因原因: :内存是一内存是一维的的int a32int a32543210a21a20a11a10a01a00二维数组二维数组3 3高级语言程序设计教学数组高级语言程序设计教学数组1int a34; int a34; for(i=0; i3; i+)for(i=0; i3; i+) for(j=0; j4; j+) for(j=0; j4; j+) scanf(%d, &aij); scanf(%d

3、, &aij);二维数组元素的输入输出二维数组元素的输入输出for(i=0; i3; i+)for(i=0; i3; i+) for(j=0; j4; j+) for(j=0; j4; j+) printf(%5d, aij); printf(%5d, aij); printf(n); printf(n); 1 2 3 45 6 7 89 10 11 124 4高级语言程序设计教学数组高级语言程序设计教学数组1字符数组字符数组定定义定定义格式与一格式与一维数数组相同相同字符数字符数组的引用的引用逐个字符引用,与一逐个字符引用,与一维数数组相同相同注意:注意: 字符数字符数组中存放的不一定是字符

4、串中存放的不一定是字符串5 5高级语言程序设计教学数组高级语言程序设计教学数组1逐个数逐个数组元素元素输入入输出出char c15 ;char c15 ;for( i = 0 ; i 15 ; i + )for( i = 0 ; i 15 ; i + ) scanf(“%c”, &ci); scanf(“%c”, &ci); /* ci=getchar(); */* ci=getchar(); */ for( i = 0 ; i 15 ; i + )for( i = 0 ; i 15 ; i + ) printf(“%c”, ci); printf(“%c”, ci); /* putchar(

5、ci);*/* putchar(ci);*/ 字符数字符数组组的的输输入入输输出出6 6高级语言程序设计教学数组高级语言程序设计教学数组1main()main() char c10 =I, ,a,m, ,a, ,char c10 =I, ,a,m, ,a, , b, o, y; b, o, y; int i; int i; for(i=0; i10; i+) for(i=0; i10; i+) printf(%c, ci); printf(%c, ci); printf(n); printf(n); 例例 逐个逐个输出字符序列出字符序列0I I12a a3m m45a a67b b8o o9y

6、 y7 7高级语言程序设计教学数组高级语言程序设计教学数组1n字符串特点:字符串特点:用字符数用字符数组存存储。串尾标志串尾标志串尾标志串尾标志00结束,结束,结束,结束,ASCIIASCII码值为码值为码值为码值为0 0存存储长度度为n的字符串,需要的字符串,需要n+1个字符空个字符空间使用字符数使用字符数组来来处理字符串理字符串时,数,数组元素的个元素的个数也需要多数也需要多1个个例如:例如:char str8 = program;program0str0str1str2str3str4str5str6str78 8高级语言程序设计教学数组高级语言程序设计教学数组1 char str8 =

7、 “China” ;C hi n a0C hi n a0 0 0 字符串初始化字符串初始化char str6 = “China” ; char str6 = “China” ;char str = “China” ;若字符串长度若字符串长度字符数组长度字符数组长度,其余元素自动赋其余元素自动赋0 9 9高级语言程序设计教学数组高级语言程序设计教学数组1常用的字符串处理函数常用的字符串处理函数字符串的字符串的输入入输出出使用格式使用格式输入入/输出函数出函数 %s%s例例例例 用用用用%s%s main()main() char str6; char str6; scanf(%s, str);s

8、canf(%s, str); printf(%s, str); printf(%s, str); 使用字符数使用字符数使用字符数使用字符数组组名名名名时时, ,遇遇遇遇00输输出字符数出字符数出字符数出字符数组结组结束束束束难点:难点:难点:难点:用字符数用字符数用字符数用字符数组组名名名名, ,而不是元素而不是元素而不是元素而不是元素遇空格、遇空格、遇空格、遇空格、TabTab键键或回或回或回或回车结车结束束束束自自自自动动加加加加001010高级语言程序设计教学数组高级语言程序设计教学数组1main()main() char a=h,e,l,l,0,o,!,0; char a=h,e,l,

9、l,0,o,!,0; printf(%s, a); printf(%s, a); 问题问题: : 下面的程序下面的程序下面的程序下面的程序输输出的出的出的出的结结果是多少?果是多少?果是多少?果是多少?输输出:出:出:出:hellhell数数数数组组中有多个中有多个中有多个中有多个00时时, ,遇第一个遇第一个遇第一个遇第一个结结束束束束H He el ll l00o o! !001111高级语言程序设计教学数组高级语言程序设计教学数组1main()main() int i; int i; char a=h,e,l,l,0,o,!,0; char a=h,e,l,l,0,o,!,0; for(

10、 i = 0 ; i 8 ; i + ) for( i = 0 ; i 8 ; i + ) printf( “%c”, ai ); printf( “%c”, ai ); 问题问题: : 下面的程序下面的程序下面的程序下面的程序输输出的出的出的出的结结果是多少?果是多少?果是多少?果是多少?输输出:出:出:出: hell o!hell o!H He el ll l00o o! !001212高级语言程序设计教学数组高级语言程序设计教学数组1main()main() char a15, b5, c5; char a15, b5, c5; scanf(%s%s%s, a, b, c); scanf

11、(%s%s%s, a, b, c); printf(a=%snb=%snc=%sn, a, b, c); printf(a=%snb=%snc=%sn, a, b, c); 运行情况:运行情况:输入:入:How are you?输出:出:a=How b=are c=you?例例例例 逐个逐个输入字符串入字符串0woH0era0?uoyscanfscanf中中中中% %s s格式符格式符格式符格式符, ,遇空格遇空格遇空格遇空格、TabTab或回或回或回或回车结车结束束束束1313高级语言程序设计教学数组高级语言程序设计教学数组1格式:格式:puts(puts(字符数组字符数组字符数组字符数组)

12、 )功能:向功能:向显示器示器输出字符串(并且出字符串(并且输出后出后换行)行)说明:字符数明:字符数组必必须以以0结束束专门的字符串的字符串输入入输出函数出函数字符串字符串输出字符串函数出字符串函数main()main() char str1=China; char str1=China; char str2=Bei jing; char str2=Bei jing; puts(str1); puts(str1); puts(str2); puts(str2); 1414高级语言程序设计教学数组高级语言程序设计教学数组1格式:格式:gets(gets(字符数组字符数组字符数组字符数组) )功

13、能:从功能:从键盘输入一个以入一个以回回回回车结车结束束束束的字符串放入字符的字符串放入字符 数数组中,并自中,并自动加加0说明:明:输入串入串长度度应小于字符数小于字符数组维数数字符串字符串输入函数入函数gets1515高级语言程序设计教学数组高级语言程序设计教学数组1#include #include main( )main( ) char string80; char string80; printf(Input a string:); printf(Input a string:); gets(string); gets(string); puts(string); puts(stri

14、ng); Input a string:How are you?How are you? 1616高级语言程序设计教学数组高级语言程序设计教学数组1字符串字符串连接函数接函数strcat(String Catenate)格式:格式:strcat(strcat(字符数组字符数组字符数组字符数组1,1, 字符数组字符数组字符数组字符数组2)2)功能:把字符数功能:把字符数组2连到字符数到字符数组1后面后面说明:明: 字符数字符数组1必必须足足够大大 连接前接前,两串均以两串均以0结束束; 连接后接后,串串1的的0取消取消,新串最后加新串最后加01717高级语言程序设计教学数组高级语言程序设计教学数

15、组1main()main() char str110=How; char str110=How; char str25=are; char str25=are; strcat(str1, str2); strcat(str1, str2); puts(str1); puts(str1); puts(str2); puts(str2); 0woH0erastr1str1str2str20erawoHstr1str11818高级语言程序设计教学数组高级语言程序设计教学数组1格格式:式: strcpy(strcpy(字符数组字符数组字符数组字符数组1 1 , ,字符串字符串字符串字符串2)2)功功能

16、:能: 将字符串将字符串2,拷,拷贝到字符数到字符数组1中去中去说 明:明: 字符数字符数组1必必须足足够大大 拷拷贝时0一同拷一同拷贝 不能使用赋值语句为一个字符数组赋值不能使用赋值语句为一个字符数组赋值不能使用赋值语句为一个字符数组赋值不能使用赋值语句为一个字符数组赋值例例 char str120, str220; str1=Hello!; str2=str1; 字符串拷字符串拷贝函数函数strcpy (String Copy)strcpy(str1,Hello!“);Strcpy(str2,str1);1919高级语言程序设计教学数组高级语言程序设计教学数组1格格 式:式:strcmp(

17、strcmp(字符串字符串字符串字符串1,1, 字符串字符串字符串字符串2)2)功功 能:比能:比较两个字符串两个字符串比比较规则:对两串从左向右逐个字符比两串从左向右逐个字符比较(ASCII码),), 直到遇到不同字符或直到遇到不同字符或0为止止返返 回回 值:返回:返回int型整数型整数 若字符串若字符串1 字符串字符串2,返回,返回正整数正整数正整数正整数 若字符串若字符串1 = 字符串字符串2,返回,返回零零零零说 明:明:字符串比字符串比字符串比字符串比较较不能用不能用不能用不能用=,必必须用用strcmp字符串比字符串比较函数函数strcmp (String Compare)202

18、0高级语言程序设计教学数组高级语言程序设计教学数组1比比较字符串的大小:字符串的大小:strcmp(A,B)strcmp(a,A) strcmp(ABC,AB) strcmp(computer,compare) strcmp(36,3654) 返回返回值: A-B 0 C-0 0 u-a 0 0-5 02121高级语言程序设计教学数组高级语言程序设计教学数组1字符串字符串长度函数度函数strlen (String Length)格格 式:式:strlen(strlen(字符数组字符数组字符数组字符数组) )功功 能:能:计算字符串算字符串长度度返回返回值:返回字符串返回字符串返回字符串返回字符串实际长实际长度,不包括度,不包括度,不包括度,不包括00在内在内在内在内例例例例 对于以下字符串,于以下字符串,strlen(s)的的值为:(1)char s10=A,0,B,C,0,D;(2)char s=tb0willn;(3)char s=x69082n; 答案:答案:答案:答案:1 1 3 3 1 1 2222高级语言程序设计教学数组高级语言程序设计教学数组1字符串字符串输入入输出函数:出函数: 包含文件是包含文件是 stdio.h 字符串字符串处理函数:理函数:包含文件是包含文件是 string.h 2323高级语言程序设计教学数组高级语言程序设计教学数组1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号