C語言問題,C語言報錯的問題?

2021-03-11 09:16:33 字數 3870 閱讀 4353

1樓:友有友

嗯你的理解是對的,break就是用來跳出的switch,如果沒有break時就像你說的那樣,當其中一個case符合條件是,後面的全部語句都會當做成立的條件去執行

2樓:yfgh無悔

如果所有的case都不符合,就會執行default語句,之後會跳出這一層,繼續執行下一次迴圈。

3樓:蒼穹夜光

首先求解表示式,其計算結果若與下面某個常量表示式相等,則執行完該case,一專般後面後面加上break;跳出,

若該case沒有break,執行完後,後面的case會依次執行,直到碰到break,不然就會執行完所有語句。

對於你的問題,沒有break,舉個例子,若屬表示式結果為 第三個常量表示式,會執行完語句段3到語句段n+1所有語句。即(如果表示式的值與某個常量表示式的值相等,則執行該常量表示式後的所有語句段)

還有一般default後面只有一個語句段,說所有語句段不太合適。

應該是對的。

4樓:荊芳菲力蒼

這是一來

個for語句,根據for語句的源形式:for(語句bai1;語du句2;語句3){函式體;}

的執行順序是zhi:語句1,判斷dao語句2是否成立(非0為真,0為假)函式體,最後是語句3,(£)再進行判斷語句2,是否成立,在執行函式體,語句3

,在執行(£)知道條件不滿足語句2,跳出迴圈;如果,語句2是非邏輯表示式,即非判斷語句時,迴圈體內,必有滿足條件的跳出語句

break,否則為死迴圈;

這裡的for(k=1;k+1;k++)

可以這樣解釋:執行迴圈for()語句時,初始條件

k=1;之後執行

k+1(k=2,非0,條件為真繼續執行)之後執行函式體for下面花括號{}的內容,之後在執行

k++(k自增1)

所以,明白for()語句的執行順序就可以明白了,明白了嗎?

5樓:金蔚逮忻歡

main函式雖然是主函式、它是程式執行的開始處、但是、它也是函式、所以、也有返回值專和沒有返回值屬

c99標準規定main函式必須是int

返回值return

0;至於返回值是返回給作業系統的!

void

main

就是沒有返回值

6樓:蘇幹孟暢然

intmain()

在函式結尾需要給出返回值

void

main()

就不需要了。

一般,對於寫程式的來說,這兩個差別不大。

但是,不同編譯器對此的處理可能不同。

7樓:宋來吳冰菱

這一段**的思想是動態規劃

dp[j]

=dp[j]

+dp[j-a[i]];

拼出j的個數等於拼出j-a[i]的個數加上原本拼出j的個數

8樓:牧典表秀美

是的。表示已經定義了max這個巨集,而這個巨集的內容為空。如果後期進行巨集替換則該巨集被替換為空的內容。

比如int

a=max-5;就替換成int

a=-5;

9樓:覃奧韋向

可能是你沒有給兩個變數賦初值,你加兩句賦初值語句在試試看,希望能對你起到幫助

10樓:權敬枝浩然

int(*p)[5]

這是一個陣列指標

說明變數p是一個指標,指向了一個容量為5的陣列。

11樓:顧宜世依白

有區別假如你用的int

main()那麼你程式執行結束後的程序狀態值是在main裡返回的值。如果void的話,其他程式就不能得到你這個程式的結束返回值。。。

12樓:襲邵隱春燕

str1+strlen(str1)/2

strlen(str1)=13(空格也是1個)str+6是&[6]的地址

strcpy(str1+strlen(str1)/2,"esshe")

是將es

she複製到str1+strlen(str1)/2去,就是從第六位開版

始你說的也對權!

c語言報錯的問題?

13樓:匿名使用者

你的程式錯誤,是在

cout << 「enter the temperature in celsius:」;

cout << 「fahrenheit value is:」;中用了中文狀態下的雙引號。

#include

#include

#include

using namespace std;

int main(int nnumberofargs, char* pszargs)

以上程式正確,可以執行。

如果還不行,那就是編譯器的問題。建議:用vc2008,c-free或vc2010.

微軟已停止對vc6.0進行更新了。(開始不習慣很正常,成為高手後會喜歡例如vc2010的)。

c語言問題?

14樓:澄雯賽空

for(k=1;k+1;k++)

中,k=1是設循bai環du的初值,zhik+1是執行循dao環的條件,k++是迴圈的增量回。

k=1時,k+1=2,為非0,c語言中,0代表答假,非0代表真。

所以,k=1時往下執行迴圈,

滿足k<4

列印k的值,即1。

break

退出for

迴圈,下面的printf("%d",k++);

沒有執行。

所以,程式的執行結果是1

15樓:聽不清啊

最後資料型別自動轉換的結果是double型,因為是向長度最大的型別轉換的。

16樓:匿名使用者

應該是d double

17樓:叫我淡藍

s是char型別,可以ascii變int型別115

115+23-2.56=135.44

所以選b

18樓:褚姣姣威智

答案是b。。多維陣列的元素是線性儲存的。所以在記憶體中a陣列是存放在一片專連續的記憶體空間裡。元素的順

屬序為:a[0][0]

a[0][1]

a[1][0]

a[1][1]

a[2][0]

a[2][1]

。c語言對陣列下標越界不作檢查,所以a[0][2]是合法的。它相當於a[0][1]的下一個元素。

而a[0][1]在記憶體中的下一個元素其實是a[1][0]。所以a[0][2]=a[1][0]=1

3/2/1,結果是1啦。。

19樓:森布彭宣

可以對調,也可以寫在同一行

disc的意思是將b*b-4*a*c運算得到的值賦給disc,也就是說它是一個變數

20樓:蟻昂雄賞敬

1,逗號表示式的值是最後一個的值,前面給t賦值為1,然後t+5只是做了運算,沒有把值賦給t,最後t自加,但是是後自加,所以先取其值在自加,整個表示式值為1,t為2.

21樓:納喇樂松丘火

錯誤為d

原因:要說明這個錯誤的原因我要先解釋下什麼叫做函式形參函式形參就是函式的形式引數

也許這樣說你不太明白

舉個列子吧

例如:函式:int

test(int

i)說明這裡的i就是形參

所以d是錯誤的

22樓:冷冷冷冷

很高興為您解答!

答案選b哦

C語言問題,C語言報錯的問題?

滿意請採納 include define n 5 define後面不要 void paixu int q void main paixu q for i 0 i 4 i void paixu int q 套進去表示是if的語句 b q j q j q j 1 q 1 j b define n 5 的...

c語言問題,C語言問題

struct student拼寫成struct studnt了。拼寫錯誤 struct studnt沒有定義,所以無法執行sizeof。include typedef struct student int main c語言問題?嗯你的理解是對的,break就是用來跳出的switch,如果沒有brea...

c語言問題,c語言問題

首先你這個程式輸入個數是不可控的,n沒起到作用,因為你控制輸入的迴圈已經規定了i是從0到99,必須要輸入100個。而你這個 自認為統計總人數 的n n i,相當於n 1 2 3 那是不可能的。while xh i scanf d d xh i sg i n i sum sum sg i 用美元符號做...