8、若有以下定义,则表达式“a * b + d – c”的值的类型为 #include <stdio.h> int main() { char a; int b; float c; double d; .... return 0; }A.doubleB.intC.floatD.char

8、若有以下定义,则表达式“a * b + d – c”的值的类型为 #include <stdio.h> int main() { char a; int b; float c; double d; .... return 0; }

A.double

B.int

C.float

D.char


参考答案和解析
D 解析:a、b、c为整型,赋值运算符两侧的数据类型不一致,系统先自动将右侧表达式求得的数值,按赋值号左边变量的类型进行转换,再赋值给左边的变量。去掉右侧表达式值的小数部分变为整数赋值给变量c,c的值为2。

相关考题:

阅读下面程序段,则执行后输出的结果是#include "stdio.h"main(){ char fun(char,int);char a=′A′;int b=13;a=fun(a,b);putchar(a);}char fun(char a,int b){char k;k=a+b;return k;}A.AB.MC.ND.L

若有以下定义:char a;int b;float c; double d;则表达式a*b+d-c值的类型为【12】 。

若有以下类型说明语句: char w;int x;float y, z; 则表达式w*x+z-y的结果为______类型。A.floatB.charC.intD.double

若有以下程序段: include using namespace std; int main() {char*p="abcdefgh",*r;l 若有以下程序段:include <iostream>using namespace std;int main(){char*p="abcdefgh",*r;long*q;q=(long*)p;q++;r=(char*)q;cout<<r<<end1;return 0;}该程序的输出结果是【 】。

阅读下面程序,则程序执行后的结果为#include "stdio.h"main(){int a=4,b=6,c=7;double d,fun(int,int,int);d=fun(a,b,c);printf("%lf\n",d);}double fun(int a,int b,int c){double s;s=a%b*c;return s;}A.27B.27.000000C.28D.28.000000

若有以下类型说明语句char a; int b; float c; double d; 则表达式a*bd-c的结果类型为( )。 A.FloatB.charC.intD.double

若有以下定义: char a: int b; float c; double d; 则表达式a*b+d c的值的类型为 ______。A.floatB.intC.charD.double

有以下程序 include int fun(char s[]) { int n=O; whil 有以下程序 #include <stdio.h> int fun(char s[]) { int n=O; while(*s<='9'*s>='0') { n=10*n+*s-'0'; s++; } return (n); } main() { char s[10]={ '6', '1', '*', '4', '*', '9', '*', '0', '*'}; printf("%d\n",fun(s)); }A.9B.61490C.61D.5

若有以下程序:includeint a[]={2,4,6,8};main(){int i; int *p=a; for(i=0;i 若有以下程序: #include<stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++) a[i]=*p; printf("%d\n",a[2]); } 上面程序的输出结果是( )。A.6B.8C.4D.2

若有以下定义char a;int b;float c;double d;则表达式a*b+d-c值的类型为

现有定义int a;double b;float c;char k;,则表达式a/b+c-k值的类型为A.intB.doubleC.floatD.char

有以下程序:includeint a=2;int f(int *a){return (*a) ++;}main(){ int s=0;{ int a= 有以下程序: #include <stdio.h> int a=2; int f(int *a) { return (*a) ++;} main() { int s=0; { int a=5; s+=f(a); } s+=f(a); printf("%d\n",s) } 执行后的输出结果是( )。A.10B.9C.7D.8

以下程序的输出结果是【】。 include main() {struct stru {int a; float b; char d[4]; } 以下程序的输出结果是【 】。include<stdio.h>main(){ struct stru{ int a;float b;char d[4];};printf("%d\n",sizeof(struct stru));}

若有以下定义: char a;int b; float c;double d; 则表达式a*b+b-c值的类型为( )。A. floatSX 若有以下定义: char a;int b; float c;double d; 则表达式a*b+b-c值的类型为( )。A. floatB.intC.charD.double

有以下程序 include int fun(int a, int b) { if(b==0) return a; 有以下程序 #include <stdio.h> int fun(int a, int b) { if(b==0) return a; else return(fun(-a,-b)); } main() { printf("%d\n",fun(4,2)); } 程序的运行结果是______。A.1B.2C.3D.4

若有定义语句:“int a=10;double b=3.14;”,则表达式A+a+b值的类型是( )。A.charB.intC.doubleD.float

若有以下程序: include using namespace std; int main() {char str[10];cin>>str;co 若有以下程序:include <iostream>using namespace std;int main(){char str[10];cin>>str;cout<< str<<end1;return 0;}当输入为:This is a program!那么执行程序后的输出结果是【 】。

若有以下程序includeint a[]={2,4,6,8};main(){int i; int *p=a; for(i=0;i 若有以下程序 #include <stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]);} 上面程序输出结果是A.6B.8C.4D.2

设有以下变量定义,并已赋确定的值: char w; int x; float y; double z; 则表达式:w*x+z-y所求得的数据类型为( )。A.charB.intC.floatD.double

若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )。A.A. float SXB 若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为( )。A.A. floatB.intC.charD.double

若有以下程序 include int a[ ]={2,4,6,8}; main( ) { int i; int *p=a; for(i=0;i 若有以下程序#include <stdio.h>int a[ ]={2,4,6,8};main( ){ int i;int *p=a;for(i=0;i<4;i++) a[i]=*p;printf("%d\n",a[2]);}上面程序的输出结果是A.6B.8C.4D.2

已知程序中已经定义了函数test,其原型是int test(int, int, int);,则下列重载形式中正确的是A.char test(int,int,int);B.double test(int,int,double);C.int test(int,int,int=0);D.float test(int,int,float=3.5F);

若有以下定义:char a; int b; float c; double d; 则表达式a*b+d-c值的类型为______。A.floatB.intC.charD.double

试题14若有定义语句:int a=10; double b=3.14; , 则表达式‘A’+a +b值的类型是()A.charB.intC.doubleD.float

若有说明:char w; int x; float y; double z; 则表达式w*x+y-z的值的数据类型是()。A、doubleB、charC、intD、float

设有说明:char w;int x;float y;double z;则表达式w*x+z-y 值的数据类型为().A、floatB、charC、intD、double

switch(表达式)语句中的“表达式”,允许的类型是()。A、float,intB、float,int,charC、int,charD、char,double

单选题若有说明:char w; int x; float y; double z; 则表达式w*x+y-z的值的数据类型是()。AdoubleBcharCintDfloat