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

c語言輸入負數重新輸入

發布時間: 2022-09-28 03:21:38

1. c語言 編寫程序,從鍵盤輸入一個整數,計算並輸出它是幾位數。若輸入的是負數時,要求重新輸入。

給你寫了個,運行通過,你看看吧,記得採納哦O(∩_∩)O~
#include<stdio.h>
int main(){
int num,i=0;
printf("please input a numble:");
while(1){
scanf("%d",&num);
if(num<0){
printf("this numble is below to 0,please input again:");
continue;
}
while(num>0){
num/=10;
i++;
}
break;
}
printf("It's width is %d",i);
}

2. C語言怎麼實現輸錯了 重新輸入

可以設置一個while循環在其體內輸入數據,經判斷輸入正確則跳出循環,否則提示重新輸入,直到輸入正確。舉例代碼如下:

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
intm[12]={31,28,31,30,31,30,31,31,30,31,30,31},year,month;
while(1){//這個循環就是解決輸入錯誤的
printf("Pleaseentertheyear&month... ");
fflush(stdin);
if(scanf("%d%d",&year,&month)&&year>0&&month>0&&month<13)
break;
printf("Error,redo:");
}
m[1]+=year%4==0&&year%100!=0||year%400==0;
printf("%d/%dis%ddays. ",month,year,m[month-1]);
return0;
}

3. C語言問題,求大佬解答

【示例代碼如下,用 中文c 編譯】

#定義 最大輸入個數 10000


整數類型 甲,個數=0, 輸入數[最大輸入個數],統計=0;

小數類型 和=0,平均值;

重復{

圖形輸入整數() => 甲;

如果( 甲 大於 0 ){

和 += 甲;

如果(個數 < 最大輸入個數) 輸入數[個數 ++] = 甲;

}

}直到 甲 等於 0;

圖形輸出詞語(「輸入的正整數個數為:」);

圖形輸出整數(個數,10);圖形換行();


平均值 = 和 除 個數;

圖形輸出詞語(「輸入正整數的平均值為:」);

圖形輸出小數(平均值);圖形換行();


步進循環(甲=0;甲<個數;甲++ ) 如果( 輸入數[甲] > 平均值 ) 統計++;

圖形輸出詞語(「大於平均值的正整數個數為:」);

圖形輸出整數(統計,10);圖形換行();


【運行 結果如下圖】

4. 如果成績為負數時,顯示「輸入出錯。請重新輸入」用C語言怎麼表達

摘要 程序可以這樣寫,加一個while循環:

5. C語言中是直接輸入負數的嗎

是的,可以直接輸入負數。

C語言是一門面向過程的、抽象化的通用程序設計語言,廣泛應用於底層開發。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產生少量的機器語言以及不需要任何運行環境支持便能運行的高效率程序設計語言。

簡介

C語言是一門面向過程的計算機編程語言,與C++、C#、Java等面向對象編程語言有所不同。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、僅產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

C語言描述問題比匯編語言迅速、工作量小、可讀性好、易於調試、修改和移植,而代碼質量與匯編語言相當。C語言一般只比匯編語言代碼生成的目標程序效率低10%-20%。因此,C語言可以編寫系統軟體。

當前階段,在編程領域中,C語言的運用非常之多,它兼顧了高級語言和匯編語言的優點,相較於其它編程語言具有較大優勢。計算機系統設計以及應用程序編寫是C語言應用的兩大領域。同時,C語言的普適較強,在許多計算機操作系統中都能夠得到適用,且效率顯著。



6. C語言二維數組輸入錯誤後怎麼報錯重新輸入

數據輸入錯誤,有兩種情況:
1 輸入的數據格式不正確,比如要求輸入整型,但是輸入了字元型。
這種情況,可以通過scanf的返回值進行判斷,scanf的返回值是正確輸入的變數個數。當返回值和要輸入的變數個數不同時,則表示出錯,要求重新輸入。
2 輸入的數據不在合法范圍內。
比如要求輸入正數,但輸入了負數。這時需要判斷輸入的值是否合法。

以輸入兩個整數,要求范圍在0~100之間的代碼可以寫作
int a,b,r;
while(1)//死循環,不得到正確輸入不退出。
{
r = scanf("%d%d",&a,&b);
if(r == 2 && (a>=0 && a <= 100) && (b>=0 && b<=100)) break;//輸入正確,退出循環。
printf("輸入不正確,請重新輸入\n");
fflush(stdin);//清空輸入,這一步是必須的,不然出錯的輸入可能影響下次輸入。
}

7. c語言中數據輸入錯誤了如何提示輸入錯誤並實現要求重新輸入

可以使用清理輸入流fflush(stdin);這個原因是因為錯誤輸入的內容會保留在輸入流,下一次判斷會從輸入流開始讀取,因為錯誤輸入的內容還在,所以直接判斷錯誤,繼續循環。

但有些編譯器並不支持清理輸入流。所以我們這時需要用手動輸入讓其清除。使用getchar();讓其接收錯誤的字元。但這樣就會變成這樣,如果輸入多個錯誤就會出現多個次數的循環;直至沒有錯誤輸入;這樣如果循環內容多,所消耗的資源也就多了。

所以可以使用while()來執行裡面的消除字元,但如果直接這樣while(getchar())就會進入無限循環,所以可以讓其接收一個終止條件,每次輸入完都會按回車,那就讓其接收' '換行符終止自己的循環。

(7)c語言輸入負數重新輸入擴展閱讀

C語言從鍵盤輸入數據

程序是人機交互的媒介,有輸出必然也有輸入。在C語言中,有多個函數可以從鍵盤獲得用戶輸入:

scanf():和 printf() 類似,scanf() 可以輸入多種類型的數據。

getchar()、getche()、getch():這三個函數都用於輸入單個字元。

gets():獲取一行數據,並作為字元串處理。

scanf() 是最靈活、最復雜、最常用的輸入函數,但它不能完全取代其他函數,大家都要有所了解。scanf 是 scan format 的縮寫,意思是格式化掃描,也就是從鍵盤獲得用戶輸入。

gets() 會讀取用戶輸入的整行內容,包括空格。而 scanf() 遇到空格就結束讀取,也就是說,使用 scanf() 讀取的字元串中永遠不會包含空格。

8. c語言中數據輸入錯誤了如何提示輸入錯誤並實現要求重新輸入

cin>>sth;
while(!check(sth))
{
//check
函數檢查輸入值,如果滿足就不需要在輸入,這是就返回1或者true
cout<<"enter
again,
because
it
is
invalidate"
cin>>sth;
}