台灣最大程式設計社群網站
線上人數
901
 
會員總數:239078
討論主題:185521
歡迎您免費加入會員
討論區列表 >> C/C++ >> m個相異整數,最大值設為-1
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
m個相異整數,最大值設為-1
價值 : 20 QP  點閱數:142 回應數:2

樓主

na
門外漢
0 1
8 1
發送站內信

int main() {
int m[3]={1,8,7},ans,max=-1,i;
for (i=0;i+1<=3;i++){
if (m[i]<m[i+1]){
ans=m[i+1];
m[i+1]=m[i];
m[i]=ans;
ans=max;}
}


printf("%d",ans);






搜尋相關Tags的文章: [ 急~求幫忙 ] ,
本篇文章發表於2016-12-06 13:39
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

na
檢舉此回應
跑到最後一個數字,就跑不了,請教教我,謝謝
本篇文章回覆於2016-12-06 13:41
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

Tony Tsai
檢舉此回應
請問你是要找最大值還是排序?

首先你的m[3] 它的實際位置是 m[0]、m[1]、m[2]
你的程式碼中間 m[i]<m[i+1]
i = 2之後 m[i+1] 是 m[3]就超出範圍了
自然就爆掉沒辦法用

第二個
你宣告max又宣告ans的用意是?
你本來就是期望給出ans吧,何必又把它變回-1

如果你只是要找最大值且不計是否使用演算法的話

本篇文章回覆於2016-12-21 00:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.