/*假定输入的字符串中只包含字母和*号,请编写函数fun,它的功能是:使字符串的前导号*号不得多于n个;
若多于n个,则删除多余的*号,若少于n个,则什么也不做,字符串中间和尾部的*号不删除。编写函数时不得使用
C++提供的字符串函数。
*/
#include<stdio.h>
#include<iostream.h>
#include<string.h>
void fun(char *a, int n)
{
int j,m=0;
for(j=0;j<81;j++)
{ if(a[j]=='*')
m=m+1;
else
break;
}
if (m>n)
for(j=0;j<81;j++)
*(a+j)=a[j+m-n];
}
main()
{
char s[81];
int n;
FILE *out;
cout<<"enter a string:"<<endl;
gets(s);
cout<<"enter n:";
cin>>n;
fun(s,n);
cout<<"the string after deleted:"<<endl;
puts(s);
out=fopen("out.dat","w");
strcpy(s,"***welcome***");
fun(s,4);
fprintf(out,"%s",s);
fclose(out);
}