C 语言 if(x%2=1)y=x、if(sqrt(x)%2)y=x、if(x==1)y=&x 为什么语法是错的?

已有预处理命令 #include <math.h> 和声明 int x=4, y;,下面语法正确的确的是 C

A. if(x%2=1)y=x;
B. if(sqrt(x)%2)y=x;
C. if(x==1)y=x;
D. if(x==1)y=&x;

请问这些选项语法错误在哪,感谢大佬解惑!

阅读 1.8k
1 个回答

A : x%2=1, 这里是赋值, 应该是x%2==1
B : sqrt(x), 这各函数的传参应该是double
D :y=&x 应该是y&=x

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进