输入一个整数n(33<=n<=126),请依次按字符、十进制、八进制、十六进制(字母按大写形式输出)格式输出该变量的值。 输入格式 一个整数n(33<=n<=126) 输出格式 四行,分别对应整数n按字符、十进制、八进制、十六进制(字母按大写形式输出)格式输出的结果使用C
时间: 2024-10-12 21:15:45 浏览: 69
C++实现十六进制字符串转换为十进制整数的方法
你可以使用C语言的`printf`函数和格式化字符串来实现这个功能。这里是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int n;
// 从用户输入获取整数
printf("请输入一个整数 (33 <= n <= 126): ");
scanf("%d", &n);
// 检查输入是否在范围内
if (n < 33 || n > 126) {
printf("输入错误! 数字应介于33到126之间.\n");
return 0;
}
// 字符串表示
char str_char[5] = {n}, *str_ptr = str_char;
printf("字符形式: %s\n", str_ptr);
// 十进制输出
printf("十进制: %d\n", n);
// 八进制输出
printf("八进制: %o\n", n);
// 十六进制输出
printf("十六进制: %X\n", n);
return 0;
}
```
在这个程序中,我们首先读取用户的输入,然后检查它是否满足条件。接着,我们将数字转换成字符串并打印出来。最后,通过格式化字符串`%o`和`%X`,分别输出八进制和十六进制数值。
注意:由于ASCII码表,数字33到126对应的字符都是非空格的可打印字符。如果输入的数字不在这个范围,可能会导致不可见字符的输出。
阅读全文