以下函数
的功能是 删除字符 串s中的 所有数字 字符。请 填空。 void del e (c har *s) { in t n= O; f or(i =0;s [i]; i++) { i f([ ]) s [n++ ]=s[ i]; } s[ n]= ‘'0’ ; }: 正确答案 :s[i ]’9’ 解析:从 一个字符 串中删除 某个字符 的方法是 从字符串 的第1个 字符开始 一一判断 该字符是 否是要删 除的字符 ,若不是 ,则把它 放到结果 字符串中 ;若是, 则不放入 结果字符 串中。由 此可知, 本题空白 处应判断 s[i] 是否为数 字字符, 只有在不 是数字字 符的情况 下才存入 结果字符 串中,所 以应填入 :s[i ]’9’ 。最后应 在结果字 符串的末 尾加上字 符结束标 识符’' 0’。小编还为您整理了以下内容,可能对您也有帮助:
以下函数的功能是删除字符串s中的所有数字字符。请填空。
#include "stdio.h"
#include "malloc.h"
void delnum( char *t)
{
int m, n;
for (m=0,n=0; t[m]!='\0';m++)
if (t[m]<'0' 【‖】t[m]>'9')
{ t[n]=t[m]; n++;}
【t[n]=’\0’】;
}
main()
{
char *s;
s=(char *) malloc (sizeof(char)); /*给s分配一个地址*/
printf("\n input the original string:");
gets(s);
delnum(s);
puts(【s】);
}