您的位置:首页 > 其它

WERTYU UVA - 10082 (getchar,putchar用法)

2017-12-07 21:27 363 查看


理解getchar和putchar

键盘输入的字符都存到缓冲区内,一旦键入回车,getchar就进入缓冲区读取字符,一次只返回第一个字符作为getchar函数的值,如果有循环或足够多的getchar语句,就会依次读出缓冲区内的所有字符直到’\n’.要理解这一点,之所以你输入的一系列字符被依次读出来,是因为循环的作用使得反复利用getchar在缓冲区里读取字符,而不是getchar可以读取多个字符,事实上getchar每次只能读取一个字符.如果需要取消’\n’的影响,可以用getchar();来清除,这里getchar();只是取得了’\n’但是并没有赋给任何字符变量,所以不会有影响,相当于清除了这个字符.

1、putchar()

a、 putchar函数的格式:putchar(ch)

(其中ch可以是一个字符变量或常量,也可以是一个转义字符)

b、putchar函数的作用:向终端输出一个字符。

(1)putchar函数只能用于单个字符的输出,且一次只能输出一个字符。

(2)在程序中使用putchar函数,务必牢记:在程序(或文件)的开头加上编译预处理命令(也称包含命令),即:#include “stdio.h”。

2、getchar()

a、 getchar函数的格式:c=getchar();

b、getchar函数的作用:从系统隐含的输入设备(如键盘)输入一个字符。

getchar输入字符,一直到按下回车才结束,然后执行代码

#include <cstdio>
#include <math.h>
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
char a[]="`1234567890-=QWERTYUIOP[]\ASDFGHJKL;'ZXCVBNM,./";
int main()
{
char b;
int i;
while((b=getchar())!=EOF)
{
for(i=1;a[i]!=b&&a[i];i++);
if(a[i])
{
putchar<
4000
/span>(a[i-1]);
}
else{
putchar(b);
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: