问题 单项选择题

有以下程序:
main()
char *p[]="3697","2584";
int i,j;long num=0;
for(i=0;i<2;i++)
j=0;
while(p[i][j]!='\0')
if((p[i][j]-'0')%2)num=10*/num+p[i]
[j]-'0';
j+=2;


printf("%d\n",hum);

程序执行后的输出结果是______。

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'”中的数值运算表示直接加该字符数组元素的数值。

单项选择题
单项选择题