当前位置:编程学习 > C/C++ >>

题目1020: 八进制数

题目描述
将十进制数转换为八进制,并输出。
 
图:将十进制数转换为八进制并输出
 
 
输入
输入包含若干十进制正整数。
 
 
 
输出
输出相应的八进制数,每个占一行。
 
 
 
样例输入
1
2
3
7
8
9
19
10020345 
 
样例输出
1
2
3
7
10
11
23
46162771 
 
提示 [+]
*** 提示已隐藏,点击上方 [+] 可显示 ***
 
 
 
来源
数据结构算法教学题——张飞飞
 
 
 
 
 
 
 
[cpp] 
/********************************* 
*   日期:2013-2-19 
*   作者:SJF0115 
*   题号: 天勤OJ 题目1020: 算法3-1:八进制数 
*   来源:http://acmclub.com/problem.php?id=1020 
*   结果:AC 
*   来源:数据结构算法教学题——张飞飞 
*   总结: 
**********************************/  
#include<stdio.h>   
#include<iostream>   
#include<stack>   
using namespace std;  
  
#define MAXSIZE 1000   
//输入的字符串   
char str[MAXSIZE];  
  
  
//10进制转换为b进制(用栈)   
void Conversion(int num,int b){  
    stack<int> S;  
    //除b取余   
    do{  
        //余数用栈存储   
        S.push(num % b);  
        num /= b;  
    }while(num);  
    //输出   
    while(!S.empty()){  
        printf("%d",S.top());  
        S.pop();  
    }  
    printf("\n");  
}  
  
int main()  
{  
    int a,b;  
    while(scanf("%d",&a) != EOF){  
        b = 8;  
        //十进制转换为8进制   
        Conversion(a,b);  
    }  
    return 0;  
}  
 
/*********************************
*   日期:2013-2-19
*   作者:SJF0115
*   题号: 天勤OJ 题目1020: 算法3-1:八进制数
*   来源:http://acmclub.com/problem.php?id=1020
*   结果:AC
*   来源:数据结构算法教学题——张飞飞
*   总结:
**********************************/
#include<stdio.h>
#include<iostream>
#include<stack>
using namespace std;
 
#define MAXSIZE 1000
//输入的字符串
char str[MAXSIZE];
 
 
//10进制转换为b进制(用栈)
void Conversion(int num,int b){
stack<int> S;
//除b取余
do{
//余数用栈存储
S.push(num % b);
num /= b;
}while(num);
//输出
while(!S.empty()){
printf("%d",S.top());
S.pop();
}
printf("\n");
}
 
int main()
{
int a,b;
while(scanf("%d",&a) != EOF){
b = 8;
//十进制转换为8进制
Conversion(a,b);
}
    return 0;
}
 
 
补充:软件开发 , C++ ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,