当前位置 : 主页 > 网络编程 > 其它编程 >

HNCU1330:算法3-1:八进制数

来源:互联网 收集:自由互联 发布时间:2023-07-02
题目描述将十进制数转换为八进制,并输出。图:将十进制数转换为八进制并输出输入输入包含若干十进制正整数。输出输出相应的八进制数,每个占一行。样 题目描述 将十进制数转换
题目描述将十进制数转换为八进制,并输出。图:将十进制数转换为八进制并输出输入输入包含若干十进制正整数。输出输出相应的八进制数,每个占一行。样

题目描述 将十进制数转换为八进制,并输出。 这里写图片描述 图:将十进制数转换为八进制并输出 输入 输入包含若干十进制正整数。

输出 输出相应的八进制数,每个占一行。

样例输入 1 2 3 7 8 9 19 10020345 样例输出 1 2 3 7 10 11 23 46162771

栈的简单应用

#include#include#define STACK_INIT_SIZE 100#define STACKINCREMENT 10#define OVERFLOW 0#define OK 1#define ERROR 0typedef int SElemType;typedef int Status;typedef struct { SElemType *base; SElemType *top; int stacksize;}SqStack; Status InitStack(SqStack *p)//构造一个空栈p { p->base = (SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType)); if(!p->base ) exit(OVERFLOW); p->top = p->base; p->stacksize = STACK_INIT_SIZE; return OK;}Status Push(int e,SqStack *p)//插入e为栈的新元素 { SElemType *newbase; if((p->top -p->base) >= p->stacksize ) { newbase = (SElemType*)realloc(p->base,(STACKINCREMENT+p->stacksize )*sizeof(SElemType)); if(!newbase) exit(OVERFLOW); p->base = newbase; p->stacksize += STACKINCREMENT; } *(p->top)++ = e; return OK;}Status StackEmpty(SqStack *p)//若栈为空栈,则返回OK,否则返回ERROR { if(p->base == p->top ) return OK; return ERROR;}Status Pop(SqStack *p,int *n)//若栈不为空,则删除栈顶元素,用*n返回其值 { if(p->base == p->top ) return ERROR; *n = *(--p->top); return OK;}void Conversion(int n,SqStack *p)//对于任意输入的一个非负十进制整数,打印输出与其等值的八进制数 { int e; InitStack(p); while(n) { Push(n%8,p); n/=8; } while(!StackEmpty(p)) { Pop(p, printf("%d",e); } printf("\n");}int main(){ int n; SqStack p; while(scanf("%d", } return 0;}【感谢龙石数据资产管理和维护 http://www.longshidata.com/pages/government.html】
上一篇:有意思的工具收集
下一篇:没有了
网友评论