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 int main int a 20 int k 0,sum 0,i for i 0 i 20 i scanf d a i if a i 0 sum a i 負數之和 k 計數 printf d d sum,k return 0 執行效果 一 return在函式中的作用 我們如果... 將前5個數和後5個數映象對調即可。如下 include stdafx.h if the vc 6.0,with this line.include stdio.h int main void int a 10 i,j printf input 10 integers.n for i 0 i 10 s... 幻兒 你是用手機提問的 回答字數的上限是100字 程式編出來超過了字數 建議你用電腦提問 上限是9999字 要不就把郵箱發上來 我給你傳到郵箱裡 要不程式不能完整顯示到頁面上啊 匿名 熱心 void goleft int x,int y void goright int x,int y 真的不能再低...C語言程式設計從鍵盤中任意輸入整數,統計其中負數的個數,並
用C語言編寫輸入整數到陣列中,逆序後將其存回陣列並輸出
C語言程式設計 用陣列輸入整數,從大到小排序,然後輸出下標