2190 - 十进制转换为八进制
输入1个十进制整数, 输出相应的八进制数. 如输入:2013, 输出:3735.
Input
有多行数据,每一行数据N的数值范围在[0, 231 - 1].
(用for 或while循环实现,不用API提供的直接转换方法)
Output
每一行输出N所对应的八进制。
Examples
Input
2012 2013
Output
3734 3735
Solution C
#include<stdio.h> int main(){ int num; while(scanf("%d",&num)!=EOF){ int i; int b[50]; for(i=0;i>=0;i++) { b[i]=num%8; if(num/8==0) break; num=num/8; } for(i=i;i>=0;i--) { printf("%d",b[i]); } printf("\n"); } }
Solution C++
#include<iostream> using namespace std; void change(int m){ int i,k=0,a[30]; if(m==0){ a[k++]=0; } else{ while(m!=0){ a[k++]=m%8; m=m/8; } } for(i=k-1;i>=0;i--) cout<<a[i]; cout<<endl; } int main(){ int m; while(cin>>m){ change(m); } return 0; }