随机输入字符串数组,调整其位置,使字母在一起,数字在一起,其他在一起

来源:百度知道 编辑:UC知道 时间:2024/06/21 21:53:25
不用指针,不用函数,用简单的循环完成(c语言)

#include <stdio.h>
#include <string.h>
#include <ctype.h>

#define STR_MAX_LEN 100

int main()
{
int nLen, i, j, k, l;
char szStr[4][STR_MAX_LEN+1];

fgets(szStr[0], STR_MAX_LEN, stdin);

nLen = strlen(szStr[0]);

j = k = l = 0;
for (i = 0; i < nLen; i++)
{
if (isalpha(szStr[0][i]))
szStr[1][j++] = szStr[0][i];
else if(isdigit(szStr[0][i]))
szStr[2][k++] = szStr[0][i];
else
szStr[3][l++] = szStr[0][i];
}

szStr[1][j] = szStr[2][k] = szStr[3][l] = '\0';

strcpy(szStr[0], szStr[1]);
strcat(szStr[2], szStr[3]);
strcat(szStr[0], szStr[2]);

printf("%s\n", szStr[0]);

return (0);
}

先获取字符串中各个字符的ASCII码 ASCII 65-122 为字母 48-57为数字 按这个排序即可

VB6.0代码:
创建一个textbox,在其中输入字符串,最终结果用msgbox显示:
创建一个按钮,复制下面代码运行即可:

Private S