c语言学习笔记(3)——getchar()和putchar()

C语言有专门为面向字符I/O而设计的一对函数getchar()和putchar()

getchar()函数没有参数,它返回来自设备输入的下一个字符

ch = getchar();
scanf("%c",&ch);

该语句效果与下面的语句效果一样

putchar()打印它的参数

putchar(ch);
printf("%c",ch);

该语句效果与下面的语句效果一样

下面是个简单小例子

#include <stdio.h>
#define SPACE ' '			/*SPACE相当于"引号-空格-引号"*/
int main(void )
{
	char ch;				

	while((ch = getchar()) != '\n')		/*当一行未结束时*/
	{
		if(ch == SPACE)		/*空格不变*/
			putchar(ch);
		else
			putchar(ch+1);	/*改变字符为下一个字符*/
	}
	putchar(ch);			/*打印换行符*/
	return 0;
}

示例结果

call me jackson.
bmm nf kbdltpo/

可以看到字符的字母全替换为下一个,只不过标点.也被替换成斜杠了。

C语言为了解决这个问题,提供了头文件ctype.h,里面的函数能够接受一个字符参数,并判断是否属于某个类型,如果是则返回非零值,不是则返回零。

我们可以使用isalpha()来判断是否为字母

更新的示例与结果

#include <stdio.h>
#include <ctype.h>
int main(void )
{
	char ch;				

	while((ch = getchar()) != '\n')		/*当一行未结束时*/
	{
		if(isalpha(ch))		/*如果是字母*/
			putchar(ch+1);	/*改变字符为下一个字符*/
		else
			putchar(ch);	/*不是则不变*/
	}
	putchar(ch);			/*打印换行符*/
	return 0;
}
call me jackson.
dbmm nf kbdltpo.

ctpye.h的一些常用函数清单如下

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值