//Experiment 3 Task 4 b.)
#include<stdio.h>
void main(){
int x,y,z,ans;
printf("nEnter the value of x. ");
scanf("%i",&x);
printf("nEnter the value of y. ");
scanf("%i",&y);
printf("nEnter the value of z. ");
scanf("%i",&z);
ans = (x + (y^2) + (z^3));
printf("nAnswer = %i",&ans);
}
输出:输入x的值1
输入y的值2
输入z的值4
答案= -483189484
你的代码有两个问题:
-
对于大值,您打印的是地址而不是实际答案。所以当你打印
的时候去掉&
-
C中的
^
运算符表示位异或。因此,您可以使用pow
函数,(不要忘记放#include <math.h>
)或编写自己的版本,以获得正确的结果。