用c语言编写一个程序,将正整数转换成8421码(又称BCD码)形式的字符串。8421码的编码规则是:两位10进制正整数可以用1个字节的8421码表示,其中一位10进制整数占用4位bit。或者说一个字节的8421编码可以表示两位10进制正整数。
时间: 2023-06-01 13:03:06 浏览: 251
C语言程序设计-将两个两位数的正整数a、b合并形成一个整数放在c 中;合并的方式是:将a数的十位和个位数依次放在c数的千位和十
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num, i, j, bcd[8];
char str[5];
printf("请输入一个正整数:");
scanf("%d", &num);
sprintf(str, "%04d", num); // 将整数转换成4位字符串
for(i = 0; i < 4; i++)
{
j = i * 2;
bcd[j] = str[i] / 10; // 取十位数
bcd[j+1] = str[i] % 10; // 取个位数
}
printf("8421码为:");
for(i = 0; i < 8; i++)
{
printf("%d", bcd[i]);
}
printf("\n");
return 0;
}
```
说明:
输入一个正整数,使用sprintf()函数将其转换成4位字符串,然后将每个字符分别转换成两个10进制整数,即十位和个位,分别存储在数组bcd中,最后输出。
阅读全文