假如输入****abc*abc****该程序输出的内容是 ****abcabc**** 以下是我编的代码?请高手大哥指出错误谢谢。

[复制链接]
查看11 | 回复1 | 2011-5-24 12:46:15 | 显示全部楼层 |阅读模式
void abc(char *s,int n,int k)
{
char *a,*w;
w=a=s;
int i,j,u,r=0,m=0,b=0;
while(*a)
{
if(*a!='*')
{
w[r]=*a;
r++;
}
a++;

m++;
}w[r]=0;
for(i=0;i<n;i++)
{
s='*';
b++;
}
for(j=0;j<m-n-k;j++)
{
s=w[j];
b++;
}
for(u=0;u<k;u++)
{
s='*';

b++;
}
s=0;
}
void main()
{
char s[100],*p,*l;
p=l=s;
int n=0,k=0;
gets(s);
while(*l)l++;l--;
while(*l=='*'){l--;k++;}
while(*p=='*'){p++;n++;}
abc(s,n,k);
puts(s);
}

回复

使用道具 举报

千问 | 2011-5-24 12:46:15 | 显示全部楼层
删除不好做,因为你是一个文件内容的删除。可以用字符串数组来保存每一行的值,删除了之后,再重新保存进去。可以这样做:比如说你的文件路径:c:/a.txt1.File file = new File("c:/a.txt");2.BufferedReader reader = new BufferedReader(file);3.byte[] strValue = new byte[(int)file.length()];4.String str = reader.read(strValue);//按文件大小一次读入5.String rows = str.split("\r\n");//按换行符拆分,即数组的每一条,对应文件每
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行