输入一个字符串,将其中的数字字符按输入顺序存储到digital数组中,然后输出该数组中的数字字符串。要求:检测并存储数字字符串的过程通过用户函数实现

输入一个字符串,将其中的数字字符按输入顺序存储到digital数组中,然后输出该数组中的数字字符串。要求:检测并存储数字字符串的过程通过用户函数实现

你题目的解答代码如下:

#include <stdio.h>
#include <string.h>

void getdigital(char s[],char d[],int n)
{
    int i,j=0;
    for (i = 0; i < n; i++)
    {
        if (s[i]>='0' && s[i]<='9')
            d[j++] = s[i];
    }
    d[j] = '\0';
    return 0;
}

int main(){
    char s[50];
    char digital[50];
    int i,len;
    gets(s);
    len = strlen(s);
    getdigital(s,digital,len);
    puts(digital);
    return 0;
}

如有帮助,望采纳!谢谢!

代码及运行结果如下:

img

代码:

#include <stdio.h>

void trans(char*s,char digital[])
{
    int i=0,j=0;
    while(s[i] !='\0')
    {
        if(s[i]>='0' && s[i]<='9')
            digital[j++] = s[i];
        i++;
    }
    digital[j] = 0;
}

int main()
{
    char buf[200],digital[200];
    gets(buf);
    trans(buf,digital);
    printf("%s",digital);
    return 0;
}