如何在c ++中将数字转换为字母表

时间:2015-02-07 06:58:26

标签: c++

以下代码有什么问题? 我想将1转换为A,将2转换为B,依此类推。 但是当我输入“1 2 3”

时,我得到的输出是“q r s”
void main()
{
clrscr();
char arr[20];

gets(arr);
cout<<endl;

for(int j=0;arr[j]!='\0';j++)
{

    if(arr[j]==' ')   //neglect the space character
    {}
    else
    cout<<(char)(arr[j]+64) <<" ";
}

getch();

}

//输出: q r s

2 个答案:

答案 0 :(得分:0)

当您查看ascii表时,您会注意到这封信&#39; 1的小数为49,而#39;字母为&#39; A的小数为65. 差异为16 ,而不是64。

答案 1 :(得分:0)

简短的回答是,今天大多数编译器都使用ASCII标准,因此输入的数字与ASCII表中该数字的字符相关。