| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:[问题已解决][求助]程序运行的结果
只看楼主 加入收藏
Sally_SJL
Rank: 1
等 级:新手上路
威 望:2
帖 子:452
专家分:1
注 册:2006-7-14
结帖率:100%
收藏
 问题点数:0 回复次数:2 
[问题已解决][求助]程序运行的结果
#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编辑过]

搜索更多相关主题的帖子: 运行 结果 
2006-08-01 01:44
罗彬
Rank: 1
等 级:新手上路
帖 子:141
专家分:0
注 册:2006-4-24
收藏
得分:0 
第一次,指针指向s[0],首先,a%16=12,12>10因此执行*p=b+48;
*p=60对就的ASCILL码值是'<'符号以此类推即可,这种题就该主要是ASCII码问题

2006-08-01 05:16
Sally_SJL
Rank: 1
等 级:新手上路
威 望:2
帖 子:452
专家分:1
注 册:2006-7-14
收藏
得分:0 

恩,明白了,3Q


人生没有彩排,每天都是现场直播~~~
2006-08-01 09:15
快速回复:[问题已解决][求助]程序运行的结果
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023999 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved