1樓:網友
while後多了個分號,while這句不執行,但是之後的花括號裡面語句依然按序執行。去掉分號就是你想要的了。
2樓:網友
邏輯應該沒問題,你看這句話:while(result<0||result>100);,後面多了個";",改下試試。
c語言如何做到輸入出錯重新輸入,輸入正確則繼續執行後面的程式
3樓:網友
int n=0;
printf("請輸入1-5的數:");
scanf("%d",&n);
whilie(n<1 ||n>5)
printf("輸入正確");
c語言的檢查輸入錯誤提示重新輸入的問題
4樓:三天打魚
寫乙個迴圈 把接收輸入的**放迴圈裡。
接收乙個輸入的字串。
然後自己寫方法判斷輸入內容是否合法。
如果合法 就轉換為型別指定型別 然後跳出迴圈 不合法就繼續迴圈輸入。。。
如果轉換型別的函式 可以返回是否轉換成功 或者 會彈出 異常 那麼只要判斷一下返回值 或 處理一下異常捕獲 就可以不用自己寫方法判斷輸入是否合法了。。
5樓:寒寒家
//可以用下面的方法。
scanf在接受到與%d不符的輸入時,返回值是0,否則是1//另外123b這種輸入不會出錯的,會把123賦值給i//b123則不會了。
#include
int main()
return 0;
6樓:網友
組個判斷字元是否大於'0'並且小於'9',是的話跳出迴圈,否則重新輸入。
c語言怎麼實現輸錯了 重新輸入
7樓:
可以設定乙個while迴圈在其體內輸入資料,經判斷輸入正確則跳出迴圈,否則提示重新輸入,直到輸入正確。舉例**如下:
#include ""//if the vc++,with this line.
#include ""
int main(void),year,month;
while(1)
m[1]+=year%4==0 &&year%100!=0 ||year%400==0;
printf("%d/%d is %d days.",month,year,m[month-1]);
return 0;}
8樓:網友
設個標誌位,用迴圈來實現。
偽**如下:
*****== **開始 *****== */int isoutofrange;
doelse
isoutofrange = 0;
while (isoutofrange == 1)輸出2003年該月有幾天;
*****== **結束 *****== */
c語言輸入乙個數不對 重新輸入乙個值?
9樓:網友
1,我想我知道你想問什麼了。
scanf輸入函式 是從標準輸入裝置輸入的輸入快取獲取資料的,也就是傳說中的stdin流(據說,stdin是乙個結構體指標)。當你再次想用scanf讀取資料時,必須先清空stdin流的資料。否則將直接讀取上次輸入的資料。
你的//fflush(stdin); 不加入while迴圈呢?,2,你說的輸入2錯誤又是怎麼回事,迴圈裡面根本沒有限定。
10樓:空空
輸入兩次ctrl+z就能跳出了。
c語言中printf 請輸入r ?)怎麼輸入「請輸入」這三個字呢????
int a printf 請輸入r d a 直接將 請輸入 放在其中即可,ms或其他編譯環境是支援中文的。include main 不知道是不是你要的,沒看懂你題目的意思。include int main float r,l,s,pi printf 請輸入圓的半徑 n s 你用的引數是float型,...
如何在c語言中輸入特殊符號,C語言中輸入一些特殊的符號 ,應該怎麼 弄?
方法老簡單了,就擔心你們不會輸入特殊符號 1 單個任意ascii字元輸入 使用ascii輸入。例如 char c 164 符號 2 字串中輸入任意ascii字元 使用轉義字元 ascii碼。例如 char str abc xa4 abc 轉義字元 xhh hh代表字元的十六進位制ascii碼。但是你...
c語言scanf 輸入函式,c語言中的scanf 函式的用法
scanf是c語言中的一個輸入函式,與printf函式一樣,都被宣告在標頭檔案stdio.h裡,因此在使用scanf函式時要加上 include 在有一些實現中,printf函式與scanf函式在使用時可以不使用預編譯命令 include 它是格式輸入函式,即按使用者指定的格式從鍵盤上把資料輸入到指...