Ahhhh55 2022-06-17 16:43 采纳率: 100%
浏览 80
已结题

该怎么样将数字字符转化为十进制整数并输出?

img

img

C D两问有关联。
C的代码已经打出来了如图,D应该如何操作?(能否用一个代码解决?)

  • 写回答

4条回答 默认 最新

  • fuill 2022-06-17 17:08
    关注
    #include <stdio.h>
    #include <math.h>
    void delnum(char *str)
    {
        int i=0,j=0;
        while(str[i] != '\0')
        {
            if(str[i] >= '0' && str[i]<='9')
                str[j++] = str[i];
            i++;
        }
        str[j] = '\0';
    }
    int char2dec(char str[])
    {
        int num=0;
        int i=0,j=0;
        while(str[j] != '\0')
            j++;
        int tem=1;
        for(i=0;i<j;i++)
        {
            num+=(str[j-1-i]-48)*tem;
            tem*=10;
        } 
        return num;
    }
    int main()
    {
        char str[1000];
        printf("请输入一组字符串:");
        scanf("%s",str); 
        delnum(str);
        printf("删除非数字字符串后的字符串:\n");
        int num=char2dec(str);
        printf("%d\n",num);
        //printf("%s",str);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 6月25日
  • 已采纳回答 6月17日
  • 创建了问题 6月17日