计算字母序号c语言怎么写,郑州轻工业大学oj题解(c语言)1023-1026 ASCII码系列(一)...

郑州轻工业大学oj题解(c语言)-1023-1026 ASCII码系列(一)

1023-1026本质上都是有关ASCII码的问题,故此处放在一起讨论。

ASCII码,简称asc码,是C语言的重要部分,通常用于加密。

ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位[二进制数]来表示所有的大写和小写字母,数字0 到9、标点符号

例如在1023-1026这几题中就需要用到ASCLL码来完成字符的表示与转换。

首先我们看1023题。

1023: 大小写转换

输入一个字母,若是小写字母,则变为大写输出,否则,原样输出。

输入

输入为一个字符。

输出

按题目要求输出一个字符,单独占一行。

代码如下:

#include

int main()

{

char ch;

scanf("%c",&ch);//此处表示输入一个字符给ch

if(ch >= 'a' && ch <= 'z')//判断是否为小写字母

ch -= 32;//32为大写字符与小写字符之间的差值。

printf("%c\n", ch);

return 0;

}

从题目中我们可以看到,题意要求我们判断字符是否是小写字母,并完成小写转换为大写的操作。

所以,我们先通过if语句判断了输入的字符是否在小写字母的区间,如果不是,则将字符的ASCII码-32得到其相应的大写字母的ASCII码(相应的大写转小写也同理)。

这里要强调的是,在输入为字符时,任何加减乘除的操作都只在ASCII码里进行(即是其字符的ASCII码完成计算过程)

1024: 计算字母序号

题目描述

输入一个英文字母(可能是大写,也可能是小写),输出该字母在字母表中的序号(’a’和’A’的序号为1)。

输入

输入只有一个英文字母。

输出

输出一个整数,表示该字母在字母表的序号,输出单独占一行。

代码如下:

#include

int main()

{

char ch;

int s;

scanf("%c",&ch);//此处表示输入一个字符给ch

if(ch >= 'a' && ch <= 'z'){

s=ch - 'a' + 1;

printf("%d",s);

}//判断是否为小写字母,并输出其序号

else if(ch >='A'&&ch<='Z'){

s=ch-'A'+1;

printf("%d",s);

}//判断是否为大写字母,并输出其序号

return 0;

}

这里为了方便大家理解,用了大家更好懂的写法。首先根据题意,输入的字母大小写是不确定的,所以需要我们先去判断大小写。然后判断完大小写后,把输入的字符减去这个字符的第一个字母,(大写减A,小写减a)然后加上1即可得到这个字符在其字母表里的序号。

由于篇幅问题1025.1026留到第二篇再做讲述。

PS:看例子不要只抄代码,要善于读懂代码,做到举一反三。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值