課程
/后端開發(fā)
/C
/C語言入門
結(jié)果怎么出來的,為什么是10,,,,能不能對(duì)其中的一個(gè)結(jié)果的由來舉個(gè)例子
2016-06-16
源自:C語言入門 6-4
正在回答
#include <stdio.h>
void replaceMax(int arr[],int value)
{
? ? int max = arr[0]; ? ? /*max=10*/
? ? int index = 0;
? ? int i;
? ? for(i=1;i<5;i++)
? ? {
? ? ? ? if(arr[i]>max) ?/*41>10? ,3>41? , 12>41? , 22>41?*/
? ? ? ? {
? ? ? ? ? ? ?max=arr[i]; ? ?//將數(shù)組中較大的數(shù)賦值給max, ? max=41
? ? ? ? ? ? index = i; ?//記錄當(dāng)前索引, ? index=1
? ? ? ? } ? ? ? ? ? ? ? ?
? ? } ?
? ? arr[index] = value; ? /*arr[1]=1,將1賦值給arr[1]*/
}
int main()
? ? int arr1[] = {10,41,3,12,22};
? ? int arr2[] = {1,2,3,4,5};
? ? replaceMax(arr1 ,arr2[0] ); //將數(shù)組arr1和數(shù)組arr2的第一個(gè)元素傳入函數(shù)中
? ? for(i=0;i<5;i++) ? ? ? ? ? ?/*將數(shù)組arr1[i]輸出,其中arr[1]被替換,arr[1]=10*/
? ? ? ? printf("%d ",arr1[i]); ? ? ? ? ? ? ? ?
? ? }
? ? return 0; ? ?
? ? int max = arr[0];
? ? ? ? if(arr[i]>max)
? ? ? ? ? ? max = arr[i]; ? ? ? ?//將數(shù)組中較大的數(shù)賦值給max
? ? ? ? ? ? index = i; ?//記錄當(dāng)前索引
? ? arr[index] = value;
? ? replaceMax(arr1, arr2[0]); //將數(shù)組arr1和數(shù)組arr2的第一個(gè)元素傳入函數(shù)中
? ? for(i=0;i<5;i++)
因?yàn)閍rr1[]中最大值是arr[1] = 41,所以max = arr[1]; 但是最后又將arr2[0] = 1,即是value的值賦給了arr[1].?? ?arr[index] = value; ?所以最終輸出結(jié)果為10 , 1, 3, 12 ,22.相當(dāng)于將arr1[]數(shù)組中的最大數(shù)換成了arr2[0],然后再將arr1[]輸出。希望能夠幫助到你。
missyou012 提問者
酸甜果汁分你一半 回復(fù) missyou012 提問者
qq_淡末初夏_03336219 回復(fù) 酸甜果汁分你一半
舉報(bào)
C語言入門視頻教程,帶你進(jìn)入編程世界的必修課-C語言
1 回答結(jié)果為什么是0,不是10
1 回答為什么算出來結(jié)果是0?
2 回答為什么我的結(jié)果出來是71.199997元.....
2 回答為什么結(jié)果是10歲求教
1 回答這個(gè)結(jié)果怎么來的a>3結(jié)果為什么是1呢 怎么算的
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-07-15
#include <stdio.h>
void replaceMax(int arr[],int value)
{
? ? int max = arr[0]; ? ? /*max=10*/
? ? int index = 0;
? ? int i;
? ? for(i=1;i<5;i++)
? ? {
? ? ? ? if(arr[i]>max) ?/*41>10? ,3>41? , 12>41? , 22>41?*/
? ? ? ? {
? ? ? ? ? ? ?max=arr[i]; ? ?//將數(shù)組中較大的數(shù)賦值給max, ? max=41
? ? ? ? ? ? index = i; ?//記錄當(dāng)前索引, ? index=1
? ? ? ? } ? ? ? ? ? ? ? ?
? ? } ?
? ? arr[index] = value; ? /*arr[1]=1,將1賦值給arr[1]*/
}
int main()
{
? ? int arr1[] = {10,41,3,12,22};
? ? int arr2[] = {1,2,3,4,5};
? ? int i;
? ? replaceMax(arr1 ,arr2[0] ); //將數(shù)組arr1和數(shù)組arr2的第一個(gè)元素傳入函數(shù)中
? ? for(i=0;i<5;i++) ? ? ? ? ? ?/*將數(shù)組arr1[i]輸出,其中arr[1]被替換,arr[1]=10*/
? ? {
? ? ? ? printf("%d ",arr1[i]); ? ? ? ? ? ? ? ?
? ? }
? ? return 0; ? ?
}
2016-06-19
#include <stdio.h>
void replaceMax(int arr[],int value)
{
? ? int max = arr[0];
? ? int index = 0;
? ? int i;
? ? for(i=1;i<5;i++)
? ? {
? ? ? ? if(arr[i]>max)
? ? ? ? {
? ? ? ? ? ? max = arr[i]; ? ? ? ?//將數(shù)組中較大的數(shù)賦值給max
? ? ? ? ? ? index = i; ?//記錄當(dāng)前索引
? ? ? ? } ? ? ? ? ? ? ? ?
? ? } ?
? ? arr[index] = value;
}
int main()
{
? ? int arr1[] = {10,41,3,12,22};
? ? int arr2[] = {1,2,3,4,5};
? ? int i;
? ? replaceMax(arr1, arr2[0]); //將數(shù)組arr1和數(shù)組arr2的第一個(gè)元素傳入函數(shù)中
? ? for(i=0;i<5;i++)
? ? {
? ? ? ? printf("%d ",arr1[i]); ? ? ? ? ? ? ? ?
? ? }
? ? return 0; ? ?
}
因?yàn)閍rr1[]中最大值是arr[1] = 41,所以max = arr[1]; 但是最后又將arr2[0] = 1,即是value的值賦給了arr[1].?? ?arr[index] = value; ?所以最終輸出結(jié)果為10 , 1, 3, 12 ,22.相當(dāng)于將arr1[]數(shù)組中的最大數(shù)換成了arr2[0],然后再將arr1[]輸出。希望能夠幫助到你。