0

ユーザーの入力がアルファベットかどうかを確認する方法がわかりません。私はプログラムに次のことを望みます:

  1. ユーザー入力を読む
  2. アルファベットかどうかを確認する
  3. 名前をもう一度出力する

使用しようとしましisdigitisalphaが、機能させることができませんでした。

//checking if name is valid and not a number
int nameCheck(char enteredName)
{
    //if the name is alphabetic
        /* return and output it */

    //else
        /* let the user enter it again */
}

//user enters the name
int nameEntering()
{
    cout << "please enter your Name.\n";
    char enteredName;
    cin >> enteredName;
    nameCheck(enteredName);
    return 0;
}

int main()
{
    char enteredName;
    enteredName = nameEntering();
    cout << "Have a nice day " << enteredName << "!\n";
    return 0;
}

これは、まったく機能しない私の古いソリューションです。別のサイトでそれを見つけて、「テンプレート」として使用しました。

int nameCheck(char enteredName)
{
    int i = 0;
    char str[] = {enteredName};
    while (str[i])
        {
            if (isalpha(str[i])) printf("character %c is alphabetic\n",     str[i]);

            else
            cout << "Enter your name again without using numbers or other     special characters, please!\n";
            nameEntering();
            i++;
        }
    return enteredName;
}
4

1 に答える 1