微机:分支程序设计从键盘输入一个十进制正整数 N(10≤N≤99),将其转换成为十六进制数,转换的结果显示在屏幕上。(键盘输入的内容都是 ASCII 的形式)
时间: 2023-09-16 13:05:12 浏览: 177
### 回答1:
下面是一份 C 语言的代码示例:
``` c
#include <stdio.h>
int main() {
int n;
printf("请输入一个十进制正整数(10~99):\n");
scanf("%d", &n);
int quotient = n / 16;
int remainder = n % 16;
char hex[2];
if (remainder < 10) {
hex[1] = remainder + '0';
} else {
hex[1] = remainder - 10 + 'A';
}
if (quotient < 10) {
hex[0] = quotient + '0';
} else {
hex[0] = quotient - 10 + 'A';
}
printf("转换结果为:%c%c\n", hex[0], hex[1]);
return 0;
}
```
该程序首先从键盘读入一个十进制正整数,然后将其除以 16,得到商和余数。接下来,根据余数计算出它在十六进制下的表示,然后再根据商和余数拼接出完整的十六进制数,并将其打印到屏幕上。需要注意的是,在 ASCII 编码中,数字 '0' 到 '9' 的码值是连续的,而字母 'A' 到 'Z' 的码值也是连续的,因此可以直接通过加减运算将它们相互转换。
### 回答2:
分支程序设计是一种基于条件判断的程序设计方法,根据不同的条件执行不同的程序分支。
对于本题,我们需要从键盘输入一个十进制正整数N,并将其转换成十六进制数,最后将转换结果显示在屏幕上。
我们可以使用分支语句来实现这个程序。首先,我们将键盘输入的内容存储在一个变量N中,然后使用条件判断来确定N的范围是否满足条件(10≤N≤99)。如果不满足条件,我们可以给出相应的错误提示。
接下来,我们可以使用除以16的余数来得到N的每一位十六进制数,并将其保存在一个新的变量中。然后,我们可以通过查表法将十进制数转换成十六进制数,将转换结果存储在另一个变量中。
最后,我们将转换结果显示在屏幕上。
以下是伪代码的示例:
```
输入 N
如果 N 不满足条件 (10≤N≤99):
输出 错误提示信息
否则:
初始化变量 result 为空字符串
循环计算 N 的每一位十六进制数:
令 remainder = N % 16
将 remainder 转换成十六进制数并保存到一个变量 hex 中
将 hex 加入 result 的开头
更新 N = N // 16
输出 result
```
以上就是一个使用分支程序设计方法来实现将十进制正整数转换成十六进制数的程序。
### 回答3:
要将一个十进制正整数N转换为十六进制数,我们可以使用分支程序设计来完成。
首先,从键盘上输入一个十进制正整数N,并将其保存到一个变量中。
接下来,我们需要判断N的十进制值的范围是否在10到99之间。如果不在这个范围,则说明输入的N不符合要求,需要重新输入。
如果N在10到99之间,我们可以通过以下步骤将其转换为十六进制数:
1.先将N的个位数取出,可以通过N % 10来获取。
2.然后将N除以16,并将结果保存到N中,可以通过N = N / 16来实现。
3.将第一步得到的个位数转换为十六进制表示,例如10表示为A,11表示为B,依次类推。
4.将转换后的十六进制数从右往左依次拼接起来,直至N为0为止。
最后,将转换后的十六进制数显示在屏幕上即可。
通过以上的分支程序设计,我们可以实现从键盘输入一个十进制正整数N,并将其转换为十六进制数并显示出来。
阅读全文