精华内容
下载资源
问答
  •  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 样例输入 FFFF 样例输出 65535 #include<...

    基础练习 十六进制转十进制  

    时间限制:1.0s   内存限制:512.0MB

          

    问题描述

      从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
      注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。

    样例输入

    FFFF

    样例输出

    65535

     

    #include<bits/stdc++.h>
    
    using namespace std;
    
    
    int main()
    {
    	string s1;
    	long long int sum=0; //FFFFFFFF会超出int范围
    	int t;
    	cin>>s1;
    	int len = s1.length();
    	for(int i=0;i<len;i++)
    	{
    		switch(s1[i]){
    			case 'A': t=10;break;
    			case 'B':t= 11;break;
    			case 'C':t= 12;break;
    			case 'D':t= 13;break;
    			case 'E':t= 14;break;
    			case 'F':t= 15;	break;		
    			default : t=s1[i]-'0';break;
    		}
    		sum+=t*pow(16,len-1-i);
    	//	printf("##%d\n",sum);
    		
    	}
    	printf("%lld",sum);
    	return 0;
    } 

      基础练习 十进制转十六进制  

    时间限制:1.0s   内存限制:512.0MB

       

    问题描述

      十六进制数是在程序设计时经常要使用到的一种 整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是 满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。
      给出一个非负整数,将它表示成十六进制的形式。

    输入格式

      输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647

    输出格式

      输出这个整数的16进制表示

    样例输入

    30

    样例输出

    1E

    #include<bits/stdc++.h>
    
    using namespace std;
    
    
    int main()
    {
    	string s="";
    	int a,x;
    
    
    
    
    
    	cin>>x;
    	if(x==0){
    		cout<<x;
    		return 0;
    	}
    	while(x)
    	{
    		a=x%16;
    		switch(a){
    			case 10: s+="A";break;
    			case 11:s+="B";break;
    			case 12:s+="C";break;
    			case 13:s+="D";break;
    			case 14:s+="E";break;
    			case 15:s+= "F";break;
    			default : s+=(a+'0');break;
    		}
    		x/=16;
    		//cout<<"$$"<<s<<endl;
    	}
    	for(int i=s.length()-1;i>=0;i--)
    	cout<<s[i];
    	return 0;
    }
    

     这道题 我真是日了gou了  测试一晚上加一早上 就是倒数第二个测试数据过不去

    刚发现是case 10: s+="A";break; 少写了个 + 号  =,= so sad

     

    展开全文
  • 汇编实现十进制转十六进制输出,输入一个十进制,输出一个十六进制
  • java 十六进制输出

    千次阅读 2017-11-16 10:39:44
    java 十六进制输出

    System.out.printf( "%02x ", i );

    byte[] arr = new byte[1024];

    String s = new String(arr, "gbk");  
         
            

    展开全文
  • 汇编语言 十六进制输出

    千次阅读 2020-04-27 10:26:44
    总觉得汇编语言的输出很麻烦,但是目前刚刚开始学,还不清楚怎么化繁为简,输出数字的时候只能根据数字字符的ASCII码输出... 今天写了个汇编语言十六进制输出的作业,感觉有点难度,写了两个小时,现在在下面做个总结。

    今天写了个汇编语言十六进制输出的作业,感觉有点难度,写了两个小时,现在在下面做个总结。

    总觉得汇编语言的输出很麻烦,但是目前刚刚开始学,还不清楚怎么化繁为简,输出数字的时候只能根据数字字符的ASCII码输出,不像之前学的其他语言直接控制格式输出就行。

    举个例子,对于3B4EH这个十六进制数,要怎么在汇编窗口输出呢?

    先考虑高八位 ,要先输出第一个数,就要使高八位逻辑右移四位,变成03,再与30H做或运算,变成33H,比较是否是对应字符的ASCII码,即是否小于39,小于则可以直接输出,因为此时对应的就是改数字的ASCII码;还原数字3B,3已经输出过了,现在考虑高八位中的低四位要怎么输出。用高八位与0FH做与运算,得到0BH,再与30H做或运算变成3BH,比较是否小于39H,小于则直接输出,但此时是大于39H,即应该输出的是B,B的ASCII码是42,要使3B变成42需要加上7,所以每次到跟39H比较时,小于39H则直接跳过加7这一步,大于才需要加7。
    低八位的考虑跟高八位一样,这里·就不重复叙述了。
    总的来说就是八位八位地考虑,八位中获取高四位的方法是右移四位,获取低四位的方法是与0FH做与运算。

    DATA SEGMENT
    BUF DW 1278,52,114,2317,8654,357,64
    N DW ($-BUF)/2
    DATA ENDS
    
    CODE SEGMENT
       ASSUME CS:CODE,DS:DATA
    START: MOV AX,DATA
           MOV DS,AX         ;设置DS
           LEA SI,BUF
           MOV CX,N          ;初始化循环次数CX
    BE:    MOV N,CX          ;把剩余未处理数的个数赋值给N
     
           MOV DX,BUF[SI]    ;取现在要处理的数
           ADD SI,02H        ;指针加二,指向下一个未处理的数
           CALL SIXTEEN      ;调用子程序输出十六进制
           MOV CX,N          ;若剩余未处理数为一个
           CMP CX,1
           JE DONE           ;则不用输出','
           MOV DL,','        ;否则输出','
           MOV AH,2
           INT 21H
           LOOP BE            ;根据未处理数的个数决定要不要循环
           
    DONE:  MOV AX,4C00H
           INT 21H
    ;字程序按十六进制输出 
    SIXTEEN   PROC NEAR
           MOV BX,DX          ;先把要处理的数拷贝一份到BL
           MOV CL,4           ;4代表等会儿逻辑右移的位数    
           SHR DH,CL          ;将数逻辑右移四位取字节的高四位
           OR DH,30H           ;与30H做或运算
           CMP DH,39H          ;比较高四位是否小于9
           JBE ONE             ;小于9则跳转,不需要转化为字母的ASCII码
           ADD DH,7           ;运行到此处说明高四位为A-Z,加7转化为对应的ASCII码
    ONE:   MOV DL,DH          ;按ASCII码输出字符
           MOV AH,02H
           INT 21H
           
           MOV DH,BH          ;还原未处理数
           AND DH,0FH         ;将数与0FH做与运算,意求字节的低四位
           OR DH,30H          ;与30H做或运算
           CMP DH,39H         ;比较低四位是否小于9
           JBE TWO            ;小于9则跳转,不需要转化为字母的ASCII码
           ADD DH,7           ;运行到此处说明低四位为A-Z,加7转化为对应的ASCII码
    TWO:   MOV DL,DH          ;按ASCII码输出字符
           MOV AH,02H
           INT 21H
           
           MOV DL,BL
           SHR DL,CL          ;将数逻辑右移四位取字节的高四位
           OR DL,30H          ;与30H做或运算
           CMP DL,39H         ;比较高四位是否小于9
           JBE THREE            ;小于9则跳转,不需要转化为字母的ASCII码
           ADD DL,7           ;运行到此处说明高四位为A-Z,加7转化为对应的ASCII码
    THREE: MOV AH,2           ;按ASCII码输出字符
           INT 21H 
           
           MOV DL,BL          ;还原未处理数
           AND DL,0FH         ;将数与0FH做与运算,意求字节的低四位
           OR DL,30H          ;与30H做或运算
           CMP DL,39H         ;比较低四位是否小于9
           JBE FOUR           ;小于9则跳转,不需要转化为字母的ASCII码
           ADD DL,7           ;运行到此处说明低四位为A-Z,加7转化为对应的ASCII码
    FOUR:   MOV AH,2           ;按ASCII码输出字符
           INT 21H
           MOV DL,'H'         ;输出'H'
           MOV AH,2
           INT 21H
           RET                ;子程序返回
    SIXTEEN ENDP
    CODE ENDS
         END START
    
    
    

    在这里插入图片描述


    学如逆水行舟,不进则退;
    心似平原跑马,易放难收。
    希望每天多努力一点!
    小伙伴们看了这个有什么不明白或者发现我写的代码有错可以在下面评论哦,我看到会尽快回复的~大家一起进步

    展开全文
  • 十进制转换八进制、十六进制输出 #include <stdio.h> int main () { int n; printf("请输入一个十进制数:\n"); scanf("%d", &n); printf("它的八进制是:%o\n",n); printf("它的十六进制是:%x\n", ...

    十进制转换八进制、十六进制输出

    #include <stdio.h>
    int main ()
    {
    	int n;
    	printf("请输入一个十进制数:\n");
    	scanf("%d", &n);
    	printf("它的八进制是:%o\n",n);
    	printf("它的十六进制是:%x\n", n);
    	return 0;
    }
    

    在这里插入图片描述

    展开全文
  • 各位大神好 我想把我想把Text13.Text = "AA 01 04 00 04 11 FF 12 99 13 00 14 00 95" 这个十六进制输出 在C#中应该怎么写谢谢
  • float 二进制和十六进制输出

    千次阅读 2016-03-22 21:05:21
    贴一个分别按二进制,十进制,十六进制输出float型数据的代码。思路都是借鉴网上大神的。 ps:为什么在网上看到十六进制输出格式是%X,就是试不出来呢? // ConsoleApplication1.cpp : 定义控制台应用...
  • 十六进制输出 代码示例 #include<iostream> using namespace std; int main(){ int a; scanf("%d",&a); printf("原始数据:%d \n",a); printf("以八进制输出:%o \n",a); printf("以十六...
  • 将一个数据存入AX中,分别以有符号数、二进制、八进制、十六进制的形式输出。(详细解答,仔细分析。)
  • 首先介绍简单的八进制和十六进制输出——只要通过格式控制符就可以了 ~ 八进制:%o #include<iostream> using namespace std; int main() { printf("%o",8); return 0; } 运行结果: 十六进制:%x #...
  • 本文将集中演示C,C++语言的二进制,八进制,十六进制输出的写法。 正文 十进制转十六进制: C++ 版本 -> cout <<"十六进制:"<< hex <<num<<endl; C 版本 -> pr...
  • uint64_t num = 9223354444668731392; printf("%lu\n", num); //十进制输出 printf(“0x%“PRIx64”\n”, num); //十六进制输出 printf(“0x%016lx\n”, num); //十六进制输出 ...
  • 二进制转换成十六进制输出的C代码

    万次阅读 2018-09-20 19:10:47
    我自己试着编写代码,思路是把这个8bit的二进制数存放到一个数组里面,分高4bit和低4bit,分别转换成十进制,然后用switch判断这个十进制,转换成对应十六进制数,例如十进制1对应十六进制1,十进制10对应十六进制A...
  • 对于给定的数字,在输出语句中分别使用%o和%x来输出八进制和十六进制的数字 使用%#o和%#x输出时八进制会带有0,十六进制会带有0x前缀 示例代码如下: #include<stdio.h> int main() { int n;//定义一个数字...
  • 题目描述 我们处理的整数通常用十进制表示,在...请输出十进制整数1234对应的八进制和十六进制。 输入描述: 无 输出描述: 十进制整数1234对应的八进制和十六进制(字母大写),用空格分开,并且要求,在八进制前显示...
  • #include //分别以十进制、八进制和十六进制输出一个字符的ASCII int main() { char n; scanf("%c",&n); printf("十进制为%d\n八进制为%o\n十六进制为%x",n,n,n); return 0; }
  • Sample Input +1A 12 1A -9 -1A -12 1A -AA Sample Output ...//当结果是负数时以(-%llX\n",-s)形式输出 { printf ( "-%llX\n" , - s ) ; s = 0 ; } } return 0 ; }
  • 譬如十六进制变量 m = 4D42,应该如何用printf输出其代表的Ascii字符“BM”,我用的printf("%c",m),只输出第一个字符,printf("%c%c",m)也不行。谢谢!
  • 将一个无符号整形数,转化为十六进制输出
  • 【汇编】求十进制数的补码并转二进制和十六进制输出(多组输入输出,使用宏库文件) 代码如下,有详细注释 Include macro_lib.MAC data segment string db 10,?,10 dup(?) ;用于存放输入的十进制数 这里十进制数在-...
  • C++中二进制,八进制,十进制,十六进制,各种进制花式输出! 涉及到bitset,static_cast的使用
  • 输入一串十进制数,需要判断是否为数字,并将其转化成二进制和十六进制输出。 代码: 二进制: ;description data SEGMENT data ENDS ;description stack SEGMENT stack ENDS ;description code SEGMENT ...
  • JAVA 二、八、十六进制输出

    万次阅读 2018-11-11 11:32:07
    public static void main(String[] args) { ...二进制输出"+Integer.toBinaryString(a)); System.out.println("八进制输出"+Integer.toOctalString(a)); System.out.printf("八进制输出...
  • C语言十进制,八进制,十六进制输出分析

    万次阅读 多人点赞 2015-03-30 21:50:38
    C语言可以使用三种数制表示数字,十进制,八进制,十六进制。 八进制以0开头,十六进制以0X或0x开头,即使你使用%d打印,编译器也会认为你输入的是八进制。 比如我们输入020。 int x=020; printf("%d,%o,%x\n",...
  • c语言double十六进制输出

    千次阅读 2017-03-14 13:18:53
    自己用%x printf输出double类型数据时,只有32位,用sizeof显示是64位的,后来看到6楼的回答,加上I64就可以了 ... printf("%x\n", ch); 其中%x 表示无符号十六进制的整数, 多长取决你的编译系
  • 最近总在用色板取值 ,每次十进制转换十六进制都要再去网上搜个转换工具,索性自己写一个.  使用:以RGB为例每个值用逗号隔开如 255,255,255 输入为#ffffff &lt;!DOCTYPE html&gt; &lt;html lang="...
  • #include #include using namespace std; int main() {  int i;  cout  cin>>i;  cout(i)  cout  return 0; }   二进制 如上 八进制 oct 十进制 dec 十六进制 hex
  • 1-2 整数数制格式化输出 定义整型变量a,并输入一个整数到a,请编写程序分别按十进制,八进制和十六进制输出a的值。
  • c++ 十进制、八进制、十六进制输出

    万次阅读 2013-04-16 10:59:54
    如果要求按八进制或十六进制输入输出,在cin或cout中必须指明相应的数据形式,oct为八进制,hex为十六进制,dec为十进制。 1 int i, j, k, l; 2 cout”Input i(oct), j(hex), k(hex), l(dec):”; 3 cin>>oct...
  • printf十六进制输出64位值的方法

    千次阅读 2019-09-14 20:39:17
    printf("0x%016I64x", int64Value); 0表示空余的位用零填充,16表示显示16位数字(格式化的字符数宽度),I64表示64位int值(I32表示32位int值,i必须大写), x表示十六进制形式显示 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 163,940
精华内容 65,576
关键字:

十六进制输出