我正在使用這段代碼來讀取用戶輸入並檢查它是否是數字,但是它真的只適用於數字和字母。我希望它能與每個字符一起工作。例如 」!?%」。我已經試圖通過「isascii」來改變「isalnum」,但這不起作用。用於檢查用戶輸入的do-while循環使用c
#include <stdio.h>
#include <ctype.h>
int main()
{
int a;
int b = 1;
char c ;
do
{
printf("Please type in a number: ");
if (scanf("%d", &a) == 0)
{
printf("Your input is not correct\n");
do
{
c = getchar();
}
while (isalnum(c));
ungetc(c, stdin);
}
else
{
printf("Thank you! ");
b--;
}
}
while(b != 0);
getchar();
getchar();
return 0;
}
莫非你請修理你的縮進? – 2010-11-13 11:59:08
我不明白你的問題。你想測試什麼字符*拒絕*? – 2010-11-13 12:00:54
我想拒絕除數字以外的所有字符。 – Ordo 2010-11-13 12:06:41