滑板跳板教学:C语言程序设计——字符串

来源:百度文库 编辑:高考问答 时间:2024/04/29 16:49:04
编写函数void fun(char *str),功能是:将str所指字符串中所有的数字字符移到所有非数字字符之后,并保持数字与非数字字符串原有的先后次序.例如,程序运行时输入:12ab 23c4 d78e90f56gh12,则输出:ab c defgh1223478905612. */

void fun(char *str)
{
}
main()
{char s[80];
gets(s);
fun(s);
puts(s);
}

void fun(char *str)
{
int i=0,j=0;
char s1[80],s2[80];
char *p=str;
while(*p)
{
if(isdigit(*p))
s1[i++]=*(p++);
else s2[j++]=*(p++);
}
s1[i]=s2[j]='\0';
strcpy(str,s2);
strcat(str,s1);
}
其实,用链表是最好的,不过题目既然已经给出了用字符串数组,那就只好多用点内存,提高点速度了。
#include "ctype.h"
#include "string.h"