求助C语言问题

请编写函数fun,函数的功能是:在字符串中的所以数字字符前加一个$字符#include<stdlib.h>#include<math.h>/*runthisprogram... 请编写函数fun,函数的功能是:在字符串中的所以数字字符前加一个$字符

#include <stdlib.h>
#include <math.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[])
{int i;
char *s,c[100];
s=c;
printf("请输入字符串\n");
scanf("%s",s);
/*void fun(*s);*/
for(i=0;i<100;i++)
{
printf("%s",c[i]);
}
printf("\nEND");
void fun(char *s)
{char a[100];
int i,j;
i=0;
j=0;
while (s[i]!='\0')
{
if ((s[i]>='0')&&(s[i]<='9'))
{a[j]='$';
a[j+1]=s[i];
j=j+2;
}
else
{a[j]=s[i];
j=j+1;
}
i++;
}
a[j]='\0';
}
return 0;
}

有点问题,求教
展开
 我来答
第一碗羊杂割
2015-07-03 · TA获得超过6145个赞
知道大有可为答主
回答量:1107
采纳率:80%
帮助的人:544万
展开全部
#include <stdio.h>      // 此处不需要包括 math.h
#include <stdlib.h>

#define MAX_LEN 100     // 定义一个最大字符串长度

int main(int argc, char *argv[]) {

// 定义原始字符串 s 和输出的字符串 c

char * s, * c;

// 声明一下 fun 函数

char * fun(char * s); 

// 为字符串 s 分配足够的内存空间

s = malloc(MAX_LEN * sizeof(char));    
printf("请输入字符串\n");

// 此处不使用 scanf 是因为它无法将空格写入字符串

gets(s);

// 将 c 指向函数返回的字符串 a 所占用的空间

c = fun(s);

printf("结果为:\n");

// 打印出转换后的字符串 c

printf("%s", c);
printf("\nEND");

// 释放 s 和 c 所占用的内存空间

free(s);
free(c);

return 0;
}

char * fun(char *s) {

// 定义一个字符串 a

char * a; 
int i = 0, j = 0;

// 为 a 分配足够的空间,这里应该是 s 的两倍,
    // 因为当 s 全是数字时,结果长度会是原来的两倍。
    
a = malloc(2 * MAX_LEN * sizeof(char));   

// 这里是正确的

while (s[i] != '\0') {

if ((s[i] >= '0') && (s[i] <='9')) {

a[j] = '$';
a[j + 1] = s[i];
j = j + 2;

} else {

a[j] = s[i];
j = j + 1;

}

i++;

}

a[j] = '\0';

// 返回 a 所指的内存空间,供 c 使用

return a;
}

结果如下:

汝河金采珊
2020-05-08 · TA获得超过4038个赞
知道大有可为答主
回答量:3104
采纳率:33%
帮助的人:454万
展开全部
第一次读入的'1'不等于'0',循环结束,共循环0次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lee也夏天
2015-07-03 · TA获得超过222个赞
知道小有建树答主
回答量:250
采纳率:66%
帮助的人:132万
展开全部
可以考虑下用正则表达式做
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式