亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

怎么運行的?

#include <stdio.h>
void replaceMax(int arr[],int value)
{
??? int max = arr[0];
??? int index = 0;
??? int i;
??? for(i=1;i<5;i++)//1.2.3.4
??? {
??????? if(arr[i]>max)
??????? {
???????????? int max= arr[i] ;??????? //將數組中較大的數賦值給max
??????????? index = i;? //記錄當前索引;index=4
??????? }?????????????? ?
??? } ?
??? arr[index] = value;//arr[i]=value={1.2.3.4}
}

int main()
{
??? int arr1[] = {10,41,3,12,22};
??? int arr2[] = {1,2,3,4,5};
??? int i;
??? replaceMax(arr1 , arr2[0]? ); //將數組arr1和數組arr2的第一個元素傳入函數中
??? for(i=0;i<5;i++)
??? {
??????? printf("%d\n",arr1[i]);?????????????? ?
??? }
??? return 0;?? ?
}

正在回答

1 回答

不太懂你問的是什么……不過程序沒什么問題可以運行啊,旁邊都有注釋了

0 回復 有任何疑惑可以回復我~
#1

qq_犎_0 提問者

我主要想問的是為什么arr【2】是代替那個數組的最大值,最后一個for循環是怎樣控制數組輸出的數量,第一個replacmax寫這么多最后還是被arr【1】數組帶入,寫這么多意義在哪,這題看了蠻久的,還是沒看明白流程是怎么運行的
2016-03-06 回復 有任何疑惑可以回復我~
#2

狼顧

首先你說的arr[2]應該是arr2[]吧。并沒有代替arr1[]最大值,其次,for 循環基本可以看做控制運行次數,自定義函數中就是數字之間兩兩比較找出最大值,所以五個數字進行四次比較,也就是循環四次,主函數中的for循環5次可以看做將arr1中的五個數字打印出來,由于引用自定義函數時將arr2的第一個數字傳遞給了自定義函數中的形參~所以最后一個數字被1給替代了……
2016-03-06 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C語言入門
  • 參與學習       926904    人
  • 解答問題       21533    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

怎么運行的?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號