fanzhihao 发表于 2016-3-28 17:25:28

求大神解答~!!!

#include<stdio.h>
#include<math.h>
int compare(int b[],int n);
int main()
{
        int a,i,j;
        printf("input a:\n");
        for(i=0;i<5;i++)
        {
                scanf("%d",&a);
        }
        printf("output:\n");
        compare(a,5);
        for(i=0;i<5;i++)
        {
                printf("%d,",a);
        }
        printf("\n");       
}

int compare(int b[],int n)
{
        int i,j,k,temp;
        for(i=0;i<n-1;i++)
        {
                k=i;
                for(j=i+1;j<n;j++)
                {
                        if(b<b)
                                k=j;
                                temp=b;
                                b=b;
                                b=temp;       
                }
        }
}
为什么我输入 1 6 5 4 88 输出却是1 5 6 4 88???求大神解答啊 啊啊 ~~!

shuofxz 发表于 2016-3-28 17:52:58

兄弟你写过多少C的程序啦。。。
if判断语句为什么不加{}呀
以后无论分支结构后面有一句也好,多句也好,都把{}加上
还有你的冒泡排序写的我不是很懂呀,多设一个变量k是干什么用的,直接用i不好么
for(i=0;i<n-1;i++)
    {
      for(j=i+1;j<n;j++)
      {
            if(b<b)
            {
                temp=b;
                b=b;
                b=temp;
             }
      }
    }

还有compare(int b[],int n)这个函数明明没有返回值,为什么定义为int类型的

fanzhihao 发表于 2016-3-28 19:04:52

shuofxz 发表于 2016-3-28 17:52
兄弟你写过多少C的程序啦。。。
if判断语句为什么不加{}呀
以后无论分支结构后面有一句也好,多句也好, ...

小弟刚学不久,用的是DEV X++ 只能设为INT不能用VOID的。。
对呀,好像没有这个K也行哦~~可是我的问题还没解决,,- -!! 怎么会输出这个

shuofxz 发表于 2016-3-28 19:38:54

你真的有按照我说的改么=。=
我用的也是dev C++呀,改成void也没问题呀
我建议你还是先自己捋一遍到底哪错了,再看我的答案吧
#include<stdio.h>
#include<math.h>
void compare(int b[],int n);
int main()
{
      int a,i,j;
      printf("input a:\n");
      for(i=0;i<5;i++)
      {
                scanf("%d",&a);
      }
      printf("output:\n");
      compare(a,5);
      for(i=0;i<5;i++)
      {
                printf("%d,",a);
      }
      printf("\n");      
}

void compare(int b[],int n)
{
      int i,j,temp;
      for(i=0;i<n-1;i++)
      {
                for(j=i+1;j<n;j++)
                {
                        if(b<b)
                        {                     
                              temp=b;
                              b=b;
                              b=temp;
                        }
                }
      }
}
页: [1]
查看完整版本: 求大神解答~!!!