int a=5,b=4; float x=5.5,y=3.7; 则(float)(a+b)/2+(int)x/(int)

幸福快来了2022-10-04 11:39:541条回答

int a=5,b=4; float x=5.5,y=3.7; 则(float)(a+b)/2+(int)x/(int)y+(int)(x+y)%4/2的值为:_______________

已提交,审核后显示!提交回复

共1条回复
_无果花_ 共回答了19个问题 | 采纳率84.2%
(float)(a+b)/2+(int)x/(int)y+(int)(x+y)%4/2的最终值为5.5
可以一步步手工算出来.
1)原式可以划为:(float)(4+5)/2+(int)5.5/(int)3.7+(int)(5.5+3.7)%4/2
2) 进一步转划:(float)(9)/2+ 5/3+(int)(9.2)%4/2
3) 4.5+ 1+9%4/2
4)5.5 + 1/2
5)得出结果 5.5
(int)x 强制类型转换时,是直接取整数部分,将小数部分舍弃.运算按从左至右算出来.
1年前

相关推荐

存在如下定义:int a=5,b=5,*c=&a,&d=b,下列赋值语句正确的是 A a=d+
存在如下定义:int a=5,b=5,*c=&a,&d=b,下列赋值语句正确的是 A a=d+
存在如下定义:int a=5,b=5,*c=&a,&d=b,下列赋值语句正确的是
A a=d+b
B a=b+c
C a=*d+c
D 以上都错
&d=b是把b的值附给了d的地址吗?
shuyingge1年前1
wulaodao 共回答了17个问题 | 采纳率88.2%
int &d=b;这句的意思是d是b的引用(可以看做d就是b,d就是b的一个别名),题目选A
关于指针的两个选择题例7:若有定义int a=5;下面对(1),(2)两个语句的正确解释是( ).1、int *p=&a
关于指针的两个选择题
例7:若有定义int a=5;下面对(1),(2)两个语句的正确解释是( ).
1、int *p=&a; 2、*p=a;
A)x05语句1和2中的*p含义相同.
B)x051和2语句的执行结果都是把变量a的地址赋给指针变量p
C)x051在对p进行说明的同时进行初始化,使p指向a,2将变量a的值赋给指针变量p.
D)x051在对p进行说明的同时进行初始化,使p指向a,2将变量a的值赋于*p.
例8:若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是( ).
A)x05 a,point,*&a B) &*a,&a,*point
C) *&point,*point,&a D)&a,&*point,point
啸蓝小坤1年前1
eapnone 共回答了18个问题 | 采纳率94.4%
例7:D
例8:D
若有定义:int a=5,*p = &a;有错误的表达式是(B)    A.*&a B.&*a C.&*p D.*&p
若有定义:int a=5,*p = &a;有错误的表达式是(B)    A.*&a B.&*a C.&*p D.*&p 为什么选b
zhanglifang5271年前1
冰山来客2008 共回答了16个问题 | 采纳率75%
a是一个变量名,将操作符*应用于a没有定义,即无意义,因此&*a整个表达式无意义.*&a等同于*p,&*p等同于&a,*&p等同于p.
int a=5,b=1,c=2;if (a=b+c)printf("a=b+c);else printf(a!=b+c)
int a=5,b=1,c=2;if (a=b+c)printf("a=b+c);else printf(a!=b+c)
A.语法错误,不能通过编译B.能编译,但不能连接C.a=b+cD.=b+c
int a=5,b=1,c=2;if (a=b+c)printf("a=b+c");else printf("a!=b+c")
咒剑狱1年前1
vickyblue520 共回答了18个问题 | 采纳率100%
最后没有分号还是漏了?
没有的话,选A,因为C语言中分号是语句的结束符.
有的话,选C.
x05int a = 5, b = 1, c = 2;
x05if (a = b + c)//将b+c赋值给a,整个表达式的值是3,为真
x05x05printf("a=b+c");
x05else
x05x05printf("a!=b+c");
若定义变量int a=5,b=3;执行下列语句:a+=b;b=a-b;a=a-b;后a,b的值分别等于多少?为什么?
净坛斋主人1年前4
西蜀一鸟 共回答了12个问题 | 采纳率100%
a+=b 就是a=a+b 所以a=8
b=a-b=8-3=5
a=a-b=8-5=3
所以最后a=3 b=5
以下程序的输出结果是 int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c)b
以下程序的输出结果是 int a=5,b=4,c=6,d; printf("%dn",d=a>b?(a>c?a:c)b));}
A 5 B 4 C 6 D 不确定
讲解下哈
交叉火力1年前1
tanyine130 共回答了17个问题 | 采纳率70.6%
a>c?a:c返回6
所以d=(a>b?6:b)
(a>b?6:b)返回6
所以答案选C
PS:你的表达式错了.
226.若有说明语句:int a=5; a++; 此处表达式a++的值是 A) 7 B) 6 C) 5 D) 4
silkypix1年前1
树影白帆 共回答了16个问题 | 采纳率87.5%
选C 5
在当前句a还没有加1,需执行完这句话才能加1
执行以下程序段后,a和x的值为 int a=5,x=0; if(a==0) x++; else if(a=0) x+=2
执行以下程序段后,a和x的值为 int a=5,x=0; if(a==0) x++; else if(a=0) x+=2; else x+=3;
A.0 0
B.1 5
C.2 5
D.3 0
木有抄错~题目就是这样滴~
嫣然111年前1
youdhplsjl 共回答了20个问题 | 采纳率90%
执行结束后,a=0,x=3; 原因是:
第一个 if不执行,因为此时 a=5 != 0,if 条件为false;
else if(a=0) 条件是赋值表达式,此表达式的值为a的值,即0,所以也是false.此时 a=0,x=0;
最后else执行,x+=3即是 3.
#include main() { int a=5,b=6,c=1,x=2,y=3,z=4; c=(a=c>x)&&(b
#include main() { int a=5,b=6,c=1,x=2,y=3,z=4; c=(a=c>x)&&(b=y>z); printf("%d",b); }
为什么运行结果是6?
zzykeep1年前1
为爱狂野 共回答了17个问题 | 采纳率100%
&&运算符是先计算左边表达式的值,如果左边表达式的值为0的话,就不执行右边表达式的值了.
而你左边表达式c=(a=c>x)的值已经为0了,所有程序根本就没有执行右边表达式的值,所以b的值没有发生变化.
10、分析以下程序的输出结果是( )。   main()   {int a=5,b=-
 10、分析以下程序的输出结果是( )。   main()   {int a=5,b=-
 10、分析以下程序的输出结果是( )。
  main()
  {int a=5,b=-1,c;
  c=adds(a,b);
  printf(“%d”,c);
  c=adds(a,b);
  printf(“%dn”,c); }
  int adds(int x,int y)
  {static int m=0,n=3;
  n*=++m;
  m=n%x+y++;
  return(m); }
  A. 2,3 B. 2,2 C. 3,2 D. 2,4
黛玉的表哥1年前1
luckyy2008 共回答了17个问题 | 采纳率100%
A
已知int a=5,b=4,c=6,d;,执行语句d=a>b?(a>c?a:c):b后,d的值为________.
rain86431071年前1
serbgirl 共回答了17个问题 | 采纳率88.2%
6
首先运行的肯定是括号里的 a>c?a:c
如果a大于c的话 结果为 a,
反之则为c,所以结果是c
然后运行的是 a>b?c:b;
同上 所以结果为6
(一道选择题)有如下程序:main(){int a=5,*b,**c;c=&b;b=&a;}程序在执行了c=&b;b=&
(一道选择题)有如下程序:
main()
{
int a=5,*b,**c;
c=&b;
b=&a;
}
程序在执行了c=&b;b=&a;语句后,表达式**c的值是()
A.变量a中的值
B.变量b中的地址
选(),为什么?
还有**c是什么意思,它的结合规律是怎样的,我不太明白!
答案怎么是B?
上文街道1年前1
qeeeeq 共回答了17个问题 | 采纳率88.2%
A
c为b的地址
*c为b中的值,即a的地址
**c为a的地址中所存储的值,即a的值
求帮助:java的题4、设有定义int a=5,b=4,c=3,则以下的表达式中,值为false的是______A、a
xuemeiniang1年前1
Ericsuper 共回答了20个问题 | 采纳率95%
4. A 8. C 10. C 12. C 13.A(??) 14. C 15. A 32. Copy this stri
3. Java中定义类的关键字是(class),创建对象的关键字是(new)。
15.设 int a=5,b=4,c=3,d=2; 则以下条件表达式的值为( D ).a > b a :c > d c
15.设 int a=5,b=4,c=3,d=2; 则以下条件表达式的值为( D ).a > b a :c > d c :d
15.设 int a=5,b=4,c=3,d=2; 则以下条件表达式的值为( D ).
a > b a :c > d c :d
(A)2 (B) 3 (C) 4 (D) 5
wanglyiyong1年前1
消失的星期一 共回答了21个问题 | 采纳率81%
a > b a :(c > d c :d) ==> 5 > 4 5 :(c > d c :d) ==> 5
三元运算符嵌套,每一个 ':' 往左找最近的一个未匹配的 ' 匹配之,这个三元运算符就算嵌套还是很容易加括号区分清楚的,除了长了一点外与其他表达式嵌套没什么两样.
# include # define MAX(x,y) (x)>(y)?(x):(y) main() { int a=5
# include # define MAX(x,y) (x)>(y)?(x):(y) main() { int a=5,b=2,c=3,d=3,t;
你说你说你说嘛1年前1
缘分的天空138 共回答了25个问题 | 采纳率80%
MAX定义有问题
应该改为:# define MAX(x,y) ((x)>(y)?(x):(y))
设有定义int a=5,b; 赋值使b为9的语句是( ) A) b = ++a+4; B) b = (a++)+3; C
设有定义int a=5,b; 赋值使b为9的语句是( ) A) b = ++a+4; B) b = (a++)+3; C) b = 8+!(a==5); D) b = (a++
D) b = (a++==6)?8:9;
姚文爽1年前2
wangyuyue 共回答了22个问题 | 采纳率95.5%
赋值使b为9的语句是( D)
D) b = (a++==6)?8:9;
a++本身=5;
判别是否=6,条件是否,b选择=9
设有定义:int a=5 ,b=2;以下值为1的表达式是 A b!=a B!(b==a/2) C a!=b‖a>=b D
设有定义:int a=5 ,b=2;以下值为1的表达式是 A b!=a B!(b==a/2) C a!=b‖a>=b D a>0&&b
枫叶自己1年前1
anywl 共回答了14个问题 | 采纳率85.7%
AC
当返回值为真时,值为相当于为1.A 和C都为真.B中a/2是整数相除,在结果为2,和b相等,内部值为1,但外面有个!,所以为假.D中
若有定义 int a=5,b=3; 则表达式(a++)+(++b)的值是().A)8 B)7 C)9 D)11
caoyun9201年前1
julylfish 共回答了24个问题 | 采纳率83.3%
D

大家在问