//有一行文字,要删除去其中每个字符,此行文字和要删除的字符,均由键盘输入
char a[50],c;
int i=0,j,len;
//
scanf('%s',a);//由于输入格式为字符串,所以在输入后的字符串有'\0'结束字符串输入输出还是用gets与puts比较好,不用获取回车键
// getchar();//获取enter字符
gets(a);
scanf('%c',&c);//输入删除字符
while(a[i]!='\0')
{
len=strlen(a);
if(a[i]==c)
{
for(j=i;j<len-1;j++)
a[j]=a[j+1];
a[j]='\0';
}
if(a[i]!='\0'&&a[i]!=c)
i++;
}
puts(a);
//有17个人围成一圈(编号为1~17),从第1号开始进行1,2,3报数,凡报3者就退出,下一个人从1开始报数...直到最后只剩下一个人时为止
//请问此人原来的位置是多少号?
//解题思路:如果到三,就把其值等于0,最后又16个等于0 结束循环。利用j来数1,2,3。
//count来计数0的个数。当i到18时就该重新循环,再从1开始。而等于0的数组不会被数进1,2,3中。
int a[18],i,j=0,count=0;
for(i=1;i<=17;i++)
a[i]=i;
i=1;
while(count<16)
{
if(a[i]!=0) j++;
if(j==3)
{
a[i]=0;
count++;
j=0;
}
i++;
if(i==18) i=1;
}
for(i=1;i<=17;i++)
{
if(a[i]!=0)
printf('%d',i);
}