想要用冒泡排序法来实现输入任意数字,然后输出升序,求大神求教

#include<stdio.h>

void main()

{int n=1;

 char c[20],i,j,t;

 for(i=0;i<20;i++)

 {c[i]='\0';}//对字符数组赋初值,后面可以用来判断输入了几个字符


 printf("输入一串字符:\n");


 for(i=0;(c[i]=getchar())!='\n'&&i<20;i++)//输入字符,当按回车时,说明字符输入完毕

 {

c[i]=getchar();

 }

 for(i=0;c[i+1]!='\n';i++)//对提取出来的数字排序

 {

n++;

 }//输出

for(i=1;i<n;i++)

{  for(j=0;j<n-i;j++)

  {

   if(c[j]>c[j+1])

   {

    t=c[j];

    c[j]=c[j+1];

    c[j+1]=t;

   }

  }

}

for(i=0;c[i]!='\0';i++)

printf("%c ",c[i]);

}


高三狗1
浏览 1412回答 1
1回答

高三狗1

不知道为什么不行
打开App,查看更多内容
随时随地看视频慕课网APP