墙角野猫 发表于 2006-2-28 17:57

<P>实际上第二次循环不需要那么多次</P>
<P>#include<stdio.h><BR>main()<BR>{<BR>int k,i,j,t,a;<BR>printf("put in data\n");<BR>for(i=0; ;i++)<BR>{<BR>scanf("%d",&a);<BR>if(a<0)break;<BR>}<BR>for(j=0;j<i-1;j++)<BR> {<BR> for(k=0;k<<FONT color=#ff0000>i-1-j</FONT>;k++)<BR> if(a<a)<BR> {<BR> t=a;<BR> a=a;<BR> a=t;<BR> }<BR> }<BR>for(j=0;j<i;j++)<BR>printf("%4d",a);<BR>getch();<BR>}</P>

墙角野猫 发表于 2006-2-28 17:59

还有用a<0来作判断条件并不好

夕阳玻璃 发表于 2006-3-1 18:18

#include<stdio.h>
main()
{
int k,i,j,t,a,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);
   printf("\n");

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

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

这是我刚改的,虽然结果正确,但老师要求比较法,这个是不是啊?

stass 发表于 2006-3-1 18:57

好像没毛病了,以后多交流啊

墙角野猫 发表于 2006-3-1 22:51

比较法是怎么样的?
这个应该是冒泡法吧

墙角野猫 发表于 2006-3-1 22:54

z

<P>请务必把回复页面左侧的</P><BR>
<P><INPUT type=checkbox value=1 name=atc_convert>Wind Code自动转换</P><BR>
<P>关掉,不然会被自动转换掉,成了斜体标志</P>
页: 1 [2]
查看完整版本: 〖求助〗哪位高手帮我看看我这个程序错在哪啊?