




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章 字符型数据,一、字符常量 定义:字符常量是用单引号括起来的一个字符(a, 5,$,D )和 转义字符(n,0,101,x41)构成的字符序列。 说明: 字符常量在内存中占一个字节,存放的是字符的ASCII代 码值,所有字符常量都作为整型常量来处理。 二、字符串常量 定义: 字符串常量是用一对双引号(“”)括起来的字符序列。 例如:“China”,”a”,”$123.45”,”东财大” 说明: C语言规定,在字符串常量中,一个字符占一个字节,在 字符 串的结尾有一个结束标志空字符“0”,C中无字符串 变量,需要时用字符数组来存放。 总计6字节,6.1 字符型常量,转义字符功能对照表 字符
2、形式 功 能 字符形式 功 能 n 回车换行 反斜杠字符 t 横向跳八格(Tab) 单引号字符 v 竖向跳格 “ 双引号字符 r 回车符 ddd 三位八进制数 f 换行符 xhh 二位十六进制数 b 退格符(Bspace键) 0 空值,例6.1 有如下程序: main() printf(“_ _ab_ ct_derftgn”); printf(“htibbj_ _ _k”); 运行结果: _ _ ab _ c _ _ _ _ _ _ _ _ _de (理论运行结果) f_ _ _ _ _ _ _ _ g _ _ _ _ _ de (实际运行结果) h_ _ _ _ _ _ _ _ i (理论运
3、行结果) h_ _ _ _ _ _ j_ _ _k (实际运行结果),一、字符变量的定义 定义:字符变量是存放字符常量的存储单元,使用前需先定义。 例如: char c1,c2; c1=a;c2=b; ch1=+;ch2=t; ch3=042;ch4=x6f; 二、字符型数据与整型数据的关系 在C语言中,字符型数据与整型数据之间可以通用,可以用整型格式输出(或运算),也可以用字符格式输出(或运算)。 ASCII码的值域: -128127 有符号 (1字节) 0255 无符号 (1字节),6.2 字符型变量,例1:输出小写字符a,b及ASCII码。 main() char c1,c2; c1=9
4、7;c2=98; printf(“%d,%c,%d,%c”,c1,c1,c2,c2); 运算结果:97,a,98,b 例2:将终端输入的一行字符中所有的小写字母转换 成大写字母。 #include “stdio.h” main() char c; in: scanf(“%c”, ,例3:在终端上输出英文26个小写字母、数字09 及 它们的ASCII代码。字母与数字分两行输出。 函数如下: #include “stdio.h” main() char c1,c2;int i,j; for (j=0;j10;j+) c1=j+48;printf(“c=%c ASCII=%d”,c1,c1); pr
5、intf(“n”); for (i=0;i26;i+ ); c2=i+97; printf(“c=%c ASCII=%d”,c2,c2); printf(“n”); ,一、字符输出函数 格式:putchar (ch); 功能:向终端(输出设备)输出一个字符。 说明:1、 ch 为字符变量或整型变量; 2、使用I/O库函数时要用预编译命令 #include “stdio.h” 将文件包含在源文件中。 例1:在终端上输出字符”boy”。 #include “stdio.h” main() char a,b,c; a=b;b=o;c=y; putchar(a);putchar(b);putchar
6、(c) ; putchar(n); ,6.3 字符输入/输出函数,二、字符输入函数 格式:ch=getchar (); 功能:从终端或指定输入设备输入一个字符。 说明:1、输入时,空格、回车符都将作为字符输入; 2、在用户键入回车时,输入才开始。 例2:从键盘上输入一个字符,并输出到终端。 #include “stdio.h” main() char c; c=getchar(); putchar(c); /*使用一条语句putchar(getchar() */ putchar(n); ,一、将输入的一串密码译成正文,密码以字符“#”结 束,其规则如下:若是字母则转换成小写字母: a-b,b-
7、c,c-d,z-a,其它字符照原样输出。 分析: 1、用当循环输入每一个密码,直到输入“#”; 2、用函数isalpha判断密码是否为字母; 3、用tolower函数将字母转换成小写字母; 4、实现转换,其规则是字母的ASCII码值a-z 依次加1,若字母是z,则减25。 5、输出正文,输入下一个密码,直到译码结 束为止。,6.4 程序举例,函数如下: #include “stdio.h” #include “ctype.h” main() char c; c=getchar(); while(c!=#) /*遇到结束标志循环结束*/ if (isalpha(c) ) /*判断是否是字母*/
8、c=tolower(c); /*大写字母转换成小写字母*/ if (c=z) c=z-25; /* 判断是否是字母z*/ else c+=1; /* 其它字母转换*/ putchar(c);c=getchar(); printf(“n”); ,二、编程统计输入的字符中,空格符、换行符和横向 跳格(制表)符的个数。 分析: 1、用当循环输入每一个字符,直到字符输入结 束(EOF); 2、用函数isspace判断是否为空格符、换行符和 横向跳格(制表)符。 3、若是,计数器n 加1,否则继续输入; 4、输出统计个数。 函数如下: #include “stdio.h” #include “ctype.h” main() long n=0;char ch; while(ch=getchar()!=EOF) /*遇到EOF循环结束*/ if (isspace(ch) ) n+; /*是空格等,计数器加1*/ printf(“n=%ldn”,n); ,编程计算以下各题,并上机调试。 一、输入一行字符(用回车结束),输出每个字符 及与之对应的ASCII代码值,每行输出三对。 二、输入一行数字字符(用EOF结束),每个数字 字符的前
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石家庄市第四十中学2025年高一下化学期末检测模拟试题含解析
- 2025届山东省新泰第一中学北校化学高一下期末学业质量监测试题含解析
- 2025届浙江省浙南联盟化学高一下期末教学质量检测试题含解析
- 校园读物日常管理办法
- 民工衣服库存管理办法
- 晚会捐赠收入管理办法
- 冬季水管防护管理办法
- 合肥苗木采伐管理办法
- 现代语文教育数字化资源整合平台建设研究
- 小企业会计准则的实务操作与案例分析
- 2024年辽宁沈阳水务集团有限公司招聘笔试真题
- 潍坊交通发展集团有限公司招聘笔试题库2025
- 胸痛中心质控管理
- 2025时政试题及答案(100题)
- 第七章城市轨道交通屏蔽门设备接口68课件
- 国家开放大学汉语言文学本科《中国现代文学专题》期末纸质考试第三大题分析题库2025春期版
- 成都大学附属中学英语新初一分班试卷含答案
- 新22J01 工程做法图集
- 创新创业大赛项目商业计划书模板
- 2025年1月国家开放大学汉语言文学本科《心理学》期末纸质考试试题及答案
- 糖尿病酮症酸中毒疑难病例护理
评论
0/150
提交评论