张铎龙 2019-11-04 18:59 采纳率: 33.3%
浏览 293
已采纳

请各位前辈帮我看一下这段代码为什么解决不了这个字符串问题呢,自我感觉良好

图片说明

#include<stdio.h>
int main(void){
    int n;
    char x;
    scanf("%d",&n);
    while(n--){
        int i=0;
        while(x=getchar()!='\n'){
            if('0'<=x&&x<='9')
                i++;
        }
        printf ("%d\n",i);
    }
    return 0;
}

  • 写回答

1条回答 默认 最新

  • 智者知已应修善业 2019-11-04 21:02
    关注

    修改一下

    #include<stdio.h>
    int main(void){
        int n = 0, i = 0, j = 0;
        char x[100];
        cin >> n;
        while (n--)
        {
            cin >> x;
            j = i = 0;
            while (x[j] != '\0')if ('0' <= x[j] && x[j++] <= '9')++i;
            printf_s("%d\n", i);
        }
    }
    
    

    while((x=getchar())!='\n')这样修改一下即可

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?