今日收纳——C语言的一道题

发布时间:2024-12-11 10:34

C++入门建议从C语言过渡,掌握基本语法后再学习面向对象编程 #生活技巧# #工作学习技巧# #编程语言学习路径#

最新推荐文章于 2024-12-10 10:48:47 发布

代码小白mxy 于 2022-04-10 21:07:58 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

这篇博客探讨了C语言中的一些常见错误表达式,如A.a=a+1=3,B.a=2++,C.a=3,5和12.3%4。错误分析指出,A选项的赋值左侧需要是左值,B选项中表达式和常量不能进行自增运算,C选项的逗号表达式是合法的,D选项的浮点数不能用于取余运算。博客强调理解C语言的赋值语法规则和运算符优先级的重要性。

摘要由CSDN通过智能技术生成

来自学妹问我的一个问题,好吧,我最初以为应该选A,事实证明,我的C确实没学好

问题描述:若变量已经正确定义并赋值,符合C语言语法的表达式是:

A. a=a+1=3

B. a=2++

C. a=3,5

D. 12.3%4

四个选项的运行截图如下:

选项A错误:

a=a+1=3=>a=(a+1=3)

报错内容是:error: lvalue required as left operand of assignment,即C语言的赋值必须是左值的

首先考察a+1=3这条赋值语句是否合法,结果这条语句是不合法的,=”的意义是赋值,C语言的赋值必须是左值的,也就是左边必须是变量,不能是表达式,而a+1是一个表达式,它的意义类似一个常数。

其次,拓展一下,如果改为求a=b=3=》a=(b=3)这条赋值语句的值,结果应该是什么呢?

结果如下:

原因: 赋值表达式的值类型也就是赋值的左值类型,注意是最左比如 a=b=c=d; 那么表达式的值,就是a赋值后的值。

选项B错误:

原因:C语言中表达式和常量都不能做自增运算

 选项C正确:

原因: 

复习逗号表达式的相关内容: 

 选项D错误:

原因:取余运算操作数必须是整型

要认真弄懂每道题哟~学海无涯,继续加油吧! 

网址:今日收纳——C语言的一道题 https://www.yuejiaxmz.com/news/view/442961

相关内容

C语言学习错题集(一)
如何用c语言解决日常生活问题
C语言在生活中的应用 …
C语言小项目实践——日历程序
C语言学习
C 语言程序设计心得:编程之路的探索与收获
用c语言实现旅行商问题的c
C语言程序设计(100道编程题)
C语言个人财务管理示例
剖析C语言中a=a+++++a的无聊问题

随便看看