A-A+

有以下程序: main() {char*p[]={3697 2584}; int i

2022-08-05 23:24:29 问答库 阅读 173 次

问题详情

有以下程序: main() {char*p[]={"3697","2584"}; int i,j;long num=0; for(i=0;i<2;i++) {j=0; while(p[i][j]!="") {if((p[i][j]-"0")%2)num=10*num+p[i][j]-"0"; j+=2; } } printf("%dn",num); } 程序执行后的输出结果是()。
A.35
B.37
C.39
D.3975

参考答案

正确答案:C
解析:通过赋值表达式指针数组*p[]等价于数组p[2][4];表达式“p[i][j]-'0'”可用来表示该字符数组元素的数值,故表达式“(p[i][j]-'0')%2”为判断该字符数组元素的数值的奇偶性,表达式“num=10*num+p[i][j]-'0'”中的数值运算表示直接加该字符数组元素的数值。

考点:程序