精华内容
下载资源
问答
  • 用数据结构中的栈实现十进制转换成八进制
  • 十进制八进制、十六进制之间的转换源代码。.net源代码程序,VisualStudio2008创建
  • 该计算器程序支持二进制、八进制十进制之间的互相转换,同时也支持二进制、八进制十进制的计算。但是需要注意的是:程序可能存在着些许错误,请体谅笔者的水平。笔者提供了程序的完整文件,包括程序源代码。 本...
  • C语言实现八进制转十进制

    千次阅读 2020-05-07 18:26:45
    八进制转十进制 #include <stdio.h> #include <math.h> int main(){ printf("请输入一个八进制数"); int count,result; int i=0,j, a[100]; scanf("%d",&count); while(count!=0){ a[i]=...

    八进制转十进制

    #include <stdio.h>
    #include <math.h>
    int main(){
    	printf("请输入一个八进制数"); 
    	int count,result;
    	int i=0,j, a[100];
    	scanf("%d",&count);
    	while(count!=0){
    		a[i]=count%10;
    		count-=a[i++];
    		count=count/10;
    	}
    	result=0;
    	for(j=0;j<i;j++){
    		result+=a[j]*pow(8,j);		
    	}
    	printf("十进制为:%d",result);
    } 
    
    展开全文
  • Python 八进制转换为十进制代码

    千次阅读 2018-11-21 20:58:00
    Python 八进制转换为十进制代码示例,包括了程序分析和程序源代码,分享源代码如下: #整数版 from functools import reduce n=[int(x) for x in input('输入一个整数:')] print(reduce(lambda x,y:x*8+y,n...

    Python 八进制转换为十进制的代码示例,包括了程序分析和程序源代码,分享源代码如下:

    #整数版
    from functools import reduce
    n=[int(x) for x in input('输入一个整数:')]
    print(reduce(lambda x,y:x*8+y,n))
    #浮点数版
    #感谢分享: http://www.codesc.net
    s=input('输入一个数,可以是浮点数:')
    try:
        float(s)
    except ValueError:
        print('输入错误')
    else:
        f=s.index('.')
        s=s[:f]+s[f+1:]
        s=[int(x) for x in s]
        n=sum([ 8**(f-1-i)*s[i] if i<f else 8**(i-1-f)*s[i] for i in range(len(s))])
        print(n)
        
    '''
    #原程序
    if __name__ == '__main__':
        n = 0
        p = raw_input('input a octal number:\n')
        for i in range(len(p)):
            n = n * 8 + ord(p[i]) - ord('0')
        print n
    '''
    

      引自:http://www.codesc.net/tech/3239.shtml

    转载于:https://www.cnblogs.com/jianghuluanke/p/9997813.html

    展开全文
  • 写一个程序,将输入的十进制数据M 转换为八进制数据M8,将其调试通过.在此基础上修改程序,实现十进制数据M 向N 进制(2或8或16)的转换. #include<stdio.h> #include<stdlib.h> #define INIT_SIZE 100 #...

    c语言栈实现十进制转换为二进制,八进制和十六进制

    写一个程序,将输入的十进制数据M 转换为八进制数据M8,将其调试通过.在此基础上修改程序,实现十进制数据M 向N 进制(2或8或16)的转换.

    #include<stdio.h>
    #include<stdlib.h>
    #define INIT_SIZE 100
    #define N 80
    
    
    typedef struct stack{
    	int *top,*base;
    	int size; 
    }stack;
    
    /********初始化构建一个空栈*********/ 
    void initStack(stack &s){
    	s.base=(int*)malloc(sizeof(int)*INIT_SIZE);//分配储存空间 
    	if(!s.base)//如果分配失败则退出 
    		exit(0);
    	s.size=INIT_SIZE;
    	s.top=s.base;//注意,若写成s.base=s.top,则会导致栈初始化失败 
    }
    
    
    
    
    //push函数将元素压入栈
    void push(stack &s,int m){
    	
    	int *p=NULL;
    	if(!s.base)
    		exit(0);
    	if(s.size<=s.top-s.base){//若储存空间不够 ,则重新申请 
    		p=(int*)realloc(s.base,sizeof(int)*(INIT_SIZE+N));
    		if(!p){
    			printf("内存再次分配失败!");
    			exit(0);
    		}
    		s.base=p;
    		s.top=s.base+N;
    		s.size+=N;
    		
    	}
    	*s.top=m; //将新元素压进栈顶;
    	s.top++; //栈顶指针向上移动1个单位 
    }
    
    /********出栈函数*********/ 
    int pop(stack &s){
    	int m;
    	
    	s.top--;//栈顶指针指向最上面的元素 
    	m=*s.top;//将栈顶元素赋给m 
    	return m;
    }
    
    /********计算相应的进制并输出*********/  
    void calcu(stack &s,int n,int r){
    	int temp,m;
    	while(n){
    		temp=n%r;
    		n/=r;
    		push(s,temp);
    	}
    	while(s.top!=s.base){//若栈中还有元素,则进入循环,执行输出操作 
    		m=pop(s);
    		if(r==16){//若为16进制 
    			if(m==10)
    				printf("A");
    			else if(m==11)
    				printf("B");
    			else if(m==12)
    				printf("C");
    			else if(m==13)
    				printf("D");
    			else if(m==14)
    				printf("E");
    			else if(m==15)
    				printf("F");
    			else printf("%d",m);						
    		}
    		else
    			printf("%d",m);//2进制和8进制 
    		
    	}
    } 
    
    
    int main(){
    	int i,n;
    	stack s;
    	initStack(s);
    	printf("请输入一个十进制的数字:");
    	scanf("%d",&n);
    	if(n<0){ 
    		printf("输入的数字有误!");
    		exit(0);
    	}
    	printf("对应的二进制的是:");
    	calcu(s,n,2);
    	printf("\n对应的八进制的是:");
    	calcu(s,n,8);
    	printf("\n对应的十六进制的是:");
    	calcu(s,n,16);	
    	return 0;	
    }
    

    注意:此代码具有局限性,十位以内的运算正确,超出十位则会发生错误
    在这里插入图片描述在这里插入图片描述

    展开全文
  • 对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数。java代码实现源码。
  • 1 //编写程序,实现输入一个10进制数,输出相应的8进制和16进制 2 #include<stdio.h> 3 void main() 4 { 5 int a,x,y; 6 printf("please input a integer:\n"); 7 scanf("%d",&a); 8 printf("%o,%x...
    1 //编写程序,实现输入一个10进制数,输出相应的8进制和16进制
    2 #include<stdio.h>
    3 void main()
    4 {
    5     int a,x,y;
    6     printf("please input a integer:\n");
    7     scanf("%d",&a);
    8     printf("%o,%x\n",a,a);
    9 }

    方法一:直接使用控制字符串:%o:代表八进制

                                                      %x,%X:代表16进制,实现代码如上。

    方法二:调用stdlib.h库函数(源网址:http://blog.csdn.net/cytosine/article/details/59189577)

                   函数 char *itoa(int value, char *string, int radix)
                           返回值类型char
                           参数value 待转换的数字
                           参数string 转换后存储到string中
                           参数radix 转换到几进制pa
                    定义在 stdlib.h

     

    转载于:https://www.cnblogs.com/panyp-1997/p/8417071.html

    展开全文
  • 十进制(二进制,八进制,十六进制)写在前面进制转换(数学方法)1、 转换为二进制算法解析算法源码2、 转换为八进制算法解析算法源码3、 转换为十六进制算法解析算法源码欢迎评论区评论字符拼接算法工具类源码...
  • 先将一个十进制的整数转换成2进制的数;例如十进制的90 根据这个过程我们就得到了5A,那么根据十六进制的开头用前缀0x 90的十六进制0x5A (小写a大写A都可以) 发散: 1、为什么十六进制用4个二进制位表示嘛? ...
  • 编写一个程序,将用户输入的一个十进制数转换成二、、十六、三十二进制数。#include #include void trans(int n,int base);int main(){ int n ; cout请输入一个整数:"; cin>>n; int base; cout请输入进制:"<<
  • 十进制到其它进制的转换 */ # include # include # define N 8 //要转换成的进制 # define INIT_SIZE 5 //栈的初始空间大小 # define INC_SIZE 2 //栈空间增量 //栈结构 typedef struct { int * base; //...
  • case 1: printf("\n请选择转换后的进制:\n0、退出\n1、二进制\n2、八进制\n3、十进制\n4、十六进制\n"); scanf("%d",&j); switch(j) { case 1: printf("\n同进制之间不用转化!\n"); q=1; break; case 2: ...
  • 十进制数转换为八进制(栈实现)

    万次阅读 2018-08-30 15:02:32
    输入一个十进制数值,将其转换为相应的八进制(四进制二进制同理),完全可以利用栈先进后出的特性来实现,栈容器在C++中有现成模板可以直接使用(也可以手工实现使用函数调用)。 #include&lt;iostream&...
  • 十六进制转八进制

    千次阅读 2021-01-31 14:35:13
    十六进制转八进制 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 给定n个十六进制正整数,输出它们对应的八进制数。 输入格式 输入的第一行为一个正整数n (1<=n<=10)。 接下来n行,每行一个由0~9、...
  • 这是使用C语言和数据结构中栈的有关知识编写的C程序,具有较高的灵活性和实用性!可以将任意一个八进制整数转换成十进制数,非常好用!
  • BASIC-10、十进制转十六进制 思路如下: 其实这根本就不算一个题,你可以直接提交一个六行代码 #include<stdio.h> int main() { int n; scanf("%d",&n); printf("%X\n", n); return 0; } 正统...
  • ☆ C/C++ 十进制转二进制

    千次阅读 2018-11-06 22:11:23
    在C中我们可以很简单的实现十进制到十六进制与八进制之间的转换(%x/%X、%o), 但是却没有直接的方法直接将十进制转换为二进制,这就需要我们自己编写相应的功能函数去实现转化; 本篇文章将介绍两种转化方法: 1&...
  • 【C语言】十进制转换二进制

    千次阅读 2021-06-25 09:35:40
    本题要求实现一个函数,将正整数n转换为二进制后输出。 函数接口定义: void dectobin( int n ); 函数dectobin应在一行中打印出二进制的n。建议用递归实现。 裁判测试程序样例: #include <stdio.h> ...
  • #include <stdio.h> #include <math.h> void B_O(int n);... printf("选择进制转换:\n1.B-O 2.B-H 3.B-D\n"); scanf_s("%d", &x); printf("输入二进制数:\n"); scanf_s("%d", &n);.
  • //这个程序的目的是让用户输入一个十进制数,然后打出这个数的八进制数 #include using namespace std; #define OK 1 #define ERROR 0 #define OVERFLOW -2 #define STACK_INIT_SIZE 200 #define ...
  • 用栈实现任意进制的转换 C++6.0运行 c程序
  •  trans(num, 7, 3, "八进制");  }  public static void toHex(int num) {  trans(num, 15, 4, "十六进制");  }  public static void trans(int num, int base, int offset, String name) {  ...
  • C\C++实现任意进制的转换 可以处理小数 详细的文字解说 源程序代码 和大家一起分享 谢谢指教
  • Java源代码保存在扩展名为(.java)文件中。本地编译器javac编译程序程序,并生成包含字节码的(.class)文件。Java字节码表示可移植的中间语言,通过运行java解释器来解释字节码。解释器也称为虚拟机(Virtual ...
  • 二进制 八进制 十进制 十六进制 相互转换 jar 含源代码 运行前安装JRE先,下载地址: http://download.oracle.com/otn-pub/java/jdk/6u29-b11/jre-6u29-windows-i586.exe 本程序用Java编写,适合java爱好者使用
  • Java本身提供了integer类可供十进制转换,但是自己尝试编写这个小功能,感受一下过程也是很愉悦的。 先贴上源代码: ... // 此程序可将任意位十进制成二至九进制数, // 若超过十进制则不能保证正确. /
  • C语言算法之将十进制数转换成二进制数

    万次阅读 多人点赞 2018-06-20 14:35:29
    导语:在C语言中没有将其他进制的数直接输出为二进制数的工具或方法,输出为八进制数可以用%o,输出为十六进制可以用%x,输出为二进制就要我们自行解决了。下面给大家讲述一下如何编程实现将十进制数转换成二进制数...
  • //转换为八进制数 public static void toOct(int num) { change(num,3,7); System.out.println(); } //转换为十六进制数 public static void toHex(int num) { change(num,4,15); System.out.println...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,483
精华内容 14,193
关键字:

十进制转八进制源程序代码