package step1; import java.util.Scanner; import java.util.Stack; // Java Stack<E> 类 // 栈是Vector的一个子类,它实现了一个标准的后进先出的栈。 // 栈只定义了默认构造函数,用来创建一个空栈。 栈除了包括由Vector定义的所有方法,也定义了自己的一些方法。 // // boolean empty() 测试堆栈是否为空。 // Object peek( ) 查看堆栈顶部的对象,但不从堆栈中移除它。 // Object pop( ) 移除堆栈顶部的对象,并作为此函数的值返回该对象。 // Object push(Object element) 把项压入堆栈顶部。 // int search(Object element) 返回对象在堆栈中的位置,以 1 为基数。 public class Dex2Oct { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); dex2oct(n); } public static void dex2oct(int n){ //******* begin ********** //******* end ********** } }补充代码
时间: 2023-07-23 07:35:31 浏览: 104
Java面经-百度准入职老哥整理.pdf
好的,以下是利用栈实现整数的十进制转八进制的Java代码,你可以将其添加到 `//******* begin **********` 和 `//******* end **********` 之间:
```java
public static void dex2oct(int n){
Stack<Integer> stack = new Stack<Integer>();
while(n > 0) {
int remainder = n % 8;
stack.push(remainder);
n /= 8;
}
while(!stack.isEmpty()) {
System.out.print(stack.pop());
}
}
```
输入一个十进制整数,将其除以8取余数,并将余数入栈,直到商为0。最后,依次弹出栈中元素,即可得到该整数的八进制表示。
阅读全文