我觉得这答案应该是1.0。应该是这个表达式执行完之后t变成了2.0,但表达式的值是1.0,因为t++表达式的值是原来t的值,然后t自增1。
追问朋友 我十分不懂 编译出来的确实是1.0 这道题是个什么样的程序可以编译出来是 2.0 十分不解 希望朋友帮忙解答下的 还是答案有问题 么
追答看这个:
#include <stdio.h>后面那行输出t是2.0。
主要有两个知识点:
逗号表达式:从左到右依次计算由逗号分开的各个表达式,整个表达式的值是最后一个的值。
后置++:t++表达式的值是原来t的值,执行完后t自增1;++t则是t先自增1,整个表达式的值是t自增1后的值。[注意区分表达式的值与t的值]
printf("%lf\n",(t = 1, t + 5, t++))输出的值是1.0 我不是求最后t的值 t为2.0 这个我知道的 还是我把题目的意思误解了的额么
追答反正都会了,管这题目干嘛。
您把这个程序编下 能为2.0么? 谢谢 求解 初学c语言小孩
追答对不起,前面有问题,因为最后一个表达式的++在后面,所以表达式的值先取t的值等于1.0然后再执行的t++运算。如果想得到2.0:double t,x; x=(t=1,t+5,++t);即可。
例题3:若t为double类型,表达式t=1,t+5,t++的值是 2.0 编出这个c语言程 ...
int main(){ double t;printf("%lf",(t = 1, t + 5, t++));return 0;} 写得很好 但1楼的解释有点蛋疼了,搞得最后输出结果是t的值一样的 这里考的是逗号表达式的值和赋值表达式的值 好不好。。。逗号表达式的值是最左边的表达式的值 赋值表达式的结果是 =的左值 所以 只要 逗号那里...
逗号表达式的与逗号表达式有关的题
最后,整个逗号表达式的值应该等于最后一个表达式的值2.0,所以,正确答案是C)。注:该题曾在1998年4月和2000年9月的二级C考试中两次出现过。例题3:若t为double类型,表达式t=1,t+5,t++的值是A)
在C语言的例题→若t为double类型,表达式"t=1,t+5,t++"的值是?请解释...
逗号表达式的值为最后一个也就是最右边的那个式子的值,即1;t++;是先返回t的值,然后给t加1,所以最后的值为1.
简单C语言题:若 t 为 double 类型.求表达式:t=1,t+5,t++的值!!
表达式1,表达式2,表达式3---,表达式n 不管前面有多少个表达式,表达式n的值作为,整个表达式的值。因为t++的表达式的值为1所以表达式的值为1,不是指t的值为1,计算下来t的值为2
2、若t为double类型,表达式t=1,t+5,t++执行完后,t的值是___
C 2.0 t+5的结果并没有赋值给t,而t++是自加,等效于t=t+1.
若t为double类型,表达式t=1,t+5,t++的值是( )A 1.0 B 6.0 C6 D7.0_百...
选A
关于C语言的基础编程,一个提问。NO.3
表达式: t =1,t+5, t++是一个逗号表达式,它的值是2.0(即表达式t++的值)。在c语言中提供一种特殊的运算符,逗号运算符,优先级别最低,它将两式联接起来,如:(3+5,6+8)称为逗号表达式,其求解过程先表达式1,后表达式2,整个表达式值是表达式2的值,如:(3+5,6+8)的值是14。
关于逗号表达式的问题.
整个表达式返回的结果是 1.0 但是并不是说里面变量的值就是 1.0 t=1,t+5,t++ 这个最后 t的值是 2.0 正确 表达式的值你应该这样测试:double x = (t=1,t+5,t++); 这样 x的值就是 1.0 了,这个就是最后表达式的值
求:C语言程序设计试卷及答案一份
26.若t为double类型,表达式t=1,t+5,t++的值是()(本题分值:1分) 【正确答案】C A.1 B.6.0 C.2.0 D.1.0 27.若有定义和语句: char s[10];s=〃abcd〃;printf(〃%s\\n〃,s); 则结果是(以下μ代表空格)()(本题分值:1分) 【正确答案】D A.输出abcd B.输出a C.输出abcdμμμ...
一道简单的C++题目
=”优先级大于“ , ”,所以先执行赋值语句t=1,然后是两个逗号,根据相同符号优先级相等从左到右的原则,应该先计算t+5,这里不要误以为这个是赋值表达式,这个执行完之后t的值依然是1,没有任何改变,你可以把这句当做一个真值看待,,然后是t++,之后t=2 以上是我的理解,希望对你有帮助!