C语言入门实战(4):char数组+ASCII字符处理

这是《C语言入门实战》系列的第4篇。
上一篇:C语言入门实战(3):秒数转换为时:分:秒


题目

从键盘输入任意一个大写英文字母,求出它在26个字母表中的位置(字母‘A’的位置为1,以此类推),以及它在字母表中其后面的第4个字母。如果查找其后第4个字母时已经超出了字母表的最后一个字母,则返回到字母表的第一个字母继续查找。例如,大写字母’Y’后面的第4个字母为’C’。请编程实现。

要求

输入输出格式示例1:

输入:C<回车>
输出:C’s position is 3,the fourth letter is G

输入输出格式示例2:

输入:Y<回车>
输出:Y’s position is 25,the fourth letter is C

参考代码

#include <stdio.h>
//程序入口,主函数
int main() {
    //将26个大写字母放到一个char数组中
	char chars[26] = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N',
		'O','P','Q','R','S','T','U','V','W','X','Y','Z'};
	// 从标准输入读取1个字符(这里是大写字母)
	int c0 = getchar(); 
	// 找到在字母表中的位置,'A'在位置1处 
	int pos = c0 - 'A' + 1;
	int c4 = chars[(pos+3)%26];
	// '%c'格式输出char类型 
	printf("%c's position is %d,the fourth letter is %c", c0, pos, c4);
	return 0;
}

代码复盘

char字符类型,占用一个字节,可用于表示0x00~0x7F之间的字符(详见:百度百科ASCII码),在输入/打印格式中以%c进行标记。
getchar()stdio.h头文件中声明的函数,用于从标准输入(通常是键盘)读取一个char字符。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值