c语言字符串_C语言字符串问题

原问题:C语言字符串问题
分类:编程开发 > 最后更新时间:【2016-12-13 00:58:03】
问题补充:

从键盘中输入一串字符串(长度不超过80个字符),假定输入的字符串中只含有字母和数字,请将字符串中的前导数字全部移到字符串的尾部,中间的数字保持不变。可使用数组或指针实现,不能使用字符串复制函数。

最佳答案

#include<stdio.h>
int main()
{
char s[81], c;
int i, x, j, len;
scanf("%s", s);
x = len = 0;
///计算前导数字长度
while(((c = s[x++]) != '\0') && (c >= '0' && c <= '9'));
x--;
//计算串长
while(s[len++]!='\0');
len--;
if(x != len) //全数字情况忽略
for(i = 0; i < x; i++) //循环左移字串
{
c = s[0];
for(j = 0; j < len - 1; j++)
s[j] = s[j + 1];
s[len - 1] = c;
}
printf("%s\n", s);
return 0;
}

例样输入

123abc

输出

abc123

输入

123

输出

123

输入

abc

输出

abc

输入

1abc2def

输出

abc2def1

最佳答案由网友  whoami1978  提供
公告: 为响应国家净网行动,部分内容已经删除,感谢网友理解。
9

分享到:

其他回答

暂无其它回答!

    推荐