當前位置:首頁 » 編程語言 » 非法輸入c語言錯誤
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

非法輸入c語言錯誤

發布時間: 2023-03-19 08:13:37

c語言有關非法輸入的問題

int flag = scanf("%d,%d",&i,&j)
如果flag為0,那就是輸入錯誤,因為scanf的返回值是正確輸入的個數

② c語言 非法輸入

這個數據驗證非常簡單,請看代碼:
/* 放到程序全局部分 */
#define PLUSH while (getchar() != '\n')

/* 變數聲明 */
int input_result;

/* 數據輸入以及驗證 */
do {
input_result = scanf("%d",&num);
if ((input_result != 1) || (num > 11)) {
PLUSH;
printf("您輸入的型信手數據有卜嫌誤,請重新輸入:");
}
} while ((input_result != 1) || (num > 11));

請用/* 數據輸入以及驗證 */的這段代碼替代您程序中的以下部分:
while(1)
{
printf("請輸入您的選擇:\n");
scanf("%d",&num);
if(num>=0&&num<=11)
{
break;
}
else
printf("您的選擇坦咐錯誤,請重新輸入:\n");
}

③ c語言 非法輸入

主要是輸入流沒有清除.

可以用羨野fflush()清空
輸入\輸出
流.

以下是代哪配碼:

while(1)

{

/*...省略...*/

else
{
fflush(stdin);
//清除輸入緩存區.
printf("您的選擇錯誤,請重新輸入:\兄緩喊n");
}

/*....*/

④ C語言中如何控制非法輸入

1.
c語言中大部分自帶的方法都有返回值,像scanf方法如果輸入正確的話,它會返回一個正整數,所以你可以通過它來判斷,如果輸入不正確的話它返回是0,你就可以通過這個判斷是否為非法輸入。
2.
scanf()函數有返回值且為int型。
scanf()函數返回的值為:正確按指定格式輸入變數的個數;也即能正確接收到值的變數個數。
scanf("%d%d",
&a,
&b);
如果a和b都被成功讀入,那麼scanf的返回值就是2
如果只有a被成功讀入,返回值為1
如果a和b都未被成功讀入,返回值為0
如果遇到錯誤或遇到end
of
file,返回值為EOF。

⑤ C語言編程問題,求高手解答遇到輸入非法字元時,怎麼處理。

可以採用如下語句
while((scanf("%d",&x))==1)
{}
只有輸入一個數字時,才進入主體語句