c語言程式設計時碰到一下兩個問題,有兩個c語言程式設計問題問一下

時間 2022-09-22 08:55:02

1樓:匿名使用者

由於要捨棄小數部分並且double表示的資料比int大得多,編譯器會有這樣的警告,讓你確認不會有溢位問題。

可以考慮不用pow計算整數2的k次方: m=1; for ( i=0;i

2樓:匿名使用者

pow函式返回的是double型別

而你的m是int型

所以提示會有精度損失

有兩個c語言程式設計問題問一下

3樓:史帥鍋

題目翻譯1.編寫一個程式,它使用巢狀迴圈產生以下輸出:&&&&&&&&&&

&&&&&

&&&&&&

# include

int main (void)

printf(\n);

}return 0;

}題目翻譯:2.編寫一個程式,提示使用者輸入長度,寬度,和一個矩形框的高度。

有程式計算和顯示框的表面積和體積。繼續提示使用者輸入一組新的長方體尺寸和輸出計算面積和體積,直到輸入零或負值。

# include

int main (void)

printf("請輸入一個長方體的寬\n");

scanf("%d", &y);

if (y <= 0)

printf("請輸入一個長方體的高\n");

scanf("%d", &z);

if (z <= 0)

printf("該長方體的表面積為%d \n", (x*y + x*z + y*z) * 2);

printf("該長方體的體積為%d \n", x*y*z);

}return 0;}

c語言程式設計 這兩個錯誤是咋回事?

4樓:匿名使用者

一個工程裡只能有一個主函式,你在源.cpp裡也寫了主函式吧?

5樓:匿名使用者

感覺還是用vs2008不錯,關聯的msdn也很強大,遇見錯誤時知道怎麼解決的人比較多,vs2010也不錯,寫c語言練習用那個vc綠色版的其實就足夠了 囧-。- 把第一個.cpp檔案刪了應該就行了

6樓:匿名使用者

你的offset多重定義了吧。

麻煩請教各位c語言大大,我是新手,程式設計中遇到一個問題如下 5

7樓:匿名使用者

因為你的while迴圈的條件是“1”,也就是while迴圈會一直迴圈下去,你想要達到你的目的可以把while迴圈改成這樣:

while(c!='a')

}這樣應該就可以了

8樓:

對問題補充的回答:

這樣的話,因為i不滿足迴圈條件,for迴圈沒有被執行而直接跳過

9樓:匿名使用者

因為你for迴圈就沒停止你輸入的a存的了陣列裡,而不是c中,因此不能停止,要想成立,你必須保正a輸到c裡,而且執行了for語句

10樓:匿名使用者

p=array;是把array的首地址付給p,不能付給p陣列長度。所以for(;;p++)一直迴圈

在c語言程式設計中應該注意哪些問題

11樓:匿名使用者

43.別心急,設計c++的class確實不容易;自己程式中的class和自己的class設計水平是在不斷的程式設計實踐中完善和發展的;

44.決不要因為程式“很小”就不遵循某些你不熟練的規則——好習慣是培養出來的,而不是一次記住的;

45.每學到一個c++難點的時候,嘗試著對別人講解這個知識點並讓他理解——你能講清楚才說明你真的理解了;

46.記錄下在和別人交流時發現的自己忽視或不理解的知識點;

47.請不斷的對自己寫的程式提出更高的要求,哪怕你的程式版本號會變成version 100.xx;

48.儲存好你寫過的所有的程式——那是你最好的積累之一;

49.請不要做浮躁的人;

50.請熱愛c++!

另外,站長團上有產品**,便宜***

12樓:匿名使用者

只要經常敲**,做題目。如果你還有問題,那你就找我,其實很容易學的,只要你自己用心。同時我要告訴你語言基礎很重要。

13樓:

《高質量程式設計指南——c++/c語言》林銳寫的

推薦你看一遍,對程式設計細節講得很多

14樓:匿名使用者

樓上的也不知道在**複製了這麼多的,

其實也沒有什麼要注意的方面,自己慢慢學,經驗是自己積累出來的,

c語言程式設計時,編譯沒有錯誤,但是一點那個感嘆號執行,就有2個錯誤,請問大家這是怎麼回事啊!錯誤如下:

15樓:匿名使用者

void mian()

這裡的mian寫錯了,應該是void main()

16樓:匿名使用者

你確定這是你直接粘下來的源程式嗎?

你的main函式名字寫錯了,看一下樓主,大意了哈···所以沒有連線哦···

c語言程式設計中遇到困難(剛開始學)

17樓:呆子濤

這個程式中你平凡呼叫的輸入函式 scanf 的呼叫格式為: scanf("格式化字串“,地址表);

兩個引數!每個引數的格式都不一樣,第一個是字串,即char* 的資料型別,第二個是一個指標型別的資料,即地址,而c編譯器會把”“之間的東西當做字串,這個等你學到字串資料型別會明白。你所犯的錯誤就是把地址表也放進了”“當中,這樣的後果很明顯,就是函式缺少引數,雖然你的第一個引數型別匹配(是一個字串,顯然沒有”%d,&yw“這種格式的資料,你的意思是”%d“型別的資料),但是卻少第二個引數,所以記憶體必然會報錯,因為編譯器不知道你要把資料存到什麼變數裡面去,在寫程式的時候,應該多站在編譯器的角度想想,這樣你才會瞭解錯誤的根源。

我寫個小例子,讓你更多的瞭解這個scanf 函式引數的本質。

# include

int main()

表面上看這段程式中的函式引數是錯誤的,沒有按照書上說的格式來,但是追求其引數本質,編譯器把所有的字串型別當做指標來看,在這裡p是一個字串指標,指向”%d“這個字串,所以作為引數傳進scanf是完全沒問題的。而且對於scanf函式的引數應該是最少兩個,且為偶數,

一個字串指標引數跟一個地址引數相對應,其實就是兩個指標。對於指標目前你不必深究,在系統的學習了前面的基本知識後再去研究記憶體問題。

18樓:匿名使用者

全改為scanf("%d",&sx);

記住,每個輸出的%d,對應後面的一個常量的地址,所以不要把“”裡面放常量地址。

而且下面最好把;放在語句最後,養成一個好習慣:

zf=yw+sx+yy+wl+hx+zz*0.8+ls*0.5+0.3*(dl+sw+ty);/*計算總分*/^_^

19樓:匿名使用者

上面說的對 而且你的zf定義的是int型別 但是你後面複製的是double型別 我不知道你的編譯器 我有的是vs 改為 (int)zf=yw+sx+yy+wl+hx+zz*0.8+ls*0.5+0.

3*(dl+sw+ty)/*計算總分*/;

如果不對你去看看你的強制轉換格式就行

我不知道你的sleep(60000)啥意思 我把這一句給登出了正確**:

#include

int main()

20樓:

#include

int main()

幫你改過來了

21樓:匿名使用者

所有的scanf("",)中的引號都用錯地方了!

scanf("%d,&yw");

改成scanf("%d",&yw);

看來你還是個高中生啊,不錯不錯,加油。

問關於C語言程式設計的思路,很小的兩個問題

這類題一般都可以讓計算機遍歷所有情況,找出符合條件的情況比如第一題 你可以先 把輸入x 計算5x 1 判斷5x 1是否大於500 如果大於500,則輸出結果 如果小於500,則x 5x 1 迴圈到第二步這個功能的 寫出來,把輸出的結果儲存到y下一步就用for迴圈把x從1迴圈到120 因為很明顯x大於...

求問c語言兩個題,求教C語言程式設計題兩道。

1 要相信執行結果 巨集是替換 程式是這樣執行的 fb fb k,k 1 k 7 fb k k 1 1 k 7 第一次巨集替換 k k 1 1 k 1 7 第二次巨集替換 3 3 1 1 3 1 7 11 3 1 7 27 注意替換時一定不要忘記 所有巨集替換是在編譯之前的預處理模組完成的 此時還沒...

c語言程式編寫請教一下,謝謝了,C語言程式設計請教 編寫一個程式,

夏天的小紅花 按照題目的要求,定義四個變數,a,b,c,max。然後按照題目的要求分步實現就可以了 使用條件表示式就比較簡潔 include int main return 0 程式中為了方便多種情況驗證,加入了for迴圈。若不需要時,可以刪除for這一行,以及上下緊接著的一對花括號。 已存在這個名...