好几道题不会想请大家讲一下:
2、若有以下类型标识符定义: ( D)为啥最后是DOUBLE
int x=2; char w='a'; float y=23.45f; double z=45.6712;
则表达式w*x+y-z的结果类型是
A. float B. char C. int D. double
3、若有int x=10,y=20,z=30; 则执行下面语句后,x的值是B
if(x>y)
z=x;
x=y;
y=z;
A. 10 B. 20 C. 30 D. 0 x明明小于Y都不满足IF的条件 怎么还能执行IF语句?
4、循环语句whlie(int i=0 )i--;的循环次数是A 疑问:这题没初始值吧?怎么判断?
A. 0 B. 1 C. 5 D. 无限
7、以下能正确定义数组并正确赋初值的语句是d
疑问点:d选项第一个数组应赋3个值,若不填,有默认的实参赋值?
A. int N=5,b[N][N];
B. int a[2]={{1},{3},{4},{5}};
C. int c[2][]={{1,2},{3,4}};
D. int d[3][2]={{1,2},{3,4}};
8、下列给字符数组进行的初始化中,不正确的是d
疑问点:C选项和A选项,若数组不说明参数的个数,则可以按任意参数的个数赋值?
A. char s1[]="abcd";
B. char s2[3]={'x','y','\0'};
C. char s3[]={'a','x','y','\0'};
D. char s4[6]={"xyz","mnp"};
??? 15、若有函数说明void fA(int m, int n); 和指针变量的定义 void (*p)(int,int);并且有p= fA则下列操作不正确的是
A.(*p)(3,4); B.p(3,4);
C.fA(3,4); D.*p++;
我的理解是A为指向对象成员的指针并赋2个实参的值,C为直接给外联函数FA给2个形参赋值。至于B和D就不懂了。