您的位置:首页 > 其它

【风马一族_C】进制转化

2015-12-04 10:51 253 查看
#include "stdio.h"
#include "Math.h"
#define number 50 //设置数组的长度

int num10; //十进制的数值
int num5; //2~9间的值
int num[number],top=-1;    //顺序栈

char ch;

int conversion(){
printf("\n请输入数字(默认为十进制):");
scanf("%d",&num10); printf("\n你需要转化成(2~9)进制数中的哪个,请输入:");
scanf("%d",&num5);

if(num5>1&&num5<10) {
while(num10!=0){
num[++top]=num10%num5;
num10/=num5;
}

for(int i=top; i>-1; i--)
printf("%d",num[i]);
}else
printf("你输入转化进制的值,不是2~9");

printf("\n你是否想继续使用,请按(y||非y)\n");
scanf("%s",&ch);

if(ch=='y'||ch=='Y')
conversion();
else
return 0;
}

main(){
printf("************************************************\n");
printf("* 欢 迎 来 到 风 马 一 族 *\n");
printf("* 百 度 搜 索 :风马一族 就可以找到我 *\n");
printf("************************************************\n");
printf("* 这是进制转化工具,十进制数转化成(2~9)进制数 *\n");
printf("************************************************\n");

conversion(); //调用函数

46      /*******这里只给开发者 当测试用****************
//验证结果
  int sun=0;    //验证结果

  for(int i=top; i>-1; i--){
sun+=num[i]*pow(num5,i);
printf("%d\t",i);
}

if(sum==num10)
printf("\n进制反转回去,验证结果=%d\n",sun);
else
printf("\n结果有误");

***********************************************/
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: