求助
我在美國初二的表妹問我一道C語言題。
先顯示“輸入年齡”,那用戶就輸入數字,如果輸入的不是數字,就彈出提示“輸入數字”,直到用戶輸入數字,才顯示年齡。
現在只能判斷輸入是數字并成功輸出,但是判斷輸入的不為數字,并回圈提示的要如何撰寫條件。
是我太菜了,還請大佬指點

#include <stdio.h>
int main()
{
char ch;
printf("Input your age\n");
scanf("%c",&ch);
if(ch>='0'&&ch<='99')
{
printf("correct\n");
printf("your age is %d",ch);
return 0;
}
if(——————)
printf("error\n");
printf("Please input your age again");
return 0;
}
uj5u.com熱心網友回復:
不能用char,這只能接收一個字符,用int來接收,然后一個回圈就好uj5u.com熱心網友回復:
可用ascii表判斷是否為數字,再將字符轉為數字uj5u.com熱心網友回復:
while回圈uj5u.com熱心網友回復:
在你的代碼上做了些修改,供參考
#include <stdio.h>
#include <string.h>
int main()
{
char ch[8] = {0};
printf("Input your age\n");
scanf("%s",ch);
int i = 0;
while (ch[i] != '\0')
{
if (ch[i] >= '0' && ch[i] <= '9')
{
i++;
}
else
{
printf("error\n");
printf("Please input your age again\n");
return 0;
}
}
printf("correct\n");
printf("your age is %s",ch);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/29332.html
標籤:C語言
上一篇:求助!Qt多視窗顯示QOpenGLWidget例外問題
下一篇:求大佬指點錯誤,檔案輸出空白
