#include <stdio.h>
main()
{
char c;
char d;
c = ;
d = ''; if (c == d)
{
printf("yes\n");
}
else
{
printf("no\n");
}
}

字符必须用单引号

 #include <stdio.h>
main()
{
char ch = 'A'; /*字符必须用单引号*/
}

逃逸字符

用来表达无法印出来的控制字符或特殊字符,它由一个反斜杠\开头,后面跟上另一个字符,这两个字符合起来,组成了一个字符。

 #include <stdio.h>
main()
{
printf("请分别输入身高的英尺和英寸,""如输入\"5 7\"表示5英尺7英寸:");
}

输出结果:

请分别输入身高的英尺和英寸,如输入"5 7"表示5英尺7英寸:请按任意键继续. . .

6.1 一个整数,只要它的值在0-256范围内,也可以用字符形式输出;反之,一个字符型数据也可以用整数形式输出。

 #include <stdio.h>
main()
{
char c = 'a';
int i = ; printf("%c,%d\n", c, c);
printf("%c,%d\n", i, i);
}

输出格式:

a,97
a,97
请按任意键继续. . .

6.2 大、小写字母转换

 #include <stdio.h>
main()
{
char c1, c2;
c1 = 'a';
c2 = 'b'; c1 = c1 - ;
c2 = c2 - ; printf("%c %c\n", c1, c2);
}

输出格式:

A B
请按任意键继续. . .

6.3 以下程序输出26个大写字母和它们的ASCII代码,每行输出两组数据

 #include <stdio.h>
main()
{
char ch;
int i; for (i = ;i < ;i++)
{
ch = i + ;
if (i % == )
printf("\n");
printf(" c=%c,ASCIID=%d", ch, ch);
}
putchar('\n');
}

6.4 以下程序段等待从终端输入一个字符,当按Enter键时,程序才往下继续进行

 #include <stdio.h>
int main(void)
{ while (getchar() != '\n'); }

6.5 以下程序把从终端输入的一行字符中所有的小写字母转换成大写字母,其他字符不变

 #include <stdio.h>
main()
{
char c; while ((c = getchar()) != '\n')
{
if (c >= 'a'&&c <= 'z')
c = c - ;
putchar(c);
}
putchar('\n');
}

6.6 编写程序统计输入的字符中空格符、换行符和横向跳格(制表)符的个数,用 ! 号结束输入

 #include <stdio.h>
#include <ctype.h>
main()
{
long n = ;
char ch; while ((ch = getchar()) != '!')
{
if (isspace(ch))
n++;
}
printf("n=%ld\n", n);
}

6.7 请编写程序,输入一行字符(用回车结束),输出每个字符以及与之对应的ASCII代码值,每行输出三对。

 #include <stdio.h>
main()
{
char ch;
int n = ; while ((ch = getchar()) != '\n')
{
if (n % == )
{
putchar('\n');
}
++n;
printf("%c:%d,", ch, ch);
}
}

6.8 请编写程序,输入一行数字字符(用回车结束),每个数字字符的前后都有空格。请编程,把这一行中的数字转换成一个整数。例如,若输入(<CR>代表Enter键):

2 4 8 3 <CR>

则输出整数:2483.

 #include <stdio.h>
#include <ctype.h>
main()
{
char ch; while ((ch = getchar()) != '\n')
{
if (isdigit(ch))
printf("%c", ch);
}
putchar('\n');
}

6.9 请编写程序统计输入的行数,用 ! 号结束输入, ! 号所在行不计入行数。

 #include <stdio.h>
main()
{
char ch;
int n = ; while ((ch = getchar()) != '!') //第1次,必须使用ch = getchar(),因为ch需要初始化
{
if (ch == '\n') //第2次,可用可不用
{
++n;
}
}
printf("%d", n);
}

6.10 请编写程序统计输入的一行中小写字母的个数。

 #include <stdio.h>
#include <ctype.h>
main()
{
char ch;
int n = ; while ((ch = getchar()) != '\n')
{
if (islower(ch))
{
++n;
}
}
printf("%d\n", n);
}

全国计算机等级考试二级教程-C语言程序设计_第6章_字符型数据的更多相关文章

  1. 全国计算机等级考试二级教程-C语言程序设计_第10章_字符串

    字符型指针数组 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> //参数中,int a ...

  2. 全国计算机等级考试二级教程-C语言程序设计_第4章_选择结构

    switch什么时候用break,什么时候不用break 调用break:一次执行一个分支,输入一个数据,对应一个级别 不调用break:连续执行多个分支 if...else 可以处理任何情况,大于小 ...

  3. 全国计算机等级考试二级教程-C语言程序设计_第8章_地址和指针

    面试: unsigned int *p1 = &num; int *p2 = &num; #define _CRT_SECURE_NO_WARNINGS #include<std ...

  4. 全国计算机等级考试二级教程-C语言程序设计_第15章_位运算

    位运算,不适用于实数,仅仅适用于整数.字符. C语言的位运算只能操作整数.字符,实数是指数方式表示的,不适用于位运算. #define _CRT_SECURE_NO_WARNINGS #include ...

  5. 全国计算机等级考试二级教程-C语言程序设计_第9章_数组

    四维数组,可用于航天卫星,三维+时间 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> ...

  6. 全国计算机等级考试二级教程-C语言程序设计_第14章_结构体、共用体和用户定义类型

    函数的返回值是结构体类型 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> struct ...

  7. 全国计算机等级考试二级教程-C语言程序设计_第5章_循环结构

    for循环结构的嵌套 外层循环每循环一次,内层循环会完整循环一次. 外层循环是竖. 内层循环是横. for, do...while, while的选择: 如果有固定次数,如阶乘! ,判断素数,用 fo ...

  8. 全国计算机等级考试二级教程-C语言程序设计_第3章_顺序结构

    1输入两个整数给变量x和y:然后输出x和y:在交换x和y中的值后,在输出x和y. #include <stdio.h> main() { int x, y, t; printf(" ...

  9. 全国计算机等级考试二级教程-C语言程序设计_第2章_C程序设计的初步知识

    正负号与被除数一致. 3 % (-5) == 3 (-3) % 5 == -3 不用求余运算符,求出余数. int x, y; 答:x - x / y * y; const int i = 10; c ...

  10. 全国计算机等级考试二级教程-C语言程序设计_第7章_函数

    函数执行,从右到左执行 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> main() ...

随机推荐

  1. 解决function.bind()方法

    这个 bind 方法只有在 ie10 版本的浏览器才得到原生支持,低于该版本的浏览器下执行时会得到一个 undefined 的错误提示. 于是只好再次上网 google 解决方案,功夫不负有心人,我们 ...

  2. android重要的对象

    Context----------------访问全局信息的api Activity Window Intent/Bundle ImageView----------onclick View----- ...

  3. 什麼是 N-key 與按鍵衝突?原理說明、改善技術、選購注意完全解析

    不管是文書處理或遊戲中,我們都經常會使用到組合鍵,也就是多顆按鍵一起按下,執行某些特定的功能.有時候你可能會發現,明明只按下2顆鍵,再按下第3顆鍵時訊號卻沒有輸出.要是打報告到一半遇到這種狀況還好,如 ...

  4. linux命令之mount

    熟悉linux的同学都应该知道mount命令.在linux中,一切皆文件.硬盘分区都是以文件目录的方式存在. 如果我们想访问移动硬盘,U盘等我们必须将这些设备mount到我们linux文件系统中某个目 ...

  5. HDU2084 数塔 (DP入门题)

    数塔 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...

  6. sigaction函数解析

    http://blog.chinaunix.net/uid-1877180-id-3011232.html sigaction函数解析  sigaction函数的功能是检查或修改与指定信号相关联的处理 ...

  7. Endian.BIG_ENDIAN和Endian.LITTLE_ENDIAN(http://smartblack.iteye.com/blog/1129097)

    Endian.BIG_ENDIAN和Endian.LITTLE_ENDIAN 在ByteArray和Socket中,能看到一个属性endain. endian : String 更改或读取数据的字节顺 ...

  8. UILabel,UITextField 以及UIButton应用

    </pre><pre name="code" class="cpp">一.UILabel 它是ioS开发使用的控件来显示文本,它是UIV ...

  9. Android 多线程:使用Thread和Handler (从网络上获取图片)

    当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分 ...

  10. 图片占位 css

    手机端图片高度和宽度不能自动比例缩小的问题 <!DOCTYPE html> <html> <head> <meta charset="utf-8&q ...