C语言基础编程之进制转化
2017-07-16 20:38
239 查看
#include<stdio.h> int main() { int num,i,j,sys; char a[100]; printf("please input a system 2 to 9 or 16 that you want:");//输入你想转化的进制。 scanf("%d",&sys); printf("please a number:");//输入你想转化的数。 scanf("%d",&num); if(2 < sys && sys < 9 || sys == 16) //判断你输入的进制是否符合要求 { for(i = 0;;i++) { a[i] = num % sys; //对你想转化的数取余 if(a[i] == 10) //将大于10的数用英文字母来表示。 { a[i] = 'A'; } if(a[i] == 11) { a[i] = 'B'; } if(a[i] == 12) { a[i] = 'C'; } if(a[i] == 13) { a[i] = 'D'; } if(a[i] == 14) { a[i] = 'E'; } if(a[i] == 15) { a[i] = 'F'; } num = num / sys; //取余以后再对它求商。 if(num == 0) //商等于0退出循环。 break; } } else { printf("The input you enter is wrong!\n "); exit(0); } printf("character string puout result:"); for(i;0 <= i ;i-- ) //输出结果 { if(a[i] >='A' && a[i] <= 'F') { printf("%c",a[i]); } else printf("%d",a[i]); } printf("\n"); return 0; } 总结:进制的转化关键在于你要知道十进制和各个进制之间是怎样转化的。你输入的十进制数对你想转化的进制数取余数,然后再用商再取余数,直到商为0。然后再把余数用逆序的方法把它结合起来,就是你要求的结果了
相关文章推荐
- C语言基础(八)- 进制转化、计算机补码、位运算符
- C++语言基础 例程 范型编程简介
- 20161211C语言基础02_编程概述
- 【编程思想】思想与语言基础孰重孰轻?
- R语言基础编程技巧汇编 - 24
- R语言基础编程技巧汇编-前言
- C语言基础—进制 基本数据类型的存储 位运算
- Go语言基础学习九-过程式编程一
- 编程就像写作文,语言是基础,构思是关键
- JavaScript:世界上误解最深的语言-Java基础-Java-编程开发
- C语言编程基础,手机购物程序的设计
- Linux系统下C语言编程基础知识介绍
- c#基础语言编程-装箱和拆箱
- 活学Linux下C语言编程基础知识-----杂乱
- C/C++笔试题-主要考察C/C++语言基础概念、算法及编程
- MSDN-C#编程指南-笔记-(二)-C#语言基础
- java语言基础(5)——进制,进制转换以及不同进制的数据的书写方式
- 编程基础—学习C语言基础的总结
- 一 基础--进制转化
- C语言基础编程之指针实现字符位置查找