首页 > 用户发贴区 > 编程问题提问区 > 麻烦高手找一下?真不知这个错误在那里。
2009
12-09

麻烦高手找一下?真不知这个错误在那里。


题目为对a[9]数组排序

 

 

 

#include<stdio.h>
int main(void)
{
 int i,j,temp,a[]={1,2,3,4,7,6,8,5,9};
 for(i=0;i<9;i++)
       printf(“%3d”,a);
    printf(“\n”);
 for(i=1;i<=8;i++)
 { 
  for(j=0;j<=8-i;j++)
  { 
   if(a[j]>a[j+1])
    temp=a[j];
       a[j]=a[j+1];
    a[j+1]=temp;
  }
 }
 for(i=0;i<9;i++)
  printf(“%3d”,a);


麻烦高手找一下?真不知这个错误在那里。》有 3 条评论

  1. whos 说:

    程序修改后如下:
    #include<stdio.h>
    int main(void)
    {
      int i,j,temp,a[]={1,2,3,4,7,6,8,5,9};
      for(i=0;i<9;i++)
          printf(“%3d”,a[i]);          //这里输出数组元素用a[i],a是数组的首地址,a[i]才是数组中的元素
      printf(“\n”);
      for(i=1;i<=8;i++)
      {
        for(j=0;j<=8-i;j++)
        {
          if(a[j]>a[j+1])                 //属于if()的多条语句要用{}括起来
          {
            temp=a[j];
            a[j]=a[j+1];
            a[j+1]=temp;
          }
        }
      }
      for(i=0;i<9;i++)
          printf(“%3d”,a[i]);           //同上
      return 0;
    }

    whos2009-12-10 00:14:21

  2. bianzhuang 说:

    真是太感谢了 

     其实晚上我又去編了,这一次什么都没省略, 成功了
    我开始以为是temp没赋值的缘故了
      呵呵  谢谢啦   哦 能加你的qq吗?我的是272651211
     
    我是学计算机的 对它也很感兴趣 
  3. lxd 说:

    这个程实现什么了?怎么看都什么也没实现呀?

     if(a[j]>a[j+1])     ??????
    不是排列大小吗?

留下一个回复