- /*************************************************************
- * 5. 输入一个十进数,将其转换成 N 进制数(0<N<=16)。
- *************************************************************/
- #include <stdio.h>
- void main()
- {
- int index;
- int num,n;
- int numbers[100];
- //输入一个整数
- printf("请输入一个整数num和进制数n:/n");
- scanf("%d%d",&num,&n);
- //判断是否符合条件
- if( n < 1 || n > 16 )
- {
- printf("n必须满足:0<n<=16");
- return;
- }
- //求出各位数
- index = 0;
- while( num != 0 )
- {
- numbers[index++] = num % n;
- num = num / n;
- }
- //输出
- while(--index >= 0)
- {
- switch(numbers[index])
- {
- case 10: printf("A"); break;
- case 11: printf("B"); break;
- case 12: printf("C"); break;
- case 13: printf("D"); break;
- case 14: printf("E"); break;
- case 15: printf("F"); break;
- default: printf("%d",numbers[index]);
- }
- }
- printf("/n");
- }
练习5
本文介绍了一个简单的C程序,用于将一个十进制整数转换为指定的N进制数(0<N<=16)。程序首先获取用户输入的十进制数和目标进制数,然后通过循环计算出每个位上的数值,并使用switch-case语句处理大于9的数(用字母A-F表示)。
摘要由CSDN通过智能技术生成