版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022/7/18电气与信息工程学院计算机系制造Lesson 11 数据的组织构造2022/7/18电气与信息工程学院计算机系制造学习目的:31掌握二维数组的运用2022/7/18电气与信息工程学院计算机系制造3字符数组2复习字符串用双引号括起来的一串字符“1234“Tom“C Lanuage Program2022/7/18电气与信息工程学院计算机系制造3字符数组2字符数组:数组元素的类型为字符hello02022/7/18电气与信息工程学院计算机系制造3字符数组2字符数组的定义char ch10; 2022/7/18电气与信息工程学院计算机系制造3字符数组2字符数组的初始化(1) 字符数组
2、的初始化的根本方法char ch5=h,e,l,l,o;(2) 省略长度阐明如: char ch =h,e,l,l,o;(3) 运用字符串初始化字符数组: char ch =“abcde; char ch =“abcde;abcde02022/7/18电气与信息工程学院计算机系制造3字符数组2字符串在计算机中表示 char ch=“123412340字符数组字符串终了标志数组ch2022/7/18电气与信息工程学院计算机系制造3字符数组2字符串的输入输出 1、gets(str); 2、scanf(“%s, str);gets( ) 函数以换行符或文件终了符EOF作为输入的终了标志,因此在输入的
3、字符串中允许包含空格和制表符;scanf( ) 函数那么以空格、制表符、换行符和文件终了符EOF作为输入的终了标志,因此,在输入的字符串中不允许包含这些字符。假设包含了它们,将作为字符串输入的终了标志处置。 char str100;2022/7/18电气与信息工程学院计算机系制造3字符数组2字符串的输出 1、puts(str); 2、printf(%s, str);puts将字符串的内容显示到规范输出设备屏幕上,并换行。 2022/7/18电气与信息工程学院计算机系制造3字符数组2字符串的输出 1、puts(str); 2、printf(%s, str);puts将字符串的内容显示到规范输出设
4、备屏幕上,并换行。 2022/7/18电气与信息工程学院计算机系制造3字符数组2 运转如下程序第一次:输入face,察看结果第二次:输入123 abc,察看结果lesson11_11_1.clesson11_11_2.c#include #include int main( ) char num1100; gets(num1); puts(num1); return 0;#include #include int main( ) char num1100; scanf(%s,num1); printf(%s,num1); return 0;2022/7/18电气与信息工程学院计算机系制造3字符
5、数组2练习1:从键盘输入一个单词,然后将其反着输出,例如输入face输出:ecafface0数组ch2022/7/18电气与信息工程学院计算机系制造3字符数组2练习2:从键盘输入一个字符串,将每个字符往前挪动一个位置,最后一个移到第一个。例如输入1234输出234112340数组ch23410lesson11_ktlx2.c2022/7/18电气与信息工程学院计算机系制造gets(char* str);从键盘输入字符串puts(char *str);将字符串在屏幕上输出atof( char *str);将字符串转换成小数atoi(char *str);将字符串转换成int整数atol(char
6、 *str);将字符串转换成long整数itoa(int num, char *str, int radix);将num转换成radix进制的字符串ltoa(long num, char* str, radix); 将num转换成radix进制的字符串strlwr(char *str);将str转换成小写strupr(char *str);将str转换成大写strlen(char *str);求str的长度strcmp(char *str1,char * str2);比较str1和str2的大小,如果str1str2,返回正数strcpy(char *str1,char * str2);将字符
7、串str2拷贝到str1中1strcat(char *str1, char *str2);将字符串str2连接到str1后2022/7/18电气与信息工程学院计算机系制造3字符数组2字符串转换成数值类型 atof(str); atoi(str); atol(str);其中str是一个字符串。atof() 的前往类型是double,它可以将字符串str转换成一个双精度数值;atoi() 的前往类型是int,它可以将字符串str转换成普通整型;atol() 的前往类型是long,它可以将字符串str转换生长整型long。 2022/7/18电气与信息工程学院计算机系制造3字符数组2例1:将用户以字
8、符串方式输入的两个实型数值转换成double类型,并显示输出这两个实型数值及它们相加的结果。 2022/7/18电气与信息工程学院计算机系制造#include #include int main( ) char num120, num220; double d1, d2, sum; printf(nEnter the first number:); gets(num1); /* 输入第1个用字符串表示的实型数值 */ printf(Enter ths second number:); gets(num2); /* 输入第2个用字符串表示的实型数值 */ d1 = atof(num1); /*
9、将第1个字符串转换成double类型 */ d2 = atof(num2); /* 将第2个字符串转换成double类型 */ sum = d1+d2; /* 将2个double类型数值相加 */ printf(n%s+%s=%.3lf, num1, num2, sum); /* 显示结果 */ return 0;lesson11_01.c2022/7/18电气与信息工程学院计算机系制造3字符数组2数值类型转换成字符串 itoa(num, str, radix); ltoa(num, str, radix); 其中str用于存放结果的字符串,radix是用户指定的进制数,它的取值必需介于236
10、之间。在itoa( ) 函数中的num是一个int类型的数值;在ltoa( ) 函数中的num是一个long类型的数值。 2022/7/18电气与信息工程学院计算机系制造3字符数组2例2:将用户输入的长整型long类型数值转换成以字符串方式表示的十六进制、八进制和二进制数值,并显示输出。 2022/7/18电气与信息工程学院计算机系制造#include #include int main( ) char str33; long value; printf(nEnter a long number:); scanf(%ld, &value); /*输入一个long类型的数值*/ ltoa(val
11、ue, str, 16); /*转换成用字符串方式表示的十六进制数值*/ printf(nThe hexadecimal of %ld is %s, value, str); ltoa(value, str, 8); /*转换成用字符串方式表示的八进制数值*/ printf(nThe octadecimal of %ld is %s, value, str); ltoa(value, str, 2); /*转换成用字符串方式表示的二进制数值*/ printf(nThe binary of %ld is %s, value,str); return 0;lesson11_02.c2022/7/1
12、8电气与信息工程学院计算机系制造3字符数组2大小写转换 strlwr(str); strupr(str);str是一个字符串。规范函数strlwr( ) 可以将字符串str中出现的一切大写字母转换成小写字母;规范函数strupr( ) 可以将字符串str中出现的一切小写字母转换成大写字母。 2022/7/18电气与信息工程学院计算机系制造3字符数组2计算字符串长度 strlen(str);这个函数的功能是前往字符串中所包含的字符个数,即字符串长度。字符串终了标志0不计算在内。 字符串比较 strcmp(str1, str2);两个字符串进展比较时将根据每个字符对应的ASCII编码决议其大小。
13、2022/7/18电气与信息工程学院计算机系制造3字符数组2例4:假设用户的密码是“administrators,下面这个程序将用于检测用户输入的密码能否正确。假设不正确,给出相应的提示信息,并恳求用户重新输入。 分析:循环的从键盘输入一个字符串,用来和administrators比较,假设相等终了循环2022/7/18电气与信息工程学院计算机系制造#include #include int main( ) char password20; /* 存放用户输入的密码 */ printf(nEnter password: ); gets(password); /* 输入密码 */ /* 检测用户
14、输入的密码,假设不正确,给出提示,并恳求重新输入 */ while (strcmp(password, administrators) != 0) printf(nInvalid passwordnn); printf(Enter password, again: ); gets(password); printf(OK); /*输入正确,显示OK*/ return 0;lesson11_04.c2022/7/18电气与信息工程学院计算机系制造3字符数组2字符串拷贝 strcpy(str1, str2);其中str2是将要被拷贝的字符串,str1是用于存放拷贝结果的存储区域。 字符串衔接 st
15、rcat(str1, str2);其中str1和str2是两个字符串。这个函数的功能是:将str2衔接在str1之后,并在终了处添加一个字符串终了符02022/7/18电气与信息工程学院计算机系制造3字符数组2例5:根据用户的选择输出相应的字符串。分析:1、定义好需求输出的字符串2、从键盘输入一个数3、判别输入的数,根据要求衔接成一个新的字符串后输出2022/7/18电气与信息工程学院计算机系制造#include #include int main( ) char str180 = This is a ; char str2 = program.; char str3 = Java; char
16、 str4 = Pascal; char str5 = C; char str6 = C+; int choice; printf(n = MENU =n); /* 菜单 */ printf(n Java . . 1); printf(n Pascal . 2); printf(n C . . 3); printf(n C+ . 4); printf(n choice:); scanf(%d, &choice); /* 用户做出选择 */lesson11_15.c2022/7/18电气与信息工程学院计算机系制造switch (choice) /* 根据用户的选择拼接字符串 */ case 1:
17、strcat(str1, str3); strcat(str1, str2); break; case 2:strcat(str1, str4); strcat(str1, str2); break; case 3:strcat(str1, str5); strcat(str1, str2); break; case 4:strcat(str1, str6); strcat(str1, str2); break; default:strcpy(str1, Error); break; printf(n%s, str1); /* 显示字符串 */ return 0;2022/7/18电气与信息工程学院计算机系制造3字符数组 课堂练习2从键盘输入一个字符串,将其按如下规那么转换后输出A(a)-B(b)B(b)-C(c).Y(y)-Z(z)Z(z)-A(a)2022/7/18电气与信息工程学院计算机系制造3课堂练习6 例题:请输入10个学生的姓名和成果,输出高于平均分的学生姓名和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 装载机用车合同(2篇)
- 第24课《愚公移山》八年级语文上册精讲同步课堂(统编版)
- 2024年吉林省长春市中考地理真题卷及答案解析
- 16.1《赤壁赋》-高一语文上学期同步备课拓展(统编版必修上册)
- 说课稿课件政治
- 西京学院《现代教育技术》2023-2024学年第一学期期末试卷
- 西京学院《企业级框架基础》2021-2022学年期末试卷
- 社区环境 课件
- 外研版必修一module2-mynewteachers(reading)课件
- 西华师范大学《装饰绘画》2022-2023学年第一学期期末试卷
- 当代大学生幸福感课件
- 人感染H7N9禽流感流行病学调查方案
- 职业规划大赛机器人工程
- 2024年房颤合并冠心病的抗栓治疗pptx
- 五年级科学 《光的反射》 一等奖
- 如何提高个人征信评分
- 《商朝的发展》课件
- 肺疾病护理的新进展与研究
- 贵州省黔东南州2022-2023学年七年级上学期期末文化水平测试数学试卷(含答案)
- 《农村三资管理管理》课件
- 中国56个民族简介(图片很全)
评论
0/150
提交评论