1樓:墨汁諾
*min=a[n];a[n]=k;*max=a[0];a[0]=j;n=7,但陣列的下標為0-6,出現了下標越界。
#include
int main(void)
printf("請輸入陣列:");
a[0]=a[maxp];
a[maxp]=t;
printf("輸出:\n");
陣列中的元素
陣列中的所有元素都具有相同型別。陣列中的元素儲存在一個連續性的記憶體塊中,並通過索引來訪問(這一點也和結構和類中的欄位不同,它們通過名稱來訪問)。陣列元素並非只能是基後設資料型別,還可以是結構、列舉或類。
2樓:
你的實現有問題,大小值位置必須分開找,找完之後交換,再找#include
int main(void)
t=a[0];
a[0]=a[maxp];
a[maxp]=t;
printf("輸出:\n");
for(i=0;i<10;i++)
return 0;}
3樓:汐日南莘
#include
main()
int a[10],i,max,maxp,min,minp,t;
printf("請輸入陣列");
for(i=0;i<10;i++)//是10不是1scanf("%d",&a[i]);//這裡丟了個括號max=min=a[0];
maxp=minp=0;
for(i=1;i<10;i++)
if(a[i]>max)
max=a[i];
maxp=i;
if(a[i]min=a[i];
minp=i;
}//for迴圈應到這為止
if(minp!=0)//注意要加這個條件 防止最小值是第一個時交換 出錯
t=a[0];
a[0]=a[maxp];
a[maxp]=t;
t=a[9];
a[9]=a[minp];
a[minp]=t;
else
t=a[0];
a[0]=a[maxp];
a[maxp]=t;
t=a[9];
a[9]=a[maxp];
a[maxp]=t;
for(i=0;i<10;i++)
if(i!=4)
printf("%8d",a[i]);
else printf("%8d\n",a[i]);
printf("\n");
沒問題了 已改正
可能出錯的情況都測試了 這樣就可以同時找最大值最小值了
用c語言程式設計實現輸入陣列,最大的與第一個元素交換,最小的與最後一個元素交換,輸出陣列(用指標的方法)
4樓:
//執行時,請隨機輸入10個數!
#include
void main()
if(f[j] }k=f[0]; f[0]=f[b]; f[b]=k; if(f[9]!=max) for(k=0;k<10;k++) printf("%d ",f[k]);} 5樓:淡寫 #include void main() else if(*(p+i)<=min) temp=*a, *a=*pmax; *pmax=temp; temp=*(a+n-1); *(a+n-1)=*pmin; *pmin=temp; for(i=0; i printf("% d", *(a+i));} c語言輸入陣列,最大的與第一個元素交換,最小的與最後一個元素交換,輸出陣列 6樓:風若遠去何人留 唯一的一個問題 就是如果最大最小值本來就在第一個或者最後一個的情況. 比如, 最小值本來在a[0] 最大值在a[4]這樣迴圈後min=0 max=4 於是 先做了一次交換 a[max]和a[0] 也就是a[4]和a[0] 然後 又做了一次交換, a[min]和a[4] 還是a[0]和a[4] 又換回去了. 導致最小在a[0] 最大在a[4] 與要求不符. 修改方式 就是 m=array[max]; array[max]=array[0]; array[0]=m; if(min==0) min=max;//如果min已經被換走了,那麼把min賦值成被換的位置. m=array[min]; array[min]=array[4]; array[4]=m; 7樓:匿名使用者 沒有錯誤啊,不知**沒有達到要求呢? 有一點就是,有可能第一個數就是最小的,最大的和第一個數交換之後就把最小的數換走了? 8樓: m=array[max]; // array[max]=array[0];多餘的array[0]=m; m=array[min]; // array[min]=array[4];多餘的array[4]=m; 先找出最大值和最小值,然後分別複製給max 和min 在求和好了。 include int main 程式設計實現 輸入三個數,要求輸出最大值 include stdio.h int max int x,int y,int s 宣告,如果被調函式在主函式後 main int a,b,c,d 定義4個... 念憶 include include void main include include include c 編寫程式。輸入兩個正整數,求它們的最大公約數和最小公倍數unsigned int maxdivisor unsigned int a,unsigned int b return 1 unsi... 程式如下 include int a 4 4 int ahang 4 alie 4 void main printf d n sum int k,o int min,max int temp,index for k 0 k 3 k temp alie k alie k min,alie index ...編寫C語言程式,要求輸入數,求最大數和最小數之和
用C語言編寫程式,輸入兩個整數,輸出其最大公約數和最小公倍數
C語言陣列元素求和的編寫程式(具體的步驟)