#include"stdio.h"
#include "string.h"
void main()
{
int i,j,n;
char t;
char c[100];
n=strlen(c);
printf("请?输?入?一?个?字?符?串?:阰");
gets(c);
n=strlen(c);
for(i=0;i<n-1;i++)
{
for(j=0;j<n-1-i;j++)
{
if(c[j]>c[j+1])
{
t=c[j];c[j]=c[j+1];c[j+1]=t;
}
}
}
printf("排?序ò后ó的?字?符?串?为a:");
puts(c);
}
用起泡法和选择法怎么将字符串按ascll码值从小到大排列啊
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 树下等苹果 2022-05-20 23:20关注
起泡法就是你写的那个,选择排序法如下:
#include"stdio.h" #include "string.h" void main() { int i, j, n; char t; char c[100]; printf("请输入一个字符串:"); gets(c); n = strlen(c); //for (i = 0; i < n - 1; i++) //冒泡排序 //{ // for (j = 0; j < n - 1 - i; j++) // { // if (c[j] > c[j + 1]) // { // t = c[j]; c[j] = c[j + 1]; c[j + 1] = t; // } // } //} for (i = 0; i < n - 1; i++) //选择排序 for (j = i + 1; j < n; j++) if (c[i] > c[j]) { t = c[j]; c[j] = c[i]; c[i] = t; } printf("排序后的字符串为a:"); puts(c); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 10无用
悬赏问题
- ¥15 Simulink仿真报错,请问如何解决
- ¥20 宝塔面板无法添加Node项目,一直处于正在添加脚本页面
- ¥50 Dkeil5 CT107D单片机的程序编写
- ¥30 Ubuntu20.04中PVN3D复现过程交叉编译问题
- ¥15 模拟电路求复阻抗和传递函数,请各位拍照写一下解答过程
- ¥60 不懂得怎么运行下载来的代码
- ¥15 CST导出3D模型图为什么和软件显示不一样?
- ¥15 加热反应炉PLC控制系统设计(相关搜索:梯形图)
- ¥15 python 用Dorc包报错,我的写法和网上教的是一样的但是它显示无效参数,是什么问题
- ¥15 经过滑动平均后的一维信号还原用什么结构好呢?