|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这个程序哪里错了吗
- /*从键盘输入10个数存入数组a,计算数组中元素的平均值;将数组大于平均值的数据移至数组前部,小于等于平均值的数据移至数组后部*/
- #include<stdio.h>
- void main()
- {
- double a[10],b[10],sum=0,ave;
- int i,j;
- for(i=0;i<10;i++){
- scanf("%lf",&a[i]);
- sum+=a[i];
- }
- ave=sum/10;
- printf("%lf",ave);
- for(i=0,j=0;i<10;i++,j++){
- if(a[i]>ave){
- b[j]=a[i];
- }
- else{
- b[10-j]=a[i];
- }
- }
- for(j=0;j<10;j++){
- printf("%lf ",b[j]);
- }
- }
复制代码
程序还可这么来写,保持原输入顺序不变
- /*从键盘输入10个数存入数组a,计算数组中元素的平均值;将数组大于平均值的数据移至数组前部,小于等于平均值的数据移至数组后部*/
- #include<stdio.h>
- void main()
- {
- double a[10], b[11], sum = 0, ave;
- int i, j = 1;
- for (i = 0;i < 10;i++)
- {
- scanf("%lf", &a[i]);
- sum += a[i];
- }
- ave = sum / 10;
- b[0] = ave;
- for (i = 0;i < 10;i++)
- {
- if (a[i] > ave)
- {
- b[j] = a[i];
- j++;
- }
- }
- for (i = 0;i < 10;i++)
- {
- if (a[i] < ave)
- {
- b[j] = a[i];
- j++;
- }
- }
- for (j = 0;j < 11;j++)
- {
- printf("%lf ", b[j]);
- }
- printf("\n");
- }
复制代码
|
|