数据结构(C语言)——2栈:数制转换

这篇博客分享了一个简单的C语言程序,用于将十进制数字转换为八进制。通过使用栈的数据结构,实现了从高位到低位的转换。程序读取输入的十进制数,通过不断取模和除以8来构建八进制表示,并以栈的FILO特性正确地输出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

趁着复习把课上的作业和代码上传上来嘿嘿嘿,这个系列的代码都是自己写的或者老师教学用的可能内存管理上有点小瑕疵,但是算法理解还是不错的!本系列所有代码在dev-cpp上可以跑通~

描述:

给你一个十进制的数字,转换成八进制。

思路:

和C语言的东西一样把,疯狂取模,然后\就可以做到了,当时的问题是他会反过来,但现在有栈FILO的性质就刚好对应上了。

代码:

#include<stdio.h>
int main(){
	int n;
	int stack[100];
	int top=0;
	scanf("%d",&n);
	int t=n;
	if(t==0){
		stack[top++]=0;
	}
	while(t!=0){
		stack[top++]=t%8;
		//printf("%d\n",stack[top-1]);
		t/=8;
	}
	while(top){
		printf("%d",stack[--top]);
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值