幫我檢查錯呀 新手c語言

2025-01-17 12:45:04 字數 1647 閱讀 5805

1樓:網友

void main()

int p,w,d,f,s;

scanf("%d%d%d",&p,&w,&s);

if(s<250)

d=0;if(s>=250&&s<1000)d=;

if(s>=1000&&s<2000)

d=;if(s>=2000&&s<3000)

d=;if(s>=3000)

d=;f=p*w*s*(1-d);

printf("f=%d",f);

printf("%d%d%d",p,w,s);

看看你的問題在哪兒。

2樓:網友

#include

int main()

float p,w,s,d,f;

printf("輸入運費p貨重w路程s");

scanf("%d%d%d",&p,&w,&s);

if(s<250)d=0;

if(s>=250&&s<1000)d=;

if(s>=1000&&s<2000)d=;

if(s>=2000&&s<3000)d=;

if(s>=3000)d=;

f=p*w*s*(1-d);

printf("f=%.2f",f);

這樣就可以了。你的錯誤還真多啊。定義d為int型,不可以為小數的。

你把f=p*w*s*(1-d);放到上面了,這時d的值沒有確定,無法計算的。

printf("輸入運費p=%d,貨重w=%d,路程s=%d",p,w,s); 輸出當輸入了吧。這樣編譯是過不去的。

printf("輸入運費p,貨重w,路程s");這樣就ok了。還有問題麼?

3樓:文靜婷留

你將「f=p*w*s*(1-d);」放在if語句後面。

4樓:網友

你定義的d是整型的。

你對d賦的是整數嗎?還有f.

c語言裡定義的百分數?

沒有吧。

這個c語言判斷**錯了

5樓:小政

運算時會對資料進行強制型別轉換 如果你求的參量是int型 輸出的資料強制轉化成int型,不需要先轉換。

6樓:匿名使用者

系統自動轉換,不需要人工干預。

大神,c語言,謝謝,看看**錯了,幫忙改一下

7樓:景靈風

行,blq1和blq2函式宣告中,只有乙個形參,到了49,66行,函式實現中卻有2個形參,這樣是矛盾的。

解決方案:刪除函式宣告,把函式定義部分挪到**頂部,即函式定義在呼叫之前;

函式定義嚴格按照函式宣告來。

另外,你的blq1函式中,字串說『第十輪』也是錯誤的,只有i=10的時候才是第十輪,你的**表示的是得分10的時候就是第十輪。

還有,你的陣列x定位了11行4列,那麼行序列是0-10,列序列是0-3,你在blq1中讓n=11,然後引用x[n],必然導致陣列越界。

8樓:萢萢

直接發**,幫你除錯看看。

9樓:網友

13,14行,你的函式有兩個形參,呼叫時不匹配。

c語言新手問題,求解答,C語言一個新手問題,求解答

pnum count 是doulbe 型別,改為 pnum count 才是double。還有scanf lf pnum count 改為scanf lf pnum count 一個c語言程式問題求解答是求什麼的什麼意思?13在ascii中代表 歸位鍵 27在ascii中代表 esc鍵 只要不輸入以...

新手如何學好c語言?怎樣才能學好C語言

1 學好c語言,你可以很好地應付任何一種程式設計工具。2 一定要多上機練習,通過程式瞭解相關知識。幾經反覆方得正果。3 不要把學習c語言當成一種任務,更不要把它看成很難完成的任務。要充滿自信,只要是一個智力正常的人都能學好c語言。始終保持遊戲的心態,多發現其中的樂趣。當感到程式設計趣味無窮,那你在電...

C語言新手問題,求解答

其實沒區別,都是表示自減一也就是a a 1 唯一區別是在邏輯比較中 a是先運算再比較,a 是先比較再運算 你的 a單獨的一條語句,寫在前面跟後面是一樣的效果但是在運算中就不一樣了,比如 int a 2 int b a printf a d,b d a,b 結果是a 1,b 2 這裡的意思是,a先運算...