1樓:匿名使用者
1.找出陣列中的最大值和最小值索引位置,然後將其交換即可#include
// 交換最大、最小值位置
void swaplimval(int *src, int len)else if (min > src[i])// 元素如果比最小數的,則重置最小值,及其索引
}if (maxlen == minlen) // 如果所有值一樣,不用交換
return;
int tem = src[maxlen]; // 交換最大、最小值src[maxlen] = src[minlen];
src[minlen] = tem;
}int main()
2樓:匿名使用者
#include
void main()
maxpos=minpos=0;
for (i=1;i<10;i++)
{if (a[i]>a[maxpos])
maxpos=i;
if (a[i]
3樓:匿名使用者
你程式的錯誤:
findmax和findmin邏輯不對,你的意思是要返回最大值與最小值得位置嗎,如果是這樣,完全沒有實現這個功能,無論怎樣,返回值都是9,如果你要返回最大最小值,那就不應該return i或者return j ,而應該return max或者return min
read函式也有問題,你返回一個值是什麼意思?有必要嗎?
無論是read函式,還是findmax,findmin函式,對於陣列迴圈遍歷時都只進行了9遍,你不是處理10個數嗎?
for(i=0;i<=t;i++);
printf("%d ",a[i]);
for(i=t+1;i<=s;i++)
printf("%d ",a[i]);
這幾句**是什麼意思? 只是輸出陣列中的元素的話一個迴圈就夠,沒必要拆開啊?
總之,邏輯不清楚,其實這個問題非常的簡單,你可以一個函式就寫出來,遍歷10個數,用maxindex和minindex同時記錄最大值與最小值得位置,根據得到的maxindex和minindex 交換最大值與最小值在陣列中的位置,最後只需要輸出陣列即可
有什麼問題可以追問。
c語言從鍵盤任意輸入10個整數,程式設計實現將其中最大數與最小數的位置對換後,再輸出調整後的陣列。
4樓:匿名使用者
#include
#define maxsize 10
void fun(int a)
else if(a[i]
}temp = a[maxindex];
a[maxindex] = a[minindex];
a[minindex] = temp;
}main()
printf("\n");
fun(a);
printf("調換後:\n");
for(k=0;kprintf("%d ",a[k]);
}擴充套件資料:
陣列使用規則:
1.可以只給部分元素賦初值。當中值的個數少於元素個數時,只給前面部分元素賦值。
例如:static int a[10]=;表示只給a[0]~a[4]5個元素賦值,而後5個元素自動賦0值。
2.只能給元素逐個賦值,不能給陣列整體賦值。例如給十個元素全部賦1值,只能寫為:
static int a[10]=;而不能寫為:static int a[10]=1;請注意:在c、c#語言中是這樣,但並非在所有涉及陣列的地方都這樣,資料庫是從1開始。
3.如不給可初始化的陣列賦初值,則全部元素均為0值。
4.如給全部元素賦值,則在陣列說明中, 可以不給出陣列元素的個數。例如:
static int a[5]=;可寫為:static int a=;動態賦值可以在程式執行過程中,對陣列作動態賦值。這時可用迴圈語句配合scanf函式逐個對陣列元素賦值。
5樓:聽不清啊
#include
void main()
for(i=0;i<10;i++)
printf("\n"); //換行max=a[0];min=a[0];
m=0; n=0; //m,n也要有初值,否則最大最小數在a[0]就出錯
for(i=0;i<10;i++)
if(a[i]
}a[n]=max;
a[m]=min;
for(i=0;i<10;i++)}
6樓:金色潛鳥
漏寫 初始 值 m=0,n=0;
補上即好。
7樓:愛笑
#include
#define arr_size 10
void maxminexchang(int a, int n);
int main(void)
temp=a[n-i];
a[n-1]=a[maxpos];
a[maxpos]=temp;
minvalue=maxvalue;
for(m=0;m if(a[m] temp=a[0]; a[0]=a[minpos]; a[minpos]=temp; /************end**************/} include main include stdio.h main void main else if a 2 1 else void main else 怎麼分析這個程式啊?用c語言程式設計 輸入乙個整數,判斷這個數是奇數還是偶數。請大家幫忙啊。include int main if x 2 0 ... 如下 include int main void printf d sum return 0 用c語言程式設計實現從鍵盤任意輸入10個整數,統計其中奇數的個數,並計算這些奇數的和。5 樓上兩位同學方法都對。但第二種方法用陣列完全沒必要。include void main printf 共有 d個奇數... include int main void printf d n sum c語言程式設計,任意輸入乙個五位正整數,逆序輸出每一位上的數 如輸入54321 輸出12345 要 include int res 5 外部變數 把每一位作為陣列元素進行儲存 int p res int main return...用C語言程式設計 輸入整數,判斷這個數是奇數還是偶數
用C語言程式設計實現從鍵盤任意輸入整數,統計其中奇數的個數,並計算這些奇數的和
輸入小於五位數的整數。將其倒序輸出用c語言解答