切换语句将单词转换为数字? C ++

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了切换语句将单词转换为数字? C ++相关的知识,希望对你有一定的参考价值。

现在我能够制作一个程序,只将一个单词的第一个字母转换成相应的数字但在第一次转换后停止。如果我在每个'case'之后没有使用'break',程序就会继续输出以下不是我想要的情况。

switch(nameChar){case'a':case'b':case'c':cout <<“1”;打破;

我可以为这个单词的下一个字母重复这个程序,直到单词中没有更多的字母吗?

#include <iostream>
#include<string>
using namespace std;

int main () {

    char nameChar;

    cout << "enter a name";
    cin >> nameChar;

            switch (nameChar)
        {
            case 'a': case 'b': case 'c':
                cout << "1";
                break;
            case 'd': case 'e': case 'f':
                cout << "2";
                break;
            case 'g': case 'h': case 'i':
                cout << "3";
                break;
            case 'j': case 'k': case 'l':
                cout << "4";
                break;
            case 'm': case 'n': case 'o':
                cout << "5";
                break;
            case 'p': case 'q': case 'r':
                cout << "6";
                break;
            case 's': case 't': case 'u':
                cout << "7";
                break;
            case 'v': case 'w': case 'x':
                cout << "8";
                break;
            case 'y': case 'z':
                cout << "9";
                break;
            default:
                return 0;

                char nameChar;

                cout << nameChar;
        }
    }
答案

你应该在main里面使用这样的东西:

string name;
cout << "enter a name";
cin >> name;
for (auto letter : name) {
    switch (letter) {
        //rest of your case
    }
}

因为char只能存储一个字母,所以string是一个你想用于整个字符串的类。

以上是关于切换语句将单词转换为数字? C ++的主要内容,如果未能解决你的问题,请参考以下文章

编写一个函数,将一个数字字符串转换为一个整数

c语言问题:将数字字符串(如“1234”)转换为数值型数据怎么实现啊

将数据类型 varchar 转换为数字时出错。插入语句[重复]

将Double转换为String(完整数字)C#

将 Javascript 转换为 Objective C(数字的后 4 位)

c语言,用循环的方法将字符串“123”转化成数字123,应该怎样写?