如题所述
把用户输入的字符串从左至右逐字符向同一个数组中拷贝,遇到数字字符时接收计数变量不增量,就会被下一个字符覆盖这个数字字符,直到把'\0'也拷贝进来。代码如下:
int main(int argc,char *argv[]){
char s[300];
int i,j;
printf("Please enter a string...\n");
fgets(s,300,stdin);//输入字符串
i=j=0;
while(s[j]=s[i++])//字符数组自已向自己拷贝
if(s[j]>'9' || s[j]<'0')//非数字字符时接收计数变量j才增值
j++;
printf("\nAfter delete digital characters:\n%s\n",s);
return 0;
}
试运行结果如图:
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-07-21
#include<stdio.h>
void main()
{
int i,j;
char s[100];
printf("输入字符串:");
gets(s);
j=0;
for(i=0;s[i];i++)
if(!(s[i]>='0'&&s[i]<='9')) s[j++]=s[i];
s[j]=0;
puts(s);
}本回答被网友采纳
void main()
{
int i,j;
char s[100];
printf("输入字符串:");
gets(s);
j=0;
for(i=0;s[i];i++)
if(!(s[i]>='0'&&s[i]<='9')) s[j++]=s[i];
s[j]=0;
puts(s);
}本回答被网友采纳