原题链接:二级C语言-进制转换
解题思路:思路在程序后面
注意事项:
参考代码:
#include
#include
int main()
{
int a,b,i,j,c,sum;
sum=0;
scanf("%d",&a);//输入一个十进制的数字
for(i=0;a!=0;i++)//这里做一个循环,当a等于0的时候,循环结束,每次循环中,a就是a除以8的数
{//先将i设置成0,是后面算i次方时不用减1,直接使用i的值即可
j=a%8;//j代表a除以8的余数
a=a/8;//这里可以不停的改变a的值
b=j*pow(10,i);//第几次循环就将j乘10的第i次方,这是十进制转换成八进制的公式
sum=sum+b;//这里将每一次循环所得到的b的值加在一起
}
printf("%d",sum);//输出所得到的八进制的数
return 0;
}
0.0分
9 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复