簡單C語言,程式顯示沒錯誤,但是總是執行不出來,為什麼呢

2022-01-13 09:23:29 字數 2279 閱讀 6389

1樓:

改成:for(i=0;i<6;i++)

scanf("%d",&num[i]);

2.for(i=1;i<=6;i++)改成for(i=0;i<6;i++)

陣列下標是從0開始的,=6就越界了

2樓:明天未來

你只定義了6個陣列,可是你用了7個元素,已經越界溢位了。你把迴圈改成這樣就ok了。

for(i=1;i<6;i++)

c/c++語言定義的陣列是不包括本身元素,而且是從零元素開始,即你定義的應該是:

num[0],num[1],num[2],num[3],num[4],num[5];

並不包括num[6]。因此,你就會出錯。

編譯器只能檢測你的語法有沒有問題,並不能檢測隱藏的問題。所以學c語言要非常小心。

3樓:匿名使用者

明顯的錯誤嘛,scanf()前面6個%d,需要分配6個int的,你後面只有乙個num,執行的話會出現段錯誤,改成:

printf("the max num is %d\n",max);}

4樓:匿名使用者

陣列時從零開始的

第乙個元素為num[0]

5樓:匿名使用者

陣列長度為6,然而其下標範圍是0到5,你的for迴圈中i<=6卻說明了陣列下標可以達到6~~~

所以把for迴圈改為如下形式

for(i=0;i<6;i++)

6樓:匿名使用者

中的num[i],把i去掉。

7樓:匿名使用者

都已經說的很明白了 ......

簡單c語言,沒有提示錯誤但是執行時沒有顯示

8樓:

你好!執行要輸入數字才有顯示,不過輸入數字後會得到錯誤的結果,稍加修改就好了:

當是輸入的double 時要把%f改成%lf具體如下:

#include

main()

c語言程式沒有錯,但為什麼總顯示乙個錯誤

9樓:韻城之都的管家

嗯,**是沒有問題的。那麼vc可能出問題了。

試試重新編譯一下或是重啟一下可能會有解決。

10樓:古神孤鴻

看不清,發**出來幫你看看

c語言程式老是顯示錯誤但是沒有錯是什麼原因 5

11樓:匿名使用者

從**上看沒有問題。

如果你是新安裝的編譯器,那麼有可能是編譯器配置問題。 (error spawning cl.exe)

也有可能是你工程中加了不止乙個檔案。(function main )

12樓:匿名使用者

複製**,退出軟體重新開啟編譯。

13樓:匿名使用者

你家乙個 return 0;試試

這條c語言 程式為何沒顯示出錯但執行不起來?

14樓:物理公司的

這裡要加&

15樓:匿名使用者

scanf("%s %f",name,height);

改成scanf("%s%f",name,&height);

c語言程式檢查沒有錯誤,但是為什麼執行時下面卻出現錯誤不能執行啊???

16樓:匿名使用者

可能是目標函式在與庫函式連線時有錯

17樓:曾聽南

把錯誤**貼上來給大家看看唄

c語言中輸入乙個程式後顯示無錯誤,為什麼不能執行

18樓:匿名使用者

(1)函式

的編寫格複式:

返回值制型別 函式名(

形式引數)

舉個例子:求兩個數中最大數

int com(int a,int b)

(2)函式不能自己執行,需要呼叫才能執行。

舉個例子:

int main()

這樣子才能輸出結果。

C語言程式沒有錯,但為什麼總顯示錯誤

嗯,是沒有問題的。那麼vc可能出問題了。試試重新編譯一下或是重啟一下可能會有解決。看不清,發 出來幫你看看 c語言程式老是顯示錯誤但是沒有錯是什麼原因 5 從 上看沒有問題。如果你是新安裝的編譯器,那麼有可能是編譯器配置問題。error spawning cl.exe 也有可能是你工程中加了不止乙個...

C語言程式求教,簡單c程式求教

首先解釋一下原因,for的第乙個分號和第二個分號之間是乙個判別條件,如果為真,繼續下一次迴圈 你的判別條件是k k 26,printf k d n k 這是乙個逗號表示式,開動你的腦筋告訴我,逗號表示式的值是什麼?對了,是最後乙個表示式的值 也就是printf k d n k 的返回值 再告訴我,p...

C語言程式編譯沒有錯誤,但是沒有結果,為什麼啊

有結果呀,我用的vs2012,如圖,lz是不會用編譯器吧,程式除錯無誤的話結果會閃一下,點執行就能保持住dos視窗了 include main printf 5d n i if i 10 0 getchar 是不 du是一 zhi閃dao 而過版?權 include int main void pr...