#include <stdio.h>
#include <string.h>
#define N 10
char str[N]; // 定义一个长度为N的字符数组,用于存储用户输入的字符串
int main(){
// 对字符数组进行排序的函数声明
void sort(char []);
int i,flag;
// 循环,用于确保用户输入的字符串长度不超过N
for(flag=1;flag==1;){
printf("请输入一个字符串:\n");
scanf("%s",&str);
if(strlen(str)>N)
printf("字符串太长,请再次输入!");
else
flag=0; // 当输入字符串长度符合要求时,结束循环
}
// 调用函数对字符串进行排序
sort(str);
printf("排序后的字符串为:\n%s",str);
printf("\n");
return 0;
}
// 排序函数,对输入的字符串进行升序排列
void sort(char str[]){
int i,j;
char t;
// 字符串排序的主要循环,使用冒泡排序算法
for(i=1;i<N;i++)
for(j=0;(j<N-i)&&(str[j]!='0');j++)
// 如果当前字符大于下一个字符,则交换位置,实现升序排列
if(str[j]>str[j+1]){
t=str[j];
str[j]=str[j+1];
str[j+1]=t;
}
}