编写fun函数,功能是删除字符串中的数字字符。例输入字符串:48CTYP9E6,则输出:CTYPE。

2024-11-17 19:42:57
推荐回答(4个)
回答1:

#include
#include
void fun(char s[]);
int main()
{
char s[81];
printf("enter 1 line string(1~9):\n");
gets(s);
fun(s);
printf("%s",s);
getchar();
return 0;

}
void fun(char s[])
{
int x,i,j;
x=strlen(s);
for(j=0;j {
if(s[j] >='0' && s[j] <='9')
{
for(i=j;i {
s[i] = s[i+1];
}
x--;
j--;
}

}
s[x] = '\0'; //添加上结束符。
return;
}

回答2:

#include "stdio.h"
#define M 100

void fun(char *s)
{
int i,j;//当前操作位置,新形式当前长度
for(i=0,j=0;s[i]!=0;i++)
{
if(s[i]>='0'&&s[i]<='9')
continue;
s[j]=s[i];
j++;
}
s[j]=0;//最后给一个'\0'值,表示新串末尾
}

void main()
{
char s[M];
while(scanf("%s",s)>0)
{
printf("%s\n",s);//原串新串输出对比
fun(s);
printf("%s\n",s);
}
}

回答3:

#include
/**********FILL**********/
void fun (char s[])
{
char *p=s;
while(*p)
if((*p>='0')&&(*p<='9')) p++;
/**********FILL**********/
else *s++=*p++;
/**********FILL**********/
*s='\0';
}
void main( )
{
char item[100] ;
printf("\nEnter a string: ");
gets(item);
fun(item);
printf("\nThe string:\"%s\"\n",item);
}

回答4:

#include
using namespace std;
void Sdelete(char *s)
{
int i=0,j=0;
for( i=0;i {
if(s[i]<'0'||s[i]>'9')
{
s[j]=s[i];
j++;
}
}
for(i=0;i cout<
}

void main()
{
char s[]={"a12b34c56d78e910f1011"};
Sdelete(s);
}