c语言输入一个非负整数,输出它的八进制,十进制以及十六进制数
时间: 2024-09-20 11:16:46 浏览: 353
将非负十进制整数转化为八进制
5星 · 资源好评率100%
在C语言中,你可以通过标准库函数`scanf`来获取用户输入的非负整数,然后利用内建的转换函数将这个数字转换成八进制、十进制和十六进制形式。这里是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个非负整数: ");
// 读取用户的输入
if (scanf("%d", &num) != 1 || num < 0) {
printf("输入错误! 数字必须是非负整数.\n");
return 1;
}
// 输出八进制、十进制和十六进制
printf("八进制: %o\n", num);
printf("十进制: %d\n", num);
printf("十六进制: %x\n", num);
return 0;
}
```
在这个程序中,`%o`用于输出八进制,`%d`用于输出十进制,`%x`用于输出十六进制。如果用户输入的不是一个非负整数,`scanf`会失败并返回小于1的值,这时我们会给出错误提示。
阅读全文