我要亲亲抱抱举高高 2023-12-29 23:33 采纳率: 50%
浏览 2
已结题

C来帮帮我23.12.15.3

输入一个字符串(内含数字和非数字字符),将其中连续数字作为一个整数依次放在数组a中,统计其中有多少个整数,并输出这些数。(例如:a2345b12#345$wr12z这个字符串,将a[0]存放2345,将12存放在a[1]中,最后统计存放个数,以及输出这些数值。)

  • 写回答

3条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-12-31 01:58
    关注

    【以下回答由 GPT 生成】

    解决方案如下:

    #include <stdio.h>
    #include <stdlib.h>
    #include <ctype.h>
    
    int main() {
        char input[100];
        int a[100];
        int count = 0;
        int number = 0;
    
        printf("请输入字符串:");
        fgets(input, sizeof(input), stdin);
    
        for (int i = 0; input[i] != '\0'; i++) {
            if (isdigit(input[i])) {
                number = number * 10 + (input[i] - '0');
            }
            else {
                if (number) {
                    a[count++] = number;
                    number = 0;
                }
            }
        }
    
        printf("提取出的整数为:");
        for (int i = 0; i < count; i++) {
            printf("%d ", a[i]);
        }
    
        printf("\n一共提取出了%d个整数", count);
    
        return 0;
    }
    

    这个程序使用一个循环遍历输入的字符串,判断每个字符是不是数字。如果是数字,就将其加到之前的数字之后形成一个整数;如果不是数字,则将之前的数字存入数组a中,并将计数器count加1,同时将之前的数字清零。最后,输出提取出的整数以及整数的数量。

    运行结果示例:

    请输入字符串:a2345b12#345$wr12z 提取出的整数为:2345 12 345 12 一共提取出了4个整数


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月8日
  • 已采纳回答 12月31日
  • 创建了问题 12月29日