#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int tentotwo();在这里插入代码片
int tentoeight();
int twototen();
int eighttoten();
void menu();
void main()
{
int choice;
while(1)
{
menu();
printf(“Please choose(0-4): \n”);
scanf("%d",&choice);
switch(choice)
{ case 0: exit(0); //退出
case 1: tentotwo(); break; //十进制-> 二进制
case 2: tentoeight(); break; //十进制-> 八进制
case 3: twototen(); break; //二进制-> 十进制
case 4: eighttoten(); break; //八进制-> 十进制
}
}
}
//十进制-> 二进制
int tentotwo()
{ int num,m, c, i = 0;
int n = 2;
int a[32];
printf(“输入一个十进制数:”);
scanf("%d", &num);
m = num;
while (num>0)
{
c = (num % n);
a[i] = c;
num = num / n;
i++;
}
printf(“转换成二进制数是:”, m);
for (i–; i >= 0; i–) //将数组倒序输出
printf("%d", a[i]);
printf("\n");
return 0;
}
//八进制->十进制
int eighttoten()
{ int n;
int sum = 0, i = 0, m;
printf(“输入一个八进制数: “);
scanf(”%d”, &n);
while (n != 0)
{
m = n % 10;
n /= 10;
sum += m*pow(8, i);
++i;
}
printf(“转换成十进制数是:%d”,sum);
return 0;
}
//十进制-> 八进制
int tentoeight()
{
int num, m, c, i = 0;
int n = 8;
int a[32];
printf(“输入一个十进制数:”);
scanf("%d", &num);
m = num;
while (num>0)
{
c = (num % n);
a[i] = c;
num = num / n;
i++;
}
printf(“转换成八进制数是:”);
for (i–; i >= 0; i–) //将数组倒序输出
printf("%d", a[i]);
printf("\n");
return 0;
}
//二进制-> 十进制
int twototen()
{ long n;
int sum = 0, i = 0, m;
printf(“输入一个二进制数: “);
scanf(”%lld”, &n);
while (n != 0)
{
m = n % 10;
n /= 10;
sum += m*pow(2, i);
++i;
}
printf("转换成十进制数是:%d",sum);
return 0;
}
//菜单
void menu(){
printf("\n\n\n");
printf(“二、八、十进制之间的转换\n”);
printf("\n");
printf(" 1.十进制-> 二进制\n");
printf(" 2.十进制-> 八进制 \n");
printf(" 3.二进制-> 十进制\n");
printf(" 4.八进制-> 十进制\n");
printf(" 0.退出\n");
printf("\n");
printf("****************************************************************\n");
}
在这里插入代码片