Re: [語法] 寫作業遇到瓶頸(問完自D)!謝謝!

看板C_and_CPP作者 (小恐龍)時間14年前 (2009/12/07 16:05), 編輯推噓5(507)
留言12則, 3人參與, 最新討論串1/1
※ 引述《behero (Body of lies.)》之銘言: : 作業題目: : 設計一程式,由鍵盤輸入數項浮點數,並存入一陣列中。針對此陣列: : 1. 計算其平均值 : 2. 找出最大值及其索引值 : 3. 找出最小值及其索引值 : 4. 印出所有資料。 : 這是我寫的程式: : #include<stdio.h> : #include<stdlib.h> : int main(void) : { : int i; : float sum,num[i],Min,Max; : Min=Max=num[0]; 我個人覺得併在一起寫不太好,可是好像complier會過 問題是出在你這樣設,Min的初值是0,所以只要你都輸入大於0的數,最後Min還是0 解決的方法就是先scanf第一個數,再把它塞給Min跟Max,之後再跑for迴圈 而且num[0]沒給初值就用不太好...... 再補充一下,找不到索引號,是你沒有存到阿, 你的i跑for迴圈跑完當然是跑到底,印出這個i沒有意義 要就再設兩個變數把索引號存起來 : 目前跑不出最小值以及無法判定最大值跟最小值之索引號是多少 : 想了很久還是不知道問題在哪裡! : 希望各位板友提供意見!!謝謝! -- 我要以耍冷來對抗溫室效應 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.57.123 ※ 編輯: cooper6334 來自: 112.104.57.123 (12/07 16:06)

12/07 16:06, , 1F
語法上沒有錯的東西, compile time應該是不會報錯的@@"
12/07 16:06, 1F
※ 編輯: cooper6334 來自: 112.104.57.123 (12/07 16:09)

12/07 16:28, , 2F
補充一下, Min/Max的初值應該不是0, 而是根本不知是啥;
12/07 16:28, 2F

12/07 16:28, , 3F
解決方法就如您說的, 等輸入第一筆再記錄; 或者理論上把
12/07 16:28, 3F

12/07 16:29, , 4F
應該說是天曉得是多少,不過是0的機率還滿高的
12/07 16:29, 4F

12/07 16:29, , 5F
Min設成MaxFloat, Max設成MinFloat應該也是可以的:)
12/07 16:29, 5F

12/07 16:30, , 6F
是0機率應該還好, VC debug mode應該會是0xCCCCCCCC, 其
12/07 16:30, 6F

12/07 16:31, , 7F
他情況完全取決於stack裡殘留的東西是啥....@_@"
12/07 16:31, 7F

12/07 16:37, , 8F
我是先存第一筆資料,再下去跑for,再找Min & Max,我應該
12/07 16:37, 8F

12/07 16:37, , 9F
是這樣寫~我很菜 QQ
12/07 16:37, 9F

12/07 16:51, , 10F
謝謝C大跟V大的回答!
12/07 16:51, 10F

12/07 16:54, , 11F
ㄟ~~你還有一個問題是, num[]不能這樣開啊....@_@"
12/07 16:54, 11F

12/07 16:54, , 12F
照你後面的迴圈來看, num[]宣告直接給num[10]就好了.
12/07 16:54, 12F
文章代碼(AID): #1B7BTKUI (C_and_CPP)