找回密码

碧海潮声大学生网

12
返回列表 发新帖
楼主: 夕阳玻璃
打印 上一主题 下一主题

〖求助〗哪位高手帮我看看我这个程序错在哪啊?

[复制链接]
11#
发表于 2006-2-28 17:57 | 只看该作者

实际上第二次循环不需要那么多次

#include
main()
{
int k,i,j,t,a[100];
printf("put in data\n");
for(i=0; ;i++)
{
scanf("%d",&a);
if(a<0)break;
}
for(j=0;j {
for(k=0;k<i-1-j;k++)
if(a[k] {
t=a[k];
a[k]=a[k+1];
a[k+1]=t;
}
}
for(j=0;jprintf("%4d",a[j]);
getch();
}

12#
发表于 2006-2-28 17:59 | 只看该作者
还有用a<0来作判断条件并不好
13#
 楼主| 发表于 2006-3-1 18:18 | 只看该作者
#include<stdio.h>
main()
{
int k,i,j,t,a[100],d;
  printf("put in data\n");
  for(i=0;;i++)
  {
   scanf("%d",&a);
   if(a<0)break;
   }
   for(d=0;d<=i-1;d++)
   printf("%4d",a[d]);
   printf("\n");

   for(j=0;j<i-1;j++)
     {
      for(k=j;k<i-1;k++)
       {if(a[k]>a[k+1])
        {
         t=a[k];
         a[k]=a[k+1];
         a[k+1]=t;
        }
       }
        t=a[j];
        a[j]=a[i-1];
        a[i-1]=t;

      }
  for(j=0;j<i;j++)
  printf("%4d",a[j]);
  getch();
}

这是我刚改的,虽然结果正确,但老师要求比较法,这个是不是啊?
14#
发表于 2006-3-1 18:57 | 只看该作者
好像没毛病了,以后多交流啊
15#
发表于 2006-3-1 22:51 | 只看该作者
比较法是怎么样的?
这个应该是冒泡法吧
16#
发表于 2006-3-1 22:54 | 只看该作者

z

请务必把回复页面左侧的


Wind Code自动转换


关掉,不然会被自动转换掉,成了斜体标志

12
返回列表 发新帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋| 碧海潮声大学生网  

Copyright © 2001-2013 Comsenz Inc.   All Rights Reserved.

Powered by Discuz! X3.2( 浙ICP备11026473号 )

快速回复 返回顶部 返回列表