c语言 逗号6.以下程序的输出为【 】.main( ){ int a=20,b=30,c=40;if(a>b) a=b,
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/05/26 05:22:30
c语言 逗号
6.以下程序的输出为【 】.
main( )
{ int a=20,b=30,c=40;
if(a>b) a=b,
b=c;c=a;
printf("a=%d,b=%d,c=%d",a,b,c);
}
中的a=b,可以这么用吗?
6.以下程序的输出为【 】.
main( )
{ int a=20,b=30,c=40;
if(a>b) a=b,
b=c;c=a;
printf("a=%d,b=%d,c=%d",a,b,c);
}
中的a=b,可以这么用吗?
可以的,这是逗号表达式!
在C语言中将被翻译为:
(a=b,b=c);
逗号表达式会一直计算逗号,遇分号结束,返回最后一个表达式的值.
比如上式int d=(a=b,b=c);将返回b=c表达式的值,即c,d将等于c.
----------
示例:
main( )
{
if(1) printf("1"),printf("2"),printf("3"); //将打印出123
}
再问: if(a>b) a=b, b=c;c=a; 的意思是不是a=(b,b=c),可是,的运算及很低啊 否则这个表达式什么意思?
再答: 不是的。 逗号表达式虽然运算级低,不过本例无其他运算符干涉,不受影响 ------ if(a>b) a=b,b=c; 等价于 if(a>b) (a=b,b=c); 等价于 if(a>b) {a=b;b=c;} ----------------------------------
再问: int a,b=1,c=2; a=b+c,a+b,c+3; 结果为什么a=3 如果是按顺序计算的话是5
再答: 你这个是这么来的: a=b+c,式1, a+b,式2, c+3,式3 ------- 你改成 a=(b+c,a+b,c+3); 就会是5了。
在C语言中将被翻译为:
(a=b,b=c);
逗号表达式会一直计算逗号,遇分号结束,返回最后一个表达式的值.
比如上式int d=(a=b,b=c);将返回b=c表达式的值,即c,d将等于c.
----------
示例:
main( )
{
if(1) printf("1"),printf("2"),printf("3"); //将打印出123
}
再问: if(a>b) a=b, b=c;c=a; 的意思是不是a=(b,b=c),可是,的运算及很低啊 否则这个表达式什么意思?
再答: 不是的。 逗号表达式虽然运算级低,不过本例无其他运算符干涉,不受影响 ------ if(a>b) a=b,b=c; 等价于 if(a>b) (a=b,b=c); 等价于 if(a>b) {a=b;b=c;} ----------------------------------
再问: int a,b=1,c=2; a=b+c,a+b,c+3; 结果为什么a=3 如果是按顺序计算的话是5
再答: 你这个是这么来的: a=b+c,式1, a+b,式2, c+3,式3 ------- 你改成 a=(b+c,a+b,c+3); 就会是5了。
c语言 逗号6.以下程序的输出为【 】.main( ){ int a=20,b=30,c=40;if(a>b) a=b,
C语言 填空题7、以下程序输出的结果是 0 .main() { int a=5,b=4,c=3,d; d=(a>b>c)
以下程序运行后的输出结果是?main(){int a=1,b=2,c=3;if(c=a)printf("%d\n",c)
以下程序运行后的输出结果是?main(){int a=3,b=4,c=5,t=99;if(b
下列程序的输出结果是 1 main() { int a=2,b=-1,c=2; if (a
以下程序运行后的输出结果是 main() {int a,b,c; a=1;b=3;c=5; printf(“%d,%d\
二级c语言的一道题有以下程序#include main(){ int a =-2,b=0;while(a++&&++b)
以下程序的输出结果是 int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c)b
以下程序的运行结果为什么会是3啊,main() { int a=2,b=-1,c=3; if(a
下列程序的输出结果是( ) #include void main() { int a = 2,b = 3,c = 0,d
1.下列程序的输出结果是( ) #include void main() { int a = 2,b = 3,c = 0
#include func(int a,int b) {int c; c=a+b; return c;} main()