c语言 字母怎么转换为数字

发布于2022-01-13 06:59:53
5个回答
admin
网友回答2022-01-13
单个字符转换为数字,假设我们有char c = '8'; 用 c - '0'就可以得到数字8

'8' - '0'相当于用8的ASCII码减去'0'的ASCII码值,因为ASCII码是顺序排列的,所以能得到相应的数字。
如果是字符串转数字可以用C语言库stdlib.h中提供的atoi(字符串转整数)以及atof(字符串转小数)。具体参考:
http://baike.baidu.com/link?url=0EMXyMfOxMyaQnC5E1YQRQzMeFmM1w7n-9t9k5QhVDhW9bbNPxEdsR174hxXFCjWfIvOXoFR9J5wratcssTLlK
admin
网友回答2022-01-13
#includestdio.h
void main()
{
char n;
scanf(%c,&n);
n=(n-97)/3+2;
printf(%c,n+'0');
}
我只能做到输入一个a输出2
admin
网友回答2022-01-13
直接在输出前转换一下就可以了:
char c;scanf(%c,&c);printf(%d\n,c-'A'+1);
admin
网友回答2022-01-13
看帮助啊,很简单的 比如 S键就写成 #S键;1键就是#1键
admin
网友回答2022-01-13
#includestdio.h
#includestring.h
#includectype.h
int main()
{char a,b;
int i=0,j=0;
do
{
a=getchar();
if(a=='\n')break;
b=getchar();
if(isalpha(a)!=0)i++;
else {printf(错误!输入的不是字母!\n);j++;continue;}
if(a=97)printf(%c的大写字母是%c\n,a,a-32);
else printf(%c的小写字母是%c\n,a,a+32);
}while(a!='\n');
printf(一共输入了%d个字母和%d个非字母(其中有一个是按回车时的换行符)。\n,i,1+j);
return 0;
}

回到
顶部