if(i!=0)什么意思?
展开全部
%为求余运算符,也叫模除运算符,用于求余数。
例如i%j用来求i除以j的余数,特别地,当使用i%j==0时,用来判断i是否能被j整除(余数为0表示被除数能被除数整除)。
对于用户的问题,结合条件语句if,则表示“如果i能被2整除”。
%要求两个操作数均为整数(或可以隐式转换成整数的类型),标准规定:
如果%左边的操作数为负数时,则模除的结果为负数或者0,
如果%左边的操作数为正数时,则模除的结构为正数或者0。
扩展资料:
C的运算符有以下几类:
1、算术运算符:* - + / %
2、关系运算符: > < == != >= <=
3、逻辑运算符:! && ||
4、位运算符:<< >> ~ | ^ &
5、赋值运算符:=及扩展赋值运算符
6、条件运算符:?:
7、逗号运算符:,
8、指针运算符:*和&
9、求字节数运算符:sizeof
10、强制类型转换运算符:(类型)
参考资料来源:百度百科-运算符
展开全部
前面有int
i=0,已经赋值初始值0,可认为是偶数,
后面的循环中
i在非0和0两者之间循环变化,
因为
i=!i
即表示将i取逻辑非然后再赋值回i,
也就是如果原来i=0就得到i为非0
(二进制的全1),再循环一次又会得到0,相当于奇数和偶数次循环,
if((i=!i)!=0)就是如果再赋值后不为0,则条件成立,执行push(&t,pop(s));
即奇数入栈t
否则执行enqueue(&q,pop(s));
即偶数入队q
i=0,已经赋值初始值0,可认为是偶数,
后面的循环中
i在非0和0两者之间循环变化,
因为
i=!i
即表示将i取逻辑非然后再赋值回i,
也就是如果原来i=0就得到i为非0
(二进制的全1),再循环一次又会得到0,相当于奇数和偶数次循环,
if((i=!i)!=0)就是如果再赋值后不为0,则条件成立,执行push(&t,pop(s));
即奇数入栈t
否则执行enqueue(&q,pop(s));
即偶数入队q
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询