c语言16进制怎么换成十进制,c语言如何把16进制转换为10进制

首页 > 教育培训 > 作者:YD1662023-11-04 16:16:46

十进制转十六进制:

c语言16进制怎么换成十进制,c语言如何把16进制转换为10进制(1)

#include <stdio.h>

int main() {

int dec, quo, rem;

char hex[100];

int i = 0, j;

printf("请输入一个十进制数:");

scanf("%d", &dec);

quo = dec;

while (quo != 0) {

rem = quo % 16;

if (rem < 10)

hex[i ] = rem '0';

else

hex[i ] = rem 'A' - 10;

quo = quo / 16;

}

printf("该数的十六进制数为:");

for (j = i - 1; j >= 0; j--)

printf("%c", hex[j]);

return 0;

}

程序首先通过 scanf 函数从用户输入中获取一个十进制数,并将其存储在 dec 变量中。

然后,程序使用一个 while 循环来将十进制数转换为十六进制数。在每次循环中,程序将十进制数除以 16,并将商和余数分别存储在 quorem 变量中。如果余数小于 10,则将其转换为对应的字符('0' 到 '9'),否则将其转换为对应的字符('A' 到 'F')。将转换后的字符存储在 hex 数组中,并将数组下标 i 加 1。最后,将 quo 更新为商,以便继续下一轮循环。

最后,程序使用一个 for 循环来逆序输出 hex 数组中的字符,以得到最终的十六进制数。

程序中的变量名都比较简短,dec 代表十进制数,quo 代表商,rem 代表余数,hex 代表十六进制数。



栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.