int i=(j=4,k=8,l=16,m=32); printf(“%d”, i); 输出是多少? 为什么
来源:百度知道 编辑:UC知道 时间:2024/06/08 04:36:06
输出是32,知识点:
逗号表达式是从左向右依次执行,逗号表达式的值是最后一个表达式的值。
#include<stdio.h>
main()
{
int j,k,l,m;
int i=(j=4,k=8,l=16,m=32);
printf("%d", i);
getche();
}
经过试验 是返回32 就是最后的一个值 不是1
……输出应该是1
逗号(sequential expression)表达式依次求职,并且将最后一个表达式的值返回。
最后一个表达式是(m=32)该表达式将m赋值为32,并且返回1,所以i应该等于1.
int i,j,k;
若 x,i,j,k 都是 int 型变量,则计算 x = (i=4,j=16,k=32) 后,x的值为:______。
急!int i=1,,j=1,k=3,则表达式!&&(i+j)&k|i+j的值是多少?
int i,b,k=0;
i,j,k是int,i=j=k=-1,执行i++||++j&&++k后,ijk的值分别变成了0,-1,-1,请问k的值为什么是-1?
int i , j=2, *p=&i; *p=*&j; 完成的功能是?
c语言的问题:int i=3; k=(i++)+(++i)+(i++);
为什么要i--和j--以及j=k和k=j?
int i=0;
A=2i-3j+k B=i+j-2k A×B=?