您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页C语言 十六进制转二进制(只能正数)

C语言 十六进制转二进制(只能正数)

来源:化拓教育网

整数部分

#include  <stdio.h>    
#include  <string.h>

void main(void)
{
    char ch, s[32] ;    
    int flag = 0 ;    
    printf("请输入一个16进制正整数:\n") ;
    while((ch=getchar())!='\n')    
    {        
        switch(ch)        
        {            
            case '0' :  strcat(s, "0000") ;  break ;            
            case '1' :  strcat(s, "0001") ;  break ;            
            case '2' :  strcat(s, "0010") ;  break ;            
            case '3' :  strcat(s, "0011") ;  break ;            
            case '4' :  strcat(s, "0100") ;  break ;            
            case '5' :  strcat(s, "0101") ;  break ;            
            case '6' :  strcat(s, "0110") ;  break ;            
            case '7' :  strcat(s, "0111") ;  break ;            
            case '8' :  strcat(s, "1000") ;  break ;            
            case '9' :  strcat(s, "1001") ;  break ;
            case 'a' :            
            case 'A' :  strcat(s, "1010") ;  break ;
            case 'b' :            
            case 'B' :  strcat(s, "1011") ;  break ;
            case 'c' :            
            case 'C' :  strcat(s, "1100") ;  break ;
            case 'd' :            
            case 'D' :  strcat(s, "1101") ;  break ;
            case 'e' :            
            case 'E' :  strcat(s, "1110") ;  break ;
            case 'f' :            
            case 'F' :  strcat(s, "1111") ;  break ;            
            default  :  flag = 1 ;	   
        }    
    }    
    if (flag == 0)    
    for (int i = 0 ; s[i] != '\0' ; i++)    
    {        
        if (s[i] == '1')        
        {            
            for (int j = i ; s[j] != '\0' ; j++)            
            printf("%c", s[j]) ;            
            break ;        
        }    
    }   
 /*或
	int i=0;	
	while(s[i]=='0')
		i++;	
	puts(s+i);		
	                  */ 
    else    
    printf("输入无效") ;
}   

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务