| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 531 人关注过本帖
标题:[求助]for loop 为什么不执行???
只看楼主 加入收藏
jwy110
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-11-4
收藏
 问题点数:0 回复次数:1 
[求助]for loop 为什么不执行???

我在做一个10进制转16进制的程序,程序如下,但是输出的结果是倒过来的~~~比如输入123,输出应为7B,但它输出的是B7, 我在for loop里面明明要它回倒了,为什么不执行呢???还是其他的原因,望哪为大哥帮忙看看~~

#include <iostream.h>
#include <stdlib.h>

void htio(int x, int y)
{
int d,i=0;
char Chars[] = {'A', 'B', 'C', 'D', 'E', 'F'};
while( x != 0 )
{
d = x % 16;
x = x / 16;

if ( d >=10)
cout << Chars[d-10];
else
cout << d;
}
for (d = i - 1; d >= 0; d--)
{
cout << Chars[d];
}

}

int main()
{
int a;
cout << "please enter a positive number ";
cin >> a;
cout << "\n";
htio(a, 16);
system("PAUSE");
return 0;
}

搜索更多相关主题的帖子: loop 
2006-11-04 22:33
leowsw
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2006-11-4
收藏
得分:0 

#include <iostream.h>
#include <stdlib.h>
#include<math.h>

void htio(int x, int y)
{
int d,i=0,j=x,k=-1;
char Chars[] = {'A', 'B', 'C', 'D', 'E', 'F','G','H'.......'Z'};
while(j!=0)
{
j=j/y;
k++;
}

while( k>=0 )
{
if(x>y-1)
{
d = x / (int)pow(y,k);
x = x % (int)pow(y,k--);
if ( d >=10)
cout << Chars[d-10];
else
cout << d;
}
else
{
d=x;
if ( d >=10)
cout << Chars[d-10];
else
cout << d;
break;
}
}
}

int main()
{
int a;
cout << "please enter a positive number ";
cin >> a;
cout << "\n";
htio(a, 16);
system("PAUSE");
return 0;
}
原来的有些多余,改后可以做10进制换n进制

[此贴子已经被作者于2006-11-5 3:24:04编辑过]

2006-11-05 03:12
快速回复:[求助]for loop 为什么不执行???
数据加载中...
 
   



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

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