C语言简单实现进制互相转换

来源:互联网 发布:人工智能产业园区 编辑:程序博客网 时间:2024/04/30 01:32
/*日期:2012年11月11日时间:01:35    作者:android88@qq.com博客:http://blog.csdn.net/java886o    目的:测试printf()以及scanf()的用法功能:进制转换工具类,实现10进制8进制16进制2进制之间的转换 */#include <stdio.h>#include <stdlib.h>void main(){rescanf:system("cls");char result[128];   //存储转换后的结果printf("欢迎使用进制转换工具\n\n");printf("[1] 10------>------2\n");printf("[2] 10------>------8\n");printf("[3] 10------>------16\n");printf("[4] 16------>------2\n");printf("[5] 16------>------8\n");printf("[6] 16------>------10\n");printf("[7]  8------>------2\n");printf("[8]  8------>------10\n");printf("[9]  8------>------16\n");int type,scanNumber;printf("\n请输入序号:");scanf("%d",&type);switch(type) {case 1:printf("\n【10进制转2进制】:");scanf("%d",&scanNumber);itoa(scanNumber,result,2);printf("\n【结果】【%s】",result);break;case 2:printf("\n【10进制转8进制】:");scanf("%d",&scanNumber);itoa(scanNumber,result,8);printf("\n【结果】【%s】",result);break;case 3:printf("\n【10进制转16进制】:");scanf("%d",&scanNumber);itoa(scanNumber,result,16);printf("\n【结果】【0x%s】",result);break;case 4:printf("\n【16进制转2进制】:");scanf("%x",&scanNumber);itoa(scanNumber,result,2);printf("\n【结果】【%s】",result);break;case 5:printf("\n【16进制转8进制】:");scanf("%x",&scanNumber);itoa(scanNumber,result,8);printf("\n【结果】【%s】",result);break;case 6:printf("\n【16进制转10进制】:");scanf("%x",&scanNumber);itoa(scanNumber,result,10);printf("\n【结果】【%s】",result);break;case 7:printf("\n【8进制转2进制】:");scanf("%o",&scanNumber);itoa(scanNumber,result,2);printf("\n【结果】【%s】",result);break;case 8:printf("\n【8进制转10进制】:");scanf("%o",&scanNumber);itoa(scanNumber,result,10);printf("\n【结果】【%s】",result);break;case 9:printf("\n【8进制转16进制】请输入需要转换的数:");scanf("%o",&scanNumber);itoa(scanNumber,result,16);printf("\n【结果】【0x%s】",result);break;default:goto rescanf;break;}printf("\n\n\n");system("pause");goto rescanf;}

原创粉丝点击