#include <stdio.h>
/*
作者:
厦门理工学院
计算机与信息工程学院 FnLock
时间:2017年11月12日09:16:25
程序描述:
交换字符
Time Limit:1000MS Memory Limit:65536K
Total Submit:1032 Accepted:661
Description
从键盘中输入一串字符串(长度不超过80个字符),假定输入的字符串中只含有字母和数字,
请将字符串中的前导数字全部移到字符串的尾部,中间的数字保持不变。
可使用数组或指针实现,不能使用字符串复制函数。
Input
输入一串字符串,长度不超过80个字符,只包含字母和数字,并且以数字开头和结束。
Output
输出移动后的字符串。
Sample Input
1234A5BC6DEF7G89
Sample Output
A5BC6DEF7G891234
Source
*/
int main()
{
char arr[100];//定义一个字符数组
char back[100];//定义一个备份数组
scanf("%s",arr);//输入数组
int i,j=0;
int t=0;
for(i=0;arr[i]!='\0';i++)//遍历数组
{
if(arr[i]>='0'&&arr[i]<='9'&&t==0)//如果是数字并且尚未遇到字母
{
back[j]=arr[i];//拷贝到备份字符数组
j++;
}
else
{
printf("%c",arr[i]);//如果遇到字母了就开始打印
t=1;//控制接下来的数字不用存到备份字符数组,直接打印
}
}
for(i=0;back[i]!='\0';i++)//打印备份数组
{
printf("%c",back[i]);
}
return 0;
}
1117交换字符
最新推荐文章于 2024-03-17 19:40:07 发布