题目是输入两个正整数m和n,然后输出这两个数之间所有水仙花数并统计个数和总和。但我输出的个数一直显示为0

题目是输入两个正整数m和n,然后输出这两个数之间所有水仙花数并统计个数和总和。但我输出的个数一直显示为0,不知道怎么修改

img

img

count是main主函数中的变量。is函数访问不了
要把count改成全局变量
或者count++放在main主函数中进行增加1

你题目的解答代码如下:

#include<stdio.h>

int main()
{
    int is(int num);
    int m,n,num,count=0,sum=0;
    scanf("%d%d", &m, &n);
    for (num = m; num < n; num++)
    {
        if (is(num))
        {
            printf("%d\n", num);
            sum += num;
            count++;
        }
    }
    printf("水仙花数共有%d个,和为%d\n", count,sum);
    return 0;
}

int is(int num)
{
    int i,j=0,d;
    i=num;
    while (i!=0)
    {
        d=i%10;
        i=i/10;
        j=j+d*d*d;
    }
    if (j==num)
        return 1;
    else
        return 0;
}

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