HNCU1330 演算法3 1 八進位制數

2021-06-16 16:32:51 字數 1183 閱讀 2701

將十進位制數轉換為八進位制,並輸出。

圖:將十進位制數轉換為八進位制並輸出

輸入包含若干十進位制正整數。

輸出相應的八進位制數,每個佔一行。 12

3789

191002034512

371011

2346162771

#include#include#include/* malloc()等 */

#include/* int_max等 */

#include/* eof(=^z或f6),null */

#include/* atoi() */

#include/* floor(),ceil(),abs() */

/* 函式結果狀態** */

#define true 1

#define false 0

#define ok 1

#define error 0

#define infeasible -1

typedef int status; /* status是函式的型別,其值是函式結果狀態**,如ok等 */

typedef int boolean; /* boolean是布林型別,其值是true或false */

#define stack_init_size 10 /* 儲存空間初始分配量 */

#define stackincrement 2 /* 儲存空間分配增量 */

typedef int selemtype; /* 定義棧元素型別為整型 */

typedef struct sqstack

sqstack; /* 順序棧 */

status initstack(sqstack *s)

status push(sqstack *s,selemtype e)

*((*s).top)++=e;

return ok;

}status pop(sqstack *s,selemtype *e)

status stackempty(sqstack s)

void conversion(int n) /* 演算法3.1 */

while(!stackempty(s)) /* 當棧不空 */

printf("\n");

}int main()

return 0;

}

演算法3 1 八進位制數(進製轉換)

在c語言中,我們學過如何控制八進位制,六進製制格式化輸出。int x cin x printf d,o,x n x,x,x 所以這個題目我們可以直接格式化輸出,但是我們在學習資料結構的過程中,我們理解到真正的進製轉化是取餘後反轉。所以我們可以得到 include using namespace st...

十六進製制轉八進位制演算法

兩種解法 都需要中轉一次 第一種 十六轉十,十轉八.由於執行多次迴圈,當資料很大時,超時.include includeusing namespace std long long lc int a,int n 10 8 int a 10 int l sum int i 0 while l for i...

八進位制與十六進製制的演算法

除了二進位制,程式設計中也經常使用八進位制和十六進製制。八進位制有0 7共8個數字,基數為8,逢八進一,借一當八 十六進製制中,用a來表示10,b表示11,c表示12,d表示13,e表示14,f表示15,因此有0 f共16個數字,基數為16,逢16進1,借1當16。例如 二進位制 八進位制 十進位制...