[问题已解决][求助]程序运行的结果
#include <stdio.h>main()
{ int a=28,b;
char s[10],*p;
p=s;
do { b=a%16;
if (b<10) *p=b+48;
else *p=b+48;
p++;
a=a/5;
}
while (a>0);
*p='0';
puts(s);
}
第一次,b=12 if条件不满足,*p=67,指针p指向s[1],a=5,while条件满足
第二次,b=5, if条件满足,*p=53,指针p指向s[2], a=1,while 条件满足
第三次,b=1, if条件满足, *p=49,指针p指向s[3],a=0,跳出循环
然后*p=‘0’;再执行puts(s);
那为什么答案是:<510 (书上的答案是:C51)
我有点不明白
[此贴子已经被作者于2006-8-1 9:16:16编辑过]