如何按ASCII顺序排序字符串
How Sorting a String by ASCII order
我只是做一个程序排序字符串按字母顺序,但我有问题,如果我是输入数字,它不显示在输出。如何按ASCII顺序排序。有谁能帮忙吗?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void sort_string(char*);
int main()
{
char string[100];
printf("Enter some textn");
gets(string);
sort_string(string);
printf("%sn", string);
return 0;
}
void sort_string(char *s)
{
int c, d = 0, length;
char *pointer, *result, ch;
length = strlen(s);
result = (char*)malloc(length+1);
pointer = s;
for ( ch = 'A' ; ch <= 'z' ; ch++ ) // i don't know how add range
{
for ( c = 0 ; c < length ; c++ )
{
if ( *pointer == ch )
{
*(result+d) = *pointer;
d++;
}
pointer++;
}
pointer = s;
}
*(result+d) = ' ';
strcpy(s, result);
free(result);
}
对不起,如果我的代码仍然不好,我还在学习c++
当您查看ASCII表时,数字'0'在0x30开始,在0x39以'9'结束。在循环中,第一个字母以'A'开头,在0x41上。只要从'0'到'z'开始循环,它也会包括数字。(它还将包括<, @等符号…)
相关文章:
- 提高从排序字符串中获取字母顺序的顺序复杂性
- C 在向量的向量中按字母顺序排序字符串
- 在排序字符串向量中进行有效搜索
- C 选择排序字符串数组
- C 排序字符串的动态阵列 - 排序不起作用
- C++:使用 LSD 基数排序字符串排序崩溃
- 标准::排序 C 字符串的比较函数
- 使用最小运算将给定字符串转换为排序字符串
- C++ - 链表插入排序(字符串元素)
- 分段错误(核心转储)排序字符串数组错误
- 比较函数用于排序字符串的矢量(每个字符串都是一个数字)C++
- std::mutiset vs std::vector,用于读取排序字符串并将其写入文件
- 按字母顺序快速排序字符串矢量
- C++按字母顺序排序字符串
- 按长度排序字符串数组
- 我如何使用c++库函数或STL排序字符串
- 首先按字符排序字符串
- 如何按ASCII顺序排序字符串
- 按字母顺序排序字符串数组
- 按降序排序字符串