c语言if语句报错了

题目:编程求一个整数的任意次方的最后3位数是多少?
我用了if语句,但不知道为什么报错。
答案上是for循环来求x的y次方,我是直接写的x^y
不知道为什么报错了,请大家解答,谢谢。

img

x^y表示x与y进行异或运算,异或运算用的比较多的场景是交换变量
若你要求x的y次方,可以采用如下写法

 
#include <stdio.h>
int main (){
    //求三的二次方的思路如下(for循环版本)
    int x=3,y=2; 
    int sum=1;
    for (int i=1;i<=y;i++){
        sum=sum*x;
    }    
    printf("sum的值为:%d",sum);
    return 0;
}


C语言的^是位异或双目运算符,并不是幂运算符