正文

进制转化2007-04-01 16:04:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/xiaoxiaofeng/24471.html

分享到:

进制转化 Time Limit:1s Memory limit:32M Accepted Submit:18 Total Submit:26 输入十进制数n(0<=n<=10000),请输出它对应的k(2<=k<=36)进制数。 10,11…分别用A, B … 代替。 输入数据 本题有多组输入数据,你必须处理到EOF为止. 每组数据占一行,有2个整数n,k 输出数据 输出n对应的k进制数,一个数一行。 输入样例3 2 4 3 15 16 输出样例11 11 F Original: FOJ月赛-2007年3月 #include<iostream>using namespace std; void ten_to_r(int n,int r,char a[]){    int i,temp=1; char c; if(n==0){a[0]='0';a[1]='\0';} else{  for(i=0;n!=0;i++)  {   temp=n%r;   n/=r;   c=char(temp);   if(temp>=10)c+=55;   else c+=48;   a[i]=c;  }  a[i]='\0'; }}   int main(){    int n,r,i; char a[100000]; while(scanf("%d%d",&n,&r)!=EOF) {  ten_to_r(n,r,a);  for(i=strlen(a)-1;i>=0;i--)   cout<<a[i];  cout<<endl; } return 0;}

阅读(1866) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册