帮忙写个C语言编程题。“将用户输入的任意字符串中的数字字符全部删除...
发布网友
发布时间:2024-07-03 15:26
我来回答
共2个回答
热心网友
时间:2024-07-10 06:09
把用户输入的字符串从左至右逐字符向同一个数组中拷贝,遇到数字字符时接收计数变量不增量,就会被下一个字符覆盖这个数字字符,直到把'\0'也拷贝进来。代码如下:
#include "stdio.h"
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;
}
试运行结果如图:
热心网友
时间:2024-07-10 06:09
#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);
}