c語言,VC 6 00為什麼結果不對,說下原因

2025-03-02 00:40:21 字數 1614 閱讀 7239

1樓:網友

這樣肯定是錯的,首先 p = a; 意思就是戚仔局給 p 賦值為 a[0] 的位址,然後又用scanf 改變p,使p不再指向 a[0] 了,所以列印肯定是錯誤的。

因此要改變的不是p指向的位址,而是改變p指向戚簡位址的值,可高讓以改成以下那樣。

#include

void main()

int *p,i,a[10];

p=a;for(i=0;i<10;i++)scanf("%d", a[i]);

printf("");

for(i=0;i<10;i++,p++)printf("%d",*p);

2樓:網友

#include橘磨春。

void main()

int *p,i,a[10];

p=a;for(i=0;i<10;i++,p++)scanf("%d",p);

printf("");

p = a;//p指標應該回到初始值,否者不知道指到何處去了。

for(i=0;i《圓耐遊前10;i++,p++)printf("%d",*p);

3樓:網友

首先必須搞清楚乙個觀念:計算機輸出的結果都是對的,但不一定是你想要的結果!

所以,不明白你提出的問題!

猜餘山咐豎純測:你是想試下用指標來運算元組吧?

如果是這樣,那問題就出在:你忘記重置p指標了!唯則在第二個for前增加:p=a; 。

4樓:網友

#include

void main()

int *p,i,a[10];

p=a;for(i=0;i<10;i++,p++)scanf("%d"圓耐,p);

printf("");

p = a; /橘磨春需要讓指標回到陣列頭部。

for(i=0;i<10;i++,p++)printf("遊前%d",*p);

vc程式設計錯誤

5樓:網友

有一處語法錯誤:

c=5/9(f-32);

句中漏了乘號。

還有一處邏輯錯誤:5 和 9 都為整數,所以 5/9 返回值也為整型,即為 0。所以,無論輸入什麼數值,返回的溫度值都為0。

還有幾處**書寫不當:

1. 在讀入資料時,資料的位數不是由**控制的,而是由輸入資料本身決定的。所以,scanf("華氏溫度=%.2f",&f);

中 %.2f 應改為 %f。

2. scanf() 第乙個引數中,非格式控制符的字元應儘量少一些,不然在輸入資料時需要多輸入許多字元,使程式使用不便。比如,scanf("華氏溫度=%f", &f);

這句話,就需要在輸入資料時輸入。

華氏溫度=這段文字,才可將 f 賦值為 。

3. 在 scanf() 語句之前,最好有乙個輸出語句,提示使用者應做的工作。

4. 另外,在 c99 及其之後的 c 語言標準中,建議將 main 函式返回值寫為整型。它返回 0 表示程式正常執行結束,否則表示程式執行時出現異常。

更改之後程式**如下:

#include

#include

int main()

vc是什麼語言跟c語言c的區別C語言和C語言的區別是什麼?

vc,全稱copy為microsoft visual c microsoft visual c 簡稱visual c msvc vc 6.0或vc6.0 是microsoft公司bai 推出的以c 語言為基礎的開 du發windows環境程zhi序,物件導向的視覺化dao 整合程式設計系統。一 性質...

c語言,為什麼結果是13c語言,為什麼結果是

答案我執行過了,是 1 3 4 5,現在我來解釋一下,希望我的解釋你能夠理解 首先int a 5 1 注意到c c 語言規定是a 0 1,a 1 4,a 2 5 而不是a 1 1,a 2 4,a 3 5 2 經過 while i n k a i i 由於a i 即a 1 4,而k 3不大於a 1 不...

C語言,我的程式為什麼執行不對,c語言中輸入一個程式後顯示無錯誤,為什麼不能執行

是陣列,本身就是地址,不必用 2 b進位制,每位上的數字最大值是b 1,因此,應該先檢視3個數各位的數字,取最大值 1作為b的最小值.3 注意,base在每次求1個數之前,要重新歸1。你求sum1,sum2,sum3前,都沒有歸1,base累積,越來越大。第一個base 1 應該在for i len...