第五题,vc++6.0,c语言编程

如题所述

第1个回答  2015-06-10
第一种方法比较复杂点
#include <stdio.h>

void fun(char *); // 用指针传递参数

int main()
{
char str[100];

scanf("%s", str);
fun(str);
puts(str);
return 0;
}

void fun (char *p)
{
int i,j;
char temp[100]; // 定义一个数组保存转换的字符串

for(i=0 ,j=0; j < 100 && p[i] != '\0'; i++, j++)
{
if (p[i] >= '0' && p[i] <= '9') {
temp[j] = '$';
j++;
}
temp[j] = p[i];
}
temp[j] = '\0';
for (i = 0; i <= j; i++)
p[i] = temp[i]; // 再把字符串保存到原数组.
}
第二种方法比较容易理解
#include<stdio.h>
void fun(char *x)
{ int i,j;
char t[100]={'\0'};
for(i=0,j=0;i<100&&x[i]!='\0';i++,j++)
{ if(x[i]>='0'&&x[i]<='9')
{ t[j]='$';
j++;
}
t[j]=x[i];
}
printf("%s\n",t);
}
int main()
{ char x[100]={'\0'};
printf("请输入字符串:");
scanf("%s",x);
fun(x);
return 0;
}本回答被网友采纳
第2个回答  2015-06-10
每一门语言只有通过练习才能掌握,当你做完后出现问题时再求助。本回答被提问者采纳
相似回答