C语言中字符的输入与输出

C语言字符输入输出

首先介绍getchar和putchar两个函数他们两个一次之处理一个字符

getchar:默认将字符从标准输入即键盘读取输入值

putchar:默认将字符从标准输入即屏幕输出变量所承载的值

示例如下:

[root@ ]# cat impomp.c
#include <stdio.h>
main()
{
    char c;              //初始化变量
    c = getchar();    //用getchar从键盘获取输入的值,然后传递给c变量
    putchar(c);      //putchar函数将c变量从标准输出输出,也就是屏幕
    printf("\n");        //然后由printf函数提供一个换行符实现换行
}

执行的结果就是你从键盘标准输入一个字符,回车后,它会打印一你刚才输入的字符,并换行

[root@ ]# ./impomp
c                          //输入一个字符“c”然后回车
c                          //putchar函数将这个输入再次输出
以上只能处理一个字符,如果加上循环就可以输出无数个字符,甚至一句话了,示例如下:

[root@ ]# cat impomp.c
#include <stdio.h>
main()
{
    char c;
   
    c = getchar();                      //因为下边要使用简单的while循环所以c变量必须有初始值

while (c != EOF) {                //如果c不等与EOF(文本结束符,shell里的ctrl+d 此处的“!=”就是不等与的意思等于是“==”)就一直循环下去
        putchar(c);                        //循环体将c的值用putchar函数输出到屏幕
        c = getchar();                    //继续获取c的值,然后进行下一次的循环
    }
}

执行结果如下:

[root@ ]# ./impomp
linuxidc 最帅!!!                      //输入
linuxidc 最帅!!!                      //输出
hello C?                          //输入
hello C?                          //输出 然后输入文本结束符CTRL+D 正常退出
[root@ ]# ./impomp
123                                    //输入
123                                    //输出
^C                                      //按CTRL+C中断程序退出

如果够熟练的话这个程序可以写的更精简,更易读:

[root@ ]# cat impomp.c
#include <stdio.h>
main()
{
    char c;

while ((c = getchar()) != EOF)              //在if条件中直接用getchar函数来获得输入值,且不等与文本结束符如果符合条件则执行循环体,否则中断
        putchar(c);                                            //用putchar函数打印出c的值
}

执行效果和以上的第一个while循环输出是一个结果,只是在程序上简练多了,这个就是C语言程序的设计!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e5bb0f040d643815e95cbc9d45b801c6.html