对一个给定字符串中的所有字符(不考虑默认字符串结束符'\0')进行排序,使得排序后的字符串满足从左到右为ASCII码递增的字符序列
//直接比较ascii大小
//冒泡法 change作为比较标识 一次循环下来不发生交换就结束排序
#include<stdio.h>
#define n 100 //初始化数组的大小 尽可能大
int main(){
int i,count,change;
char a[n]={' '},c,temp;
i=0;count=0;change=1;
while(i<n&&((c=getchar())!='\n')){//注意括号 c=getchar()是一个整体
a[i]=c;
i++;
}
count=i;//count为计数器,统计输入的字符个数
while(change){
change=0;
for(i=0;i<count-1;i++){
if(a[i]>a[i+1]){
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
change=1;
}
}
}
for(i=0;i<count;i++){
printf("%c ",a[i]);
}
return 0;
}