A-A+

有以下程序 include<stdio.h> intfun(charS[]) {intn=0

2022-08-12 18:49:59 问答库 阅读 197 次

问题详情

有以下程序 include<stdio.h> intfun(charS[]) {intn=0; while(*s<=9&&*s>=0){n=10*n+*S-0;s++;) return(n); } main() {chars[10]={6,1,*,4,*,9,*,0,*); printf(%dn,fun(s)); } 程序的运行结果是
A.61490
B.61
C.9
D.5

请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:B
存fun函数中,while循环的功能是逐个取字符数组s的字符判断其是否是数字。若是则将这些数字组成一个数保存到变量n中,并返同变量n的值。所以在主函数中调用fun(s)时,将把字符数组s中的数字组成一个数输出。因为当指针s指向数组的第3位时,即字符"*",循环条件不成立,循环结束,返同n的值。所以输出n的值为61。

考点:程序