c语言判断是否水仙花数总输出yes有无解答

#include<stdio.h>
int main()
{
int n,a,b,c;
scanf("%d",&n);
n>=100&&n<=999;
a=n/100;
b=n/10%10;
c=n%100%10;
if(n=aaa+bbb+ccc){
printf("Yes\n");}
else{
printf("No\n");
}
return 0;
}

判断比较相等是两个等号==。一个等号=是对变量重新赋值

        if (n == a * a * a + b * b * b + c * c * c)

代码修改如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)

#include <stdio.h>
int main()
{
    int n, a, b, c;
    scanf("%d", &n);
    if (n >= 100 && n <= 999)
    {
        a = n / 100;
        b = n / 10 % 10;
        c = n % 100 % 10;
        if (n == a * a * a + b * b * b + c * c * c)
        {
            printf("Yes\n");
        }
        else
        {
            printf("No\n");
        }
    }
    else
    {
        printf("不是3位数\n");
    }
    return 0;
}

比较要用双等号
n == a * a * a + b * b * b + c * c * c
修改后如下:

#include <stdio.h>
int main()
{
    int n, a, b, c;
    scanf("%d", &n);
    n >= 100 && n <= 999;
    a = n / 100;
    b = n / 10 % 10;
    c = n % 100 % 10;
    if (n == a * a * a + b * b * b + c * c * c)
    {
        printf("Yes\n");
    }
    else
    {
        printf("No\n");
    }
    return 0;
}

img