蓝桥杯 进制转换
问题描述
编写函数将十进制整数按8进制输出,然后编写main函数验证该函数。例如输入12,则输出为:12=014,输入32,则输出32=040。
输入格式
输入一个整数。
输出格式
输出这个整数的八进制形式。
方法
使用除基取余法。利用数组,将每次除基取的余数保存在数组中,注意最后数据输出的数组下标。
#include <stdio.h>
void Convert(int n);
int main()
{
int n;
scanf("%d",&n);
Convert(n);
return 0;
}
//将十进制整数数转化为八进制数
void Convert(int n)
{
int a[100],j;
int i=0;
while(n!=0)
{
a[i]=n%8; //将每次除8后所取得的余数保存在数组中
n=n/8;
i++;
}
a[i]=0;
for(j=i;j>=0;j--)
{
printf("%d",a[j]); //最后输出一定要注意数组的下标顺序
}
}
若代码有错误的地方或是其他代码,请各位指教。