递归和while循环实现十进制转八进制
来源:互联网 发布:业务数据运维管理规范 编辑:程序博客网 时间:2024/06/05 11:21
代码一(运行正确)
#include<stdio.h>#include<stdlib.h>//递归实现10进制转2进制 void fun(int n){int count=0;if(n==0){return ;}else{fun(n/8);printf("%d",n%8);}}//非递归实现呢?while循环实现十进制转二进制void While(int n){printf("\nwhile实现十进制转八进制:\n"); int a[32];int p,q;//p代表余数变量,q代表 取得多少位余数 int i=0;while(n){p=n%8;//取余数a[i]=p;//依次把取得的余数保存在数组a中 n/=8;//除2 i++; //数组下标加1 q++;//统计存了多少位在数组中,但会儿会倒序输出数组的值从而得到10进制对应的2进制 }for(i=q-1;i>=0;i--){printf("%d",a[i]);//倒序输出 }printf("\n");} int main(){int n;scanf("%d",&n);printf("递归实现十进制转八进制:\n");fun(n); //似乎两次调用函数之间不能有换行???why??? //printf("\nwhile实现十进制转二进制:\n"); While(n);return 0;}
代码二(运行错误,不知为何)
#include<stdio.h>#include<stdlib.h>//递归实现 void fun(int n){if(n==0){return;}else{fun(n/8);printf("%d",n%8);}}//While循环实现十进制转八进制void While(int n){printf("\nwhile实现十进制转八进制:\n");int a[32];int p,q;//p代表余数变量,q代表 取得多少位余数 int i=0;while(n){p=n%8;//取余a[i]=p;//把余数存到数组中n/=8;//切记要除以8.不然运行时就没提示任何反应了 i++;//数组下标自增 q++;//统计多少个余数,待会儿逆序输出 }for(i=q-1;i>=0;i--){printf("%d",a[i]);}printf("\n"); } int main(){int n;scanf("%d",&n);printf("递归实现十进制转二进制:\n");//fun(n);While(n);return 0;}
0 0
- 递归和while循环实现十进制转八进制
- 用递归函数实现十进制转八进制
- 栈实现十进制转八进制
- 十进制转八进制(递归版)
- 递归与while实现求十进制转二进制
- 十进制转二进制-使用do while 、while 、for循环实现-C描述
- C语言实现十进制转八进制
- C++实现十进制转八进制(百练OJ:2734:十进制到八进制)
- 递归与while循环实现求n!
- 十进制转八进制
- 八进制转十进制
- 十进制转八进制
- 十进制转八进制
- 十进制转八进制
- 十进制转八进制
- 1011十进制转八进制
- python 十进制转八进制
- 十进制转八进制
- 基于海思开发板进行OPENCV交叉编译时的问题
- 从零开始学swift(零)-前言
- Mybatis学习笔记
- JS,Jquery获取各种屏幕的宽度和高度
- 阿里云OSSC安装步骤
- 递归和while循环实现十进制转八进制
- 老板做啥的
- structs2的web.xml和struct.xml两个配置文件的配置
- 原码、补码和反码
- 输入子系统(一)
- DDRMC 系列总结(1) //有待丰富
- jdk1.6的版本与下载地址
- eclipse下用xfire开发web service
- Junit 4 和 TestNG对比