| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1181 人关注过本帖
标题:各路神仙帮帮忙,有个问题偶怎么都想不通
取消只看楼主 加入收藏
雪蓝
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-8-23
结帖率:0
收藏
已结贴  问题点数:20 回复次数:0 
各路神仙帮帮忙,有个问题偶怎么都想不通
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是使字符串中前面的*号不得多于n个,若多于n个,则删除多余的*号,若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。
例如:字符串中的内容为****A*BC*DEF*G*******。若n的值为2,删除后,字符串中的内容则应当是**A*BC*DEF*G*******。


下面是我写的程序:
#include <stdio.h>
#include <conio.h>
void fun (char *a,int n)
{char *p=a;
 int i=0;
 while (*p=='*')
 {if(i<=n)
 { a[i++]=*p;
  p++;}
 }
 while (*p)
 {a[i++]=*p;
  p++;
 }
 a[i]='\0';
}
void main ()
{char s[81];int n;
 printf("Enter a string:\n");
 gets(s);
 printf("Enter n:");
 scanf("%d",&n);
 fun(s,n);
 printf("The string after deleted:\n");
 puts(s);
}

运行结果不对,请问fun函数的问题出在哪?
谢谢各位才子佳人!!!!
搜索更多相关主题的帖子: 神仙 
2010-08-23 14:38
快速回复:各路神仙帮帮忙,有个问题偶怎么都想不通
数据加载中...
 
   



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

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