C問題程式設計時沒有提示有錯誤,但是一除錯就提示錯誤

2021-03-03 21:28:37 字數 1581 閱讀 2285

1樓:匿名使用者

先把你的錯誤報告貼出來看看吧,看下報的什麼錯。

2樓:米飯發言

程式設計時候

baivs使用的靜態代du碼檢查,只能檢查一般的語法zhi錯誤。調dao試時候是對**進行編專譯,這屬時候能暴露出大部分的錯誤。即使通過了編譯,執行時也有可能出錯。

所以,不要依賴編譯器的功能,要保證程式的正確性,需要自己設計完善的測試用例。可以使用vs提供的自動化單元測試工具保證程式的正確性。

當然了,沒有100%正確的**,但是通過靜態檢查、編譯檢查、單元測試覆蓋,可以發現一般規模程式裡絕大部分的問題

3樓:匿名使用者

變數d重複定義,編譯肯定會報錯的。

4樓:

截圖截成這樣看不清怎麼解答

為什麼在編譯c++程式的時候是沒有錯誤的,但是執行的時候就是出不來結果

5樓:吾守護奇蹟

編譯通過只是說明沒有語法錯誤,執行不出結果就是你**邏輯問題了貼**看看吧,自己打斷點除錯一下

while(r=!0)

寫反了吧, r != 0

否則就成死迴圈了。。。

6樓:夢中睡客

可能是你沒有輸出結果吧?

7樓:翼下之風

你可以跟蹤除錯一下就知道了

8樓:百科大全才

沒有編譯錯誤, 有邏輯錯誤;

你最好把**貼出來看看;

請c++高手指點,為什麼編譯時候沒有錯,但是執行的時候顯示有一個錯誤呢?

9樓:匿名使用者

1. for(i=0,j=i+1;i<9;)else

} 如果p[0]最小,那麼都只執行if複合語句,結果i不變,j遞增,迴圈......

for迴圈修改為:

for(i=0,j=i+1;i<9, j<10;)2.for(i=0,j=i+1;i<9;)else

} 同1,如果p[0]最大...版...同樣權

修改下for

3.for(p=a;p<(p+10);p++)cout<<*p<<" ";

在最後的輸出中,你看看你的條件設為什麼了。

p < p+10

這條件在記憶體檢測完之前永久成立,檢測完幾乎是不可能的,現在記憶體都以g為單位!

修改for迴圈為:

for(p=a;p<(a+10);p++)解決問題。

另外,這段**的功能似乎成了:

輸入10個數字,將其中最小及最大的數修改為第一個數。。。

強大!~~~

10樓:塵封夢想

這個很奇怪啊

怎麼在main裡定義函式 這不像是c++的語法int main()

{ void sr();

void wcg(int *p);

void sc(int *p);

11樓:匿名使用者

宣告貌似也應該在外面的吧。

再問問,你的程式要幹什麼?

C 程式設計問題,C 程式設計問題

include using namespace std void circle void else break while 1 return 0 c 程式設計,出現2 個無法解析的外部命令,怎麼回事?client.h ifndef client define client include inclu...

C 程式設計問題

1.首先 cin a,b,c 沒有這種寫法,編譯的時候可能能通過,但是會有run time error 必須分開寫 cin a cin b cin c 2.if裡面的條件同時滿足用 間隔,後面的內容要用花括號包著,面積要重新定義變數,乘法要寫出來 if a b c a c b b c a else ...

請教C 程式設計問題,請教一個C 程式設計問題

我的思路是這樣 每行一共有9個輸出,每一行第5個必然是 就以這個 把圖形分為兩半,那麼第一行到第五行輸出的空格數是遞減的,每行減少一個空格,這樣看問題就好解決了,避開了每行輸出的 是奇數的問題,然後再對稱處理一下就ok c 如下 include using namespace std int mai...