lesson11数据的组织结构一二维数组.ppt
《lesson11数据的组织结构一二维数组.ppt》由会员分享,可在线阅读,更多相关《lesson11数据的组织结构一二维数组.ppt(42页珍藏版)》请在三一文库上搜索。
1、Lesson 11 数据的组织结构,1,学习目标:,1,掌握二维数组的使用,2,字符数组:数组元素的类型为字符,3,字符数组的定义,char ch10;,4,字符串,用双引号括起来的一串字符,5,字符串在计算机中表示,“1234”,字符数组,字符串结束标志,6,字符数组的初始化,(1) 字符数组的初始化的基本方法 char ch5=h,e,l,l,o; (2) 省略长度说明如: char ch =h,e,l,l,o; (3) 使用字符串初始化字符数组: char ch =“abcde”; char ch =“abcde”;,7,字符串的输入输出 1、gets(str); 2、scanf(“%s
2、”, str); gets( ) 函数以换行符或文件结束符EOF作为输入的结束标志,因此在输入的字符串中允许包含空格和制表符; scanf( ) 函数则以空格、制表符、换行符和文件结束符EOF作为输入的结束标志,因此,在输入的字符串中不允许包含这些字符。如果包含了它们,将作为字符串输入的结束标志处理。,char str100;,8,字符串的输出 1、puts(str); 2、printf(%s”, str); puts将字符串的内容显示到标准输出设备屏幕上,并换行。,9,字符串转换成数值类型 atof(str); atoi(str); atol(str); 其中str是一个字符串。atof()
3、 的返回类型是double,它可以将字符串str转换成一个双精度数值;atoi() 的返回类型是int,它可以将字符串str转换成普通整型;atol() 的返回类型是long,它可以将字符串str转换成长整型(long)。,10,例1:将用户以字符串形式输入的两个实型数值转换成double类型,并显示输出这两个实型数值及它们相加的结果。,11,#include #include int main( ) char num120, num220; double d1, d2, sum; printf(“nEnter the first number:“); gets(num1); /* 输入第1个
4、用字符串表示的实型数值 */ printf(“Enter ths second number:“); gets(num2); /* 输入第2个用字符串表示的实型数值 */ d1 = atof(num1); /* 将第1个字符串转换成double类型 */ d2 = atof(num2); /* 将第2个字符串转换成double类型 */ sum = d1+d2; /* 将2个double类型数值相加 */ printf(“n%s+%s=%.3lf“, num1, num2, sum); /* 显示结果 */ return 0; ,12,数值类型转换成字符串 itoa(num, str, rad
5、ix); ltoa(num, str, radix); 其中str用于存放结果的字符串,radix是用户指定的进制数,它的取值必须介于236之间。在itoa( ) 函数中的num是一个int类型的数值;在ltoa( ) 函数中的num是一个long类型的数值。,13,例2:将用户输入的长整型(long类型)数值转换成以字符串形式表示的十六进制、八进制和二进制数值,并显示输出。,14,#include #include int main( ) char str33; long value; printf(“nEnter a long number:“); scanf(“%ld“, ,15,大小写
6、转换 strlwr(str); strupr(str); str是一个字符串。标准函数strlwr( ) 可以将字符串str中出现的所有大写字母转换成小写字母;标准函数strupr( ) 可以将字符串str中出现的所有小写字母转换成大写字母。,16,例3:统计一段文本中每个英文字母出现的次数。,分析: 定义一个数组letter,存放英文字母出现的次数,letter,循环字符数组,针对每个字母,找到其在数组letter中的对应位置,然后加1,17,letter,如何确定每个字母在letter中的位置呢? A 对应 letter0 B 对应 letter1 C 对应 letter2,下标:0 A-
7、A 下标:1 B-A 下标:2 C-A,18,#include #include #include #define NUM 26 int main( ) int letterNUM = 0; /* 用于存放统计结果的一维数组 */ char str80; /* 存放以字符串形式输入的文本 */ int i; printf(“nEnter a text line“); gets(str); /* 输入文本 */ strupr(str); /* 将文本中的所有小写字母转换成大写字母 */ for (i=0; stri!=0; i+) /* 统计每个字母出现的次数 */ if (isalpha(st
8、ri) letterstri-A = letterstri-A+1; for (i=0; iNUM; i+) /* 输出统计结果 */ printf(“n%c:%d“, A+i, letteri); return 0; ,19,计算字符串长度 strlen(str);这个函数的功能是返回字符串中所包含的字符个数,即字符串长度。字符串结束标志0不计算在内。 字符串比较 strcmp(str1, str2);两个字符串进行比较时将依据每个字符对应的ASCII编码决定其大小。,20,例4:假设用户的密码是“administrators”,下面这个程序将用于检测用户输入的密码是否正确。如果不正确,给出
9、相应的提示信息,并请求用户重新输入。,分析: 循环的从键盘输入一个字符串,用来和administrators比较,如果相等结束循环,21,#include #include int main( ) char password20; /* 存放用户输入的密码 */ printf(“nEnter password: “); gets(password); /* 输入密码 */ /* 检测用户输入的密码,如果不正确,给出提示,并请求重新输入 */ while (strcmp(password, “administrators“) != 0) printf(“nInvalid passwordnn“)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- lesson11 数据 组织 结构 二维 数组
链接地址:https://www.31doc.com/p-2202075.html