c++,字母转换为数字,即输入a~z可分别得到0~25

如题所述

建议你用数组的方式来实现。
也就是说用一个长度26的char类型数组顺序保存26个字母,则对应的下标号就是你要的数字。
取得输入的字母后,用for循环的办法找到对应的字母,输出其下标即可。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-07-08
#include<stdio.h>
bool dig(char x){return x>='0'&&x<='9';}
int main()
{
char s[10];
scanf("%s",s);
printf("%d\n",s[0]-'a');
return 0;
}
/*

*/追问

bool dig(char x){return x>='0'&&x<='9';}
这一行是什么意思

追答

这个是判断是不是数字,在这里没有用

本回答被提问者采纳

c++,字母转换为数字,即输入a~z可分别得到0~25
建议你用数组的方式来实现。也就是说用一个长度26的char类型数组顺序保存26个字母,则对应的下标号就是你要的数字。取得输入的字母后,用for循环的办法找到对应的字母,输出其下标即可。

c++ 0-25对应a-z 输出列表 然后还可以查询 例如输入7 输出h
if(i<26 && i>=0)printf("%d - %c\\n", i, 'a'+i);else return 0;} return 0;}

c语言给a到z赋值1到26算法?
2. 使用一个循环,从字符'A'开始循环到字符'Z',每次迭代:a. 将当前字符转换为对应的ASCII码值。可以使用字符'a'的ASCII值作为一个参考基准。b. 将ASCII码值减去字符'a'的ASCII值,得到该字母对应的数值。c. 将数值赋给一个数组或映射表中对应的位置,位置的计算可以使用当前字符减去字符'A'的...

C++编写依次输入26个字母如何编写
include <iostream> using namespace std;void main(){ int i;cout<<"输出小写字母:";for (i=0;i<26;i++)cout << (char) (i+'a'); \/\/小写 cout << endl;cout<<"输出大写字母:";for (i=0;i<26;i++)cout << (char) (i+'A'); \/\/ 大写 cout << endl;} 结果:输...

c++字母相连输出
大概这样写:include "iostream"using namespace std;char map[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";void p(char c) { int index = c - 'A';if (index == 0) { cout<<map[25];} else { cout<<map[index-1];} cout<<map[index];if (index == 25) { cout<<map[0];} else { ...

C++编程:输入3个大写英文字母,把他们转换成小写字母后输出
用ASCII码里面字母的编码,同一个字母的大写字母和小写字母的数字编码只相差32。相信你能够编出来了吧

请教关于C++中进行连续输入26个字母a-z的问题
假设链表为 ListTable 含有字段char name; ListTable next;void writeTo(ListTable list){ ListTable * h=list;for(int i='A';i<='z';i++){ h->name=(char)i;h=h->next;} }

在c++中将小写的字母变成对应的大写字母 输入 一个小写字母a-z 输出...
include<iostream> using namespace std;char toupper(char ch){ if(ch >= 'a' && ch <= 'z')return ch-32;return ch;} int main(){ char str[] ="this is a test.";for(int i = 0; str[i]; i++)putchar(toupper(str[i]));putchar('\\...

c++输入一串字母,输出每个字母的个数(不区分大小写)
include <stdio.h>#include <string.h>int main(){int i,n,a[26];for(i=0;i<26;i++)a[i]=0;char str[100];gets(str);n=strlen(str);for(i=0;i<n;i++)if(str[i]>='A'&&str[i]<='Z') a[str[i]-'A']++;else if (str[i]>='a'&&str[i]<='z') a[str[i]...

用C++设计一个简单的加密程序,它把当前的字母变成下个字母。例如:a变 ...
将串读入单字节数组(或内存)中,逐个判断“A”-“Z”、“a”-“z”区间的字符值,符合条件即 +1,遇“A”(a)使用“Z”(z)的字符值代替之.然后使用char(字符值)函数回写.

相似回答