回覆列表
  • 1 # dzrdr44206

    樓主的思路是對的。不能直接對陣列用動態定義,但是可以對指標使用。所以動態定義一個指標,把它當成陣列用。我把你的程式做了些簡單的修改,執行成功。源程式如下:#include<stdio.h>#include<stdlib.h>main(){float*a;inti,j,length;printf("請輸入要排序數字的個數:\n");scanf("%d",&length);a=(float*)malloc(length*sizeof(float));printf("請輸入%d個數(數字之間用空格或回車隔開):\n",length);for(i=0;i<length;i++){scanf("%f",&a[i]);}for(i=0;i<length-1;i++)for(j=0;j<length-1-i;j++)if(a[j]>a[j+1]){a[j]=a[j]+a[j+1];a[j+1]=a[j]-a[j+1];a[j]=a[j]-a[j+1];}printf("這%d個數從小到大排列的順序是:\n",length);for(i=0;i<length;i++)printf("%-7.2f\n",a[i]);}

  • 中秋節和大豐收的關聯?
  • 李白的《秋浦歌》是什麼意思?