标题:请教一下,这个函数哪错了?目的是:a3vd4变成a3*vd4*,就是在数字后面插入* ...
只看楼主
自由战士89
Rank: 5Rank: 5
等 级:职业侠客
帖 子:154
专家分:387
注 册:2010-9-2
结帖率:100%
已结贴  问题点数:20 回复次数:2 
请教一下,这个函数哪错了?目的是:a3vd4变成a3*vd4*,就是在数字后面插入*。
#include <stdio.h>
void fun(char *s)
{
    int i,t[100],j=0;
        for(i=0;s[i]!='\0';i++)
        {
            
            t[j++]=s[i];
            if(s[i]>='1'&&s[i]<='9')
              t[j++]='*';
        }
       for(i=0,j=0;t[i]!='0';i++)
           s[j++]=t[i];

}
void main()
{
    int i;
    char a[100]="a3vd4";
    fun(a);
    for(i=0;a[i]!='0';i++)
     printf("%c",a[i]);

}
搜索更多相关主题的帖子: 数字 函数 目的 
2010-09-05 10:26
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
得分:0 
个人猜测。  for(i=0;*s[i]!='\0';i++)         {             t[j++]=*s[i];             if(*s[i]>='1'&&*s[i]<='9')               t[j++]='*';         }

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2010-09-05 10:42
S_12s
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:110
专家分:670
注 册:2010-7-21
得分:20 
以下是我改的……
程序代码:
#include <stdio.h>

void fun(char *s)
{
        int t[100],i,j=0;
        for(i=0;s[i]!='\0';i++)
        {
           

            t[j++]=s[i];
            if(s[i]>='1'&&s[i]<='9')
              t[j++]='*';
        }
        t[j]='\0';
       for(i=0,j=0;t[i]!='\0';i++)
           s[j++]=t[i];
       s[j]='\0';

}
void main()
{
    int i;
    char a[100]="a3vd4";
    fun(a);
    for(i=0;a[i]!='\0';i++)
     printf("%c",a[i]);
    printf("\n");

} 

2010-09-05 10:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-318723-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034214 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved