给定程序中,函数void fun(char *s)的功能是:在形参s所指字符串中的每个数字字符之后插入一个*号。例如,形参s所指的字符串为:def35adh3kjsdf7。执行结果为:def3*5

#include<stdio.h>
void fun(char *s)
{
    
     int i,j,n;
for(i=0;s[i]!='\0';i++)//当i已经指向字符串末尾'\0'时退出FOR循环
if(s[i]>='0'&&s[i]<=9){
    
    
n=0;
while(s[i+1+n]!='\0') n++;//统计i之后的字符串长度并放入N
for(j=i+n+1;j>i;j--)//根据长度N来进行i后的字符串的移位(都向右移一位)
s[j+1]= s[j];
s[j+1]='*'; i=i+1; //移位完毕后将I后面的字符设为'*',然后将I加一继续上述过程
}
}

main()
{
    
    

char str[80]={
    
    0};
gets(str);
fun(str);
puts(str);  
}

猜你喜欢

转载自blog.csdn.net/weixin_44517301/article/details/109126363