C++,编写一个递归函数,将任意的十进制正整数转换为八进制数

编写一个递归函数,将任意的十进制正整数转换为八进制数,要求用C++语言,递归函数

c++

3个回答

#include
#include
using namespace std;

void Function( int number, string& result )
{
int replace = number;
int value = number % 8;
char ch[ 10 ];
sprintf( ch, "%d", value );
result += ch;
replace /= 8;
if( replace <= 0 )
{
return ;
}
Function( replace, result );
}

void main()
{
int x = 10;
string result;
Function( 10, result );
int index = result.size();
stringstream sstream;
while( index > 0 )
{
string ret;
auto obj = result.substr( index - 1, 1 );
index -= 1;
sstream << obj;
}
string ret;
sstream >> ret;
cout << ret.c_str() << endl;
system( "pause" );
}

希望能帮到你。。。。。

#include
#include

using namespace std;

int octal(int val)
{
if (val < 8)
return val;
else
return octal(val/8)*10 + val%8;
}

int main(int argc, char ** argv)
{
if (argc != 2) {
cout << "must input number." << std::endl;
return -1;
}
cout << "octal : " << octal(atoi(argv[1])) << std::endl;
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C++,编写一个递归函数,将任意的十进制正整数转换为八进制数
编写一个递归函数,将任意的十进制正整数转换为八进制数,要求用C++语言,递归函数
编写一个递归函数,将任意的十进制正整数转换为八进制数(不要用C语言,没学过,用C++)
编写一个递归函数,将任意的十进制正整数转换为八进制数(不要用C语言,没学过,用C++)
十进制转换为八进制
十进制转换为八进制的源代码,数据结构中用栈实现的
将八进制正整数转换为十进制的字符串填空题。
将八进制正整数转换为十进制的字符串。例如,输入十进制的字符串为:“556”,则输出八进制整数366.rn#includernusing namespace std;rnint main()rnrnchar *p,a[10]="556";rnint n = 0;rnp = a;rnwhile(*p!=___1___)rnrn n =n*8+(___2___);rn____3____;rnrncout << n<< endl;rnreturn 0;rnrn该怎么填空
十进制转八进制数
  编写函数,其功能为把一个十进制数转换为其对应的八进制数。程序读入一个十进制数,调用该函数实现数制转换后,输出对应的八进制数。 样例输入 9274 样例输出 22072 样例输入 18 样例输出 22 样例输入 9274 样例输出 22072 样例输入 18 样例输出 22   import java.util.Scanner;   public cla...
将十进制转换为二进制、八进制、十六进制
将十进制转换为其它进制时比较复杂,整数部分和小数部分的算法不一样,下面我们分别讲解。 整数部分 十进制整数转换为 N 进制整数采用“除 N 取余,逆序排列”法。具体做法是: 将 N 作为除数,用十进制整数除以 N,可以得到一个商和余数; 保留余数,用商继续除以 N,又得到一个新的商和余数; 仍然保留余数,用商继续除以 N,还会得到一个新的商和余数; …… 如此反复进行,每次都保留余数,用商接着除...
算法:十进制转换为八进制
将十进制数转换为八进制,并输出。 图:将十进制数转换为八进制并输出 Input 输入包含若干十进制正整数。 Output 输出相应的八进制数,每个占一行。 Sample Input 1 2 3 7 8 9 19 10020345 Sample Output 1 2 3 7 10 11 23 46162771 总结: 1、数值转换可以使用到堆栈,但是用函数调用(系统的堆栈)将会更为方便。 2、书中...
C语言编程之八进制转换为十进制
问题描述:使用C语言编程实现八进制转换为十进制。 程序源码: #include&amp;lt;stdio.h&amp;gt; void main() { char *p,s[6];int n; p=s; gets(p); n=0; while(*(p)!='\0') {n=n*8+*p-'0'; p++;} printf(&quot;%d&quot;,n); } ...
十进制转八进制.c
#include &amp;lt;stdio.h&amp;gt; void fun(int m) { if (m == 0) return; int temp = m % 8; fun(m /= 8); printf(&quot;%d&quot;, temp); } int main() { printf(&quot;请输入十进制数:&quot;); int a; scanf(&quot;%d&quot;, &amp;amp;a); fu...
汇编语言十进制转换为八进制
用汇编语言编写的十进制转换为八进制的代码。
十进制数转换为八进制数
该资源是用于将十进制数转换为八进制数的程序,编程语言为c#,程序简单易懂,便于实用。
八进制数转换为二进制数
这个是个c的小程序,适合初学者。内容是将一个八进制的数转换成二进制的数。
十六进制数转换为十进制-c语言
#include #include int pow(int a,int b); int main(int argc,char *argv[]) { if(argc!=2) { printf("usage:hextoint hex\n"); return -1; } int len = 0; int num = 0;
十进制数转换为八进制数/十六进制数
十进制转换为其他进制有一个基本公式:N = (N div d)*d + N mod d(其中:div 是整除,mod 为求余,N 是十进制数,d 是要目标进制)。 例如:(1348)10 = (2504)8,运算过程如下: N N div 8 N mod 8 1348 168 4 168 21 0 21 2 5 2 0
用C#实现十进制转换为八进制
用C#实现十进制转换为八进制
如何将八进制转换为二进制、十进制、十六进制
1.八进制 –> 二进制 我这里采用了一种简单又高效的办法. 先把000 - 111 的二进制用二维数组存起来. 例如:八进制25–> 5对应101 2对应010 这时候只要把八进制分解为一位一位的,然后在数组中找对应的二进制即可,无论多大的八进制数,都可以很快的分解并找到对应的二进制数. char a[9][5] = { "000 ","001 ","010 ","011 ","100
十进制的数转换为十六进制
什么函数或是方法可以将十进制的数转换为十六进制?
用栈实现十进制转换为八进制
用数据结构中的栈实现十进制转换成八进制,
vfp中有将十进制转换为八进制,十进制转换为十六进制的函数吗?
如标题,谢谢!
十进制???转换为十六进制数
Private Sub Command1_Click()      Me.Font.Size = 50 Print shiliujinzhi(4545) End Sub Private Function shiliujinzhi(m As Integer)As String Dim n As Integer n = m Const shiliu As Byte = 16 D
如何将二进制转换为八进制、十进制、十六进制
值得注意的是,存放二进制的数组最后一位才是二进制的第一位,例如:char bin[5]=”1100”,那么bin[3] 才是二进制的第一位.1.二进制–>八进制 二进制转换为八进制是非常简单的,因为每三个二进制就是一位八进制.如果不足三位二进制则补0. 例如: 10101 –>010 101 –>25 1101 –> 001 101 –> 15 思路有了,接下来就是把思路转
java十进制转换为二进制、八进制和十六进制
/* * 十进制--->二进制 */ public static void toBin1(int num){ trans(num, 1, 1); } /* * 十进制--->八进制 */ public static void toBa(int num){ trans(num, 7, 3); } /* * 十进制--->十六进制 */ public static voi
十进制转换为八进制、十六进制、十进制数输出
Description 输入一个十进制数,转换为对应的八进制、十六进制、十进制数输出 Input 输入一个十进制数 Output 输出该十进制数对应的八进制、十六进制、十进制数 Sample Input 10 Sample Output oct:12 hex:a dec:10 HINT 使用输出格式控制符  dec    oct    he
栈-十进制整数转换为八进制
十进制数N和其他d进制数的转换是计算机实现计算的基本问题。有一个简单算法基于下列原理: N=(N div d) * d + N mod d (div为整除运算,mod为求余运算) 输入:任意一个非负十进制整数. 输出:与其等值的八进制数。 运行结果: 由于上述计算过程是从低位待高位孙旭产生八进制数的各个数位,而打印输出,一般来说应该从高位到低位进行,恰好和计算过程相反。因此,若将计算...
十进制转换为八进制或十六进制
》十进制转换为八进制        #间接转换:先将十进制转换成二进制,然后在由二进制转换成八进制。        #将十进制数除以8取余,直到商为0或1时停止,然后把余数倒序排列。        示   例:将十进制数50转换成八进制数        将余数倒序排列后,即十进制数50为转换后的八进制数062,注,也可以写成62。 》十进制转换为十六进制
USTC机试—十进制转换为八进制
//十进制转为八进制 #include&amp;lt;stdio.h&amp;gt; #define N 100 int a[N]; int main(){ int n; while(scanf(&quot;%d&quot;,&amp;amp;n)!=EOF){ int count=0;//计算转换后的八进制位数 int *p=a;//保存转换完成的数字 while(n/8){ *p=n/8; n%...
十进制转换为八进制(c++/栈的基本操作)
#include&amp;lt;iostream&amp;gt; #define MaxSize 100 #define OK 1 #define ERROR 0 //进制转换栈的操作 using namespace std; typedef int ElemType; typedef int Status; typedef struct StackNode { ElemType data; struct...
如何将十进制转换为二进制、八进制、十六进制
三个的方法都一样,就是求余,不过最后要记得把数组反转过来。1.十进制 –> 二进制void DecToBin(long long dec, char* bin) { int i = 0, j = 0, k = 0, space = 0; char a[3] = "01"; char temp[100] = " "; do { temp[i++]
十进制转换为二进制、八进制、十六进制(JAVA)
public class Test { final static char[] digits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r...
32位系统将十进制转换为二进制和八进制。
问题1:将十进制转换为二进制。 例:输入十进制5 输出二进制0000 0000 0000 0000 0000 0000 0000 0101 问题2:将十进制转换为八进制。 例:输入十进制5 输出八进制0x00000005
十进制转八进制问题
数制转换问题,十进制转八进制,十进制转N进制问题
进制转换——八进制转十进制
八进制转十进制#include&amp;lt;stdio.h&amp;gt;int main(){char a[1000];int i,t=0;long sum=0;printf(&quot;请输入一个八进制的数:\n&quot;);scanf(&quot;%s&quot;,a);for(i=0;a[i];++i){t=a[i]-'0';sum=sum*8+t;}printf(&quot;%ld&quot;,sum);return 0;}程序运行结果:请输入一个八进制的数...
八进制转十进制(字符串)
帮学姐做笔试题遇到的,接口convert(const char* src, char* dst),上代码 #include #include #include using namespace std; string CHAR_ADD_CHAR(string str1, string str2) {//高精度加法 string str; //把两个整数对齐,短整数前
十进制转八进制
#include int main() {     int n;     printf ("n = ");     scanf ("%d", &n);           int b[100] = {0};     int i = 0;          while (n)     {         b[i++] = n % 8;         n = n /
八进制转十进制的问题
[code=C/C++]rn#include rn#include rn/***rn八进制转十进制rn*****/rnint main()rnrn char s[6],*p = s;rn int n;rn gets(p);rn n = *p - '0';rn while(* ++p != '0')rn n = n * 8 + *p -'0';rn printf("%d\n",n);rn return 0;rnrnrnrn[/code]rnrn请问这个程序的原理是什么 ?rnn = *p - '0'; 是什么意思?rn最后结果得到的是最高位。。。rnrnrn
十进制转八进制的代码
#include using namespace std; void Shu(long long num=0) {     if(num>7)         Shu(num/8);     cout } int main() {     long long num=0;     while(cin>>num)         Shu(num);     return 0
八进制转十进制
请问在VB中写一个过程如何将八进制数转十进制数?
急:十进制转八进制
用C语言把输入的十进制字符串366转化成八进制字符串输出的程序改怎么写?rn请各位大侠指教!
将十进制转换成八进制
#include  int main() { int n;         int a[12]={0};                                                           //必须初始化,不然输出乱码 printf("please input number\n"); scanf("%d",&n);                    
用栈十进制转换为八进制(c语言)
用栈实现十进制转八进制。用链表实现的栈。
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件

相似问题