若已设有定义 int x 2:int x=3,y=4;,则表达式--x+(y++)%x+y的值是( ).B A,2 B,6 C,7 D,5

C语言:已有定义int x=3,y=4,z=5;则表达式 !(x+y)+z-1&&y+z/2的值是?_百度知道
C语言:已有定义int x=3,y=4,z=5;则表达式 !(x+y)+z-1&&y+z/2的值是?
我有更好的答案
只是等于1的,我是经过turbo c2.0编译过的,答案应该没什么问题的,程序是:main(){int x,y,z,k;x=3;y=4;z=5;k=0;k=!(x+y)+z-1&&y+z/2;printf(&%d&,k);}答案为什么会等于1呢?那是因为运算级别的问题,根据运算级别,实现算括号里面的先,所以程序就变成!7+z-1&&y+z/2;然后就算!运算,由于7是大于1的,也就是真,所以!真就是假,也就是0,所以函数就变成0+z-1&&y+z/2;然后再算除号的,由于你这里两个都是整形的,所以小数点后面的数忽略,所以就变成0+z-1&&y+2;接着计算加减运算,也就是变成4&&6;因为4和6都是大于1的数,所以就是真,由于&&两边都是真的话,输出的就是真,所以结果就是1。要是还有什么不明白的话,就mm我吧!嘻嘻~~~~~~
1优先级: 算数&条件&关系&赋值关系中的优先级: 非&与&或
1,把运算符优先级搞清楚就好了
!(3+4)+5-1&&4+5/2=!7+4&&4+2=!11&&6所以说那个式子的值是:不是11并且是6
1条折叠回答
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____.【参考答案】 1 为什么?
int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____.【参考答案】 1 为什么?
表达式x+y&&(x=y)等价于(x+y)&& (x=y),x+y=5,x=y是将y赋给x,故x=3.5 && 3 = 1 注意两点:1、运算优先级 2、x=y 与 x==y的区别,前者为赋值表达式,后者为逻辑表达式
我有更好的回答:
剩余:2000字
与《int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____.【参考答案】 1 为什么?》相关的作业问题
这条语句可以转换成if语句,这样写应该明白很多if (w>x){}else if(z>y){}else{return x}显而易见,w不大于x,y大于在,表达式为z的 值,4而且最好加个括号,这样写:w>x?w:(z>y?z:x)
只是等于1的,我是经过turbo c2.0编译过的,答案应该没什么问题的,程序是:main() { int x,y,z,k; x=3;y=4;z=5; k=0; k=!(x+y)+z-1&&y+z/2; printf("%d",k);} 答案为什么会等于1呢?那是因为运算级别的问题,根据运算级别,实现算括号里面的先,所
选D,下面是解题步骤!(x+y)=0;!(x+y)+z-1=0+5-1=4>0;y+z/2=4+2=6>0!(x+y)+z-1&&y+z/2=1
答案为6;x++ 当这句运行完时才加一,同理Y++因此计算z=z+x+y=6
!(x+y)+z-1&&y+z/2=!(3+4)+5-1&&4+5/2=!7+5-1&&4+5/2=0+4&&4+5/2=4&&6=1运算符的优先级:()最高,下来是!下来是+,-,*,/,最后是&&逻辑与在左边右边只要有一个0的时候结果就为04和6都不为0,所以结果为1
这里涉及到的运算符:!() + - && / 优先级:() !/ + - && x=3,y=4,z=5 !(x+y)+z-1&&y+z/2 !(3+4)+5-1&&4+5/2 所以表达式计算步骤为 !(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2 !7为 0 -> 0+5-1&&4+5/2 5/2
0(C 语言等)或者false(Java或者C++等) 再问: C++ 如果是在判断语句,if或while中是bool型还是0.1型 再答: C++中都可以的。不过如果你是要走面向对象编程的,建议用bool类型的,这是个好习惯 谢谢采纳再问: 那这道题就是0或false都可以? 再答: 恩
!(x+y) = 0z = 51&&y = 1z/2 = 2结果为0+5-1+2 =6
做这样的题首先应对C运算符的优先运算级别吃透,括号的优先级别最高,逻辑非高于乘除,乘除的优先级别高于加减运算符,加减高于逻辑与,逻辑与高于逻辑或.非零就是真,真就是1,假就是0,做这样的题还要注意结合性,-,++,--,!是右结合性;×,/,+,-是左结合性;>,>=,﹤,﹤=,==,!=,&&,‖,左结合性;=,+=
本题目主要考查运算符优先级的问题.此题目涉及的运算符优先级如下(由高到低):!&,/,&+&-&,&&&.&&所以表达式可以写成这种形式:(!(x+y)+z-1)&&(y+z/2).计算顺序为:&&
?:条件表达式,相当于 if elsex>z成立 则执行 x不成立 则执行 x
不好意思应该是;int x=0,y=0,z=0;则表达式k=++x||++y&&++z的值是多少?
int x=10,y=20,z=30;if(x>y) //如果x > y就执行z=x,但实际10 > 20是不成立的,所以不会执行下一句z=xz=x;x=y; 执行完这句x=20,y=20,z=30y=z; 执行完这句x=20,y=30,z=30
10 20 30 if里面条件不满足 直接跳过
(x&&y)结果为1(x||z)结果为1只是认为非0为真值,0为假值.所以结果为1 即真
因为条件运算符的结合方向是自右至左的,所以表达式就可以变为w
事情是这样的.z 不为 0,所以!z为布尔值false,转化成int就是0y > 0,显然为布尔值true,转化成int就是1x + 1 就是3.注意中间有一系列隐式类型转换
是 true,也就是 1|| 和 && 和 !都是逻辑操作符.x || (++y && !z) || 1true || (true && false) || truetrue || false || truetrue事实上,式中有 || 又有 true,那么结果肯定是 true 还有操作符的优先级:++(前置) > !
这题就是错的.
x>y?++x:++y执行后的值为++y,而后y=3;z+=y;所以z=3+3=6 再问: 为什么不是先计算z+=x 在判断z>y呢??计算机等级考试学习网,提供全国计算机等级考试辅导、ncre考试时间、计算机等级考试报名、等考历年真题模拟试题答案、计算机等级考试成绩查询、一级MS Office、一级WPS Office、一级B、二级公共基础知识、二级C语言程序设计、二级C++语言程序设计、二级Delphi语言程序设计、二级Java语言程序设计、二级Visual Basic语言程序设计、二级Visual FoxPro数据库程序设计、二级Access数据库程序设计、三级PC技术、三级信息管理技术、三级网络技术、三级数据库技术、四级网络工程师、四级数据库工程师、四级软件测试工程师、计算机职业英语一级等信息。
您当前的位置:&>&&>&&>&&>&&>&
  第3章 数据类型运算符与表达式
  一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。)
  3.1 C语言中最简单的数据类型包括
  A)整型、实型、逻辑型
  B)整型、实型、字符型
  C)整型、字符型、逻辑型
  D)字符型、实型、逻辑型
  正确答案: B
  3.2 C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符
  A)必须为字母
  B)必须为下划线
  C)必须为字母或下划线
  D)可以是字母,数字和下划线中任一字符
  正确答案: C
  3.3 下列可用于C语言用户标识符的一组是
  A)void, define, WORD
  B)a3_b3, _123,Car
  C)For, -abc, IF Case
  D)2a, DO, sizeof
  正确答案: B
  3.4 下面四个选项中,均是不正确的8进制数或16进制数的选项是
  A)016 0x8f 018
  B)0abc 017 0xa
  C)010 -0x11 0x16
  D)0a12 7ff -123
  正确答案: D
  3.5 下列数据中,不合法的C语言实型数据的是
  A)0.123
  B)123e3
  C)2.1e3.5
  D)789.0
  正确答案: C
  3.6 在16位C编译系统上,若定义,则能给a赋40000的正确语句是
  B)a=4000*10;
  D)a=4000L*10L;
  正确答案: D
  3.7 若有说明语句:char c='72';则变量c
  A)包含1个字符
  B)包含2个字符
  C)包含3个字符
  D)说明不合法,c的值不确定
  正确答案: A
  3.8 有字符串如下,"n\407as1"xabc",则字符串的长度为
  正确答案: D
  3.9 C语言中运算对象必须是整型的运算符是
  正确答案: A
  3.10 若变量已正确定义并赋值,以下符合C语言语法的表达式是
  A)a:=b+1
  B)a=b=c+2
  C)int 18.5%3
  D)a=a+7=c+b
  正确答案: B
  3.11 若变量a,i已正确定义,且i已正确赋值,合法的语句是
  A)a= =1
  B)++i;
  C)a=a++=5;
  D)a=int(i);
  正确答案: B
  3.12 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是
  A)2.500000
  B)2.750000
  C)3.500000
  D)0.000000
  正确答案: A
  3.13 若有运算符&&,sizeof,^,&=,则它们按优先级由高至低的正确排列次序是
  A)sizeof,&=,&&,^
  B)sizeof,&&,^,&=
  C)^,&&,sizeof,&=
  D)&&,^,&=,sizeof
  正确答案: B
  3.14 以下不正确的叙述是
  A)在C程序中,逗号运算符的优先级最低
  B)在C程序中,APH和aph是两个不同的变量
  C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
  D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
  正确答案: D
  3.15 已知int i,a;执行语句i=(a=3,a++,- -a,a+4,a+5,++a);后,变量i的值为
  正确答案: C
  3.16 设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为
  B)float
  C)double
  D)不确定
  正确答案: C
  3.17 在C语言中,char型数据在内存中的存储形式是
  A)补码
  B)反码
  C)原码
  D)ASCII码
  正确答案: D
  3.18 字符型数据在机器中是用ASCII码表示的,字符’5’和’7’在机器中表示为
  B)100011
  C)110111
  D)100111
  正确答案: C
  3.19 不能进行++和- -运算的数据类型为
  A)指针
  B)整型
  C)长整型
  D)常量
  正确答案: D
  3.20 设有int x=11;则表达式(x++*1/3)的值是
  正确答案: A
  3.21 以下程序的输出结果是
  main()
  { int a=21,b=11;
  printf("%dn",- -a+b,- -b+a);
  正确答案: A
  3.22 假设整型变量a,b,c的值均为5,则表达式a+++b+++c++的值为
  正确答案: C
  3.23 已知int a=6; 则执行a+=a-=a*a;语句后,a的值为
  正确答案: D
  3.24 设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是
  A)n=(n*100+0.5)/100.0
  B)m=n*100+0.5,n=m/100.0
  C)n=n*100+0.5/100.0
  D)n=(n/100+0.5)*100.0
  正确答案: B
  3.25 sizeof(float)是
  A)一个双精度型表达式
  B)一个整型表达式
  C)一种函数调用
  D)一个不合法的表达式
  正确答案: B
  3.26 在C语言中,int,char和short三种类型数据在内存中所占用的字节数
  A)由用户自己定义
  B)均为2个字节
  C)是任意的
  D)由所用机器的机器字长决定
  正确答案: D
  3.27 以下变量x,y,z均为double类型且已正确赋值,不能正确表示数学式子x÷y÷z的C语言表达式是
  A)x/y*z
  B)x*(1/(y*z))
  C)x/y*1/z
  D)x/y/z
  正确答案: A
  3.28 下列关于复合语句和空语句的说法错误的是
  A)复合语句是由“{”开头,由“}”结尾的
  B)复合语句在语法上视为一条语句
  C)复合语句内,可以有执行语句,不可以有定义语句部分
  D)C程序中的所有语句都必须由一个分号作为结束
  正确答案: C
  3.29 下列关于字符串的说法中错误的是
  A)在C语言中,字符串是借助于字符型一维数组来存放的,并规定以字符′′作为字符串结束标志
  B)′′作为标志占用存储空间,计入串的实际长度
  C)在表示字符串常量的时候不需要人为在其末尾加入′′
  D)在C语言中,字符串常量隐含处理成以′′结尾
  正确答案: B
  二、填空题(请将每一个空的正确答案写在答题卡相应序号后。)
  3.30 以下程序的输出结果是【1】。
  int a=1234;
  printf ("-n",a);
  正确答案: 1234
  3.31 在计算机中,字符的比较是对它们的【2】进行比较。
  正确答案: ASCII码
  3.32 在内存中,存储字符′x′要占用1个字节,存储字符串″X″要占用【3】个字节。
  正确答案: 2
  3.33 在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为4;一个double型数据在内存中所占的字节数为【4】。
  正确答案: 8
  3.34 以下程序段的输出结果是【5】。
  main ()
  {int a=2,b=3,c=4;
  a*=16+(b++)-(++c);
  printf("%d",a);
  正确答案: 28
  3.35 以下程序段的输出结果是【6】 。
  int x=17,y=26;
  printf ("%d",y/=(x%=6));
  正确答案: 5
  3.36 下列y的值是 【7】 。
   y=sizeof(2.25*4);
  正确答案: 8
  3.37 以下程序的输出结果是 【8】 。
  main ()
  {int i=010,j=10;
  pirntf ("%d,%dn",i,j);
  正确答案: 8,10
  3.38 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=′a′+′8′-′3′的值为 【9】 。
  正确答案: f
  3.39 如下语句printf("%cn",′B′+40);在执行后的输出结果是 【10】 。
  正确答案: j
  3.40 定义int a=5,b=20;若执行语句printf("%dn",++a*- -b/5);后,输出的结果为 【11】 。
  正确答案: 9
由于相关情况不断变化,本网站提供的信息仅供参考,请以官方机构发布为准!
转载资料请务必注明出处和原始作者。资料版权归原始作者所有。
如果本站所转载内容不慎侵犯了您的权益,请与我们联系,我们将会及时处理。
最近浏览过的信息
暂无最近浏览记录扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
已有定义:int x=3,y=4,z=5 则表达式!(x+y)+z-1&&y+z/2的值是,这个怎样求,想要具体的求解过程.
作业帮用户
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
!(x+y)+z-1&&y+z/2=!(3+4)+5-1&&4+5/2=!7+5-1&&4+5/2=0+4&&4+5/2=4&&6=1运算符的优先级:()最高,下来是!下来是+,-,*,/,最后是&&逻辑与在左边右边只要有一个0的时候结果就为04和6都不为0,所以结果为1
为您推荐:
其他类似问题
扫描下载二维码int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____. 【参考答案】 1 为什么?_百度知道
int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____. 【参考答案】 1 为什么?
我有更好的答案
表达式x+y&&(x=y)等价于(x+y)&& (x=y),x+y=5,x=y是将y赋给x,故x=3.
5 && 3 = 1 注意两点:1、运算优先级
2、x=y 与 x==y的区别,前者为赋值表达式,后者为逻辑表达式
采纳率:37%
x+y&&(x=y)
先算x+y=5,x=y=3,两边在进行逻辑与运算,5的二进制就是101,3的二进制011,进行运算
本回答被网友采纳
x+y=5,逻辑真x=y,x=3,逻辑真,5&&3,得1
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 x a 3intx y 24 的文章

 

随机推荐