版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章:字符型数据,6.1 字符型常量 6.1.1 字符常量 C语言中,字符常量是用单引号括起来的一个字符。 一个字符常量代表 Ascll 字符集中的一个字符。,a 97 A 65 B 66 32 0 48 1 49,A AB “A”,6.1.2 转义字符常量,转义字符又称反斜线字符,它是以一个斜线开头后跟一个 特定的字符,来代表某一个特定的字符。 n :回车换行 t :代表Tab键 r :回车不换行 : ” : ” ddd :八进制数代表一个字符 xhh :十六进制代表一个字符,6.1.2 转义字符常量,转义字符实例: printf(“ABb”EF”); printf(“ABbE”rF”);
2、,运行结果:FE”,6.1.2 转义字符常量,(2)反斜线后的八进制数可以不用0开头。 101=A 141=a 023 028 (3)反斜线后的十六进制数只可由小写字母x开头。 x41 x6d,6.1.3 字符串常量,字符串常量是由双引号括起来的一串字符 例:”ABCD” “A” “a #%”,6.1.4 可对字符量进行运算,对字符运算实际上是对字符的ASCII码值进行运算 例: A+1=B b-1=a C +2=E A+32=a b-32=B 1-0=1 9-0=9 1+0=1 4+0=4,6.2 字符变量,char c; char c1=A,c2=b; char ch=65;,6.3 字符
3、的输入和输出,6.3.1 调用 printf 和 scanf 函数输出和输入字符 用printf函数输出字符时只需要使用格式说明%c。 例: main( ) char c1,c2; c1=A,c2=B; printf(“%d,%c”,c1,c2); ,运行结果:65,B,用scanf函数输入字符时也要使用格式说明%c。 注意:当使用的格式说明中%c一个紧接一个时,字符之间不应有间隔符。 例: main() char c1,c2; scanf(“%c%c”, ,6.3 字符的输入和输出,6.3 字符的输入和输出,注意交叉输入: main() char c1,c2; int x,y; scanf(
4、“%d%c%d%c”, ,6.3 字符的输入和输出,可以在格式字符前加一个整数,指定输入数据所占宽度: main( ) char c1,c2; scanf(“%4c%4c”, ,注意:putchar和getchar()两个函数每次只能输出或输入一个字符 putchar函数用于输出字符,调用形式如下: putchar (ch) 其中ch可以是字符变量或是字符常量 getchar函数用于输入字符,其调用形式如下: ch=getchar( ) 注意:在输入时,空格、回车符都将作为字符读入.,6.3.2 调用 putchar和getchar函数输出和输入字符,6.4 程序举例,例6.2 以下程序段等待
5、从终端输入一个字符当按Enter键时, 程序才往下继续执行。 main( ) printf (“Press Enter to continuen”); while ( getchar( )!=n ); ,应用举例,ch=getchar( ) ch=getchar( )!=n (ch=getchar( )!=n while( (ch=getchar( ) )!=n ) 循环体;,main( ) char ch; while( ( ch=getchar( ) )!=n ) if(ch=a ,例6.3 以下程序把从终端输入的一行字符中所有的小写字母转换成大写字母,其他字符不变。,AaBb#Dd,习题
6、 6.22 请编程统计输入的一行中小写字母的个数。,main() char ch; int n=0; while( (ch=getchar( ) )!=n ) if(ch=a ,AaBb#Dd,习题 6.21 请编程统计输入的行数,用!结束输入,!号所在行不计行数。,main() char ch; int n=0; while( ( ch=getchar( ) ) !=! ) if(ch=n) n+; printf(“n=%d”,n); ,Go To School !,main( ) char ch; long n=0; while( (ch=getchar( ) ) != ! ) if(ch
7、= |ch=n|ch=t) n+; printf(“n=%ld”,n); ,例 6.4 编写程序统计输入的字符中空格符、换行符和横向跳 格符的个数,用!号结束输入。,main( ) char ch; while( ( ch=getchar( ) ) != ) if ( ch=A ,例6.5 把一串密码译成正文,6.1 C语言中的简单数据类型有 A)整型、实型、逻辑型 B)整型、实型、字符型 C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型 6.2 C语言中,字符(char)型数据在微机内存中的存储形式是 A)反码 B)补码 C)EBCDIC码 D)ASC码 6.3 设有语句char a
8、= 72; , 则变量a A)包含1个字符 B)包含2个字符 C) 包含3个字符 D)说明不合法 6.4 C语言中不合法的字符常量是 A)xff B) 65 C) x=(x=A 程序的输出结果是: A) A B) a C) Z D) z,6.9 以下程序的输出结果是 A)67,C B)B,C C)C,D D)不确定的值 main( ) char ch1,ch2 ; ch1= A+ 5-3 ; ch2= A+ 5-3; printf(%d,%cn,ch1,ch2) ; ,main( ) int c; while( (c=getchar( ) )!=n) switch(c-2) case 0: c
9、ase 1: putchar(c+4); case 2: putchar(c+4); break; case 3: putchar(c+3); default: putchar(c+2); break; printf(“n”); ,课后习题 6.10,2473,6.11 若变量已正确定义,要求用语句: scanf( “ %f%c%f%c ”,给c1赋予字符%,给c2赋予 字符#,给a赋予2.0给b赋予4.0,则正确的输入形式是: (_代表空格,代表Enter键) A) 2.0_%_4.0_# B) 2.0%4.0_# C) 2%_ _4# D) 2_%_4_# ,课后习题 6.11,6.20 请编写程序,输入一行数字字符(用回车结束),每个数字字符的前后都有空格,请编程,把这一行中的数字转换成一个整数。例如,若输入: (CR代表Enter键)p-75 2 4 8 3 CR,main( ) char ch; int n=0; while( ( ch=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论