黑马程序员技术交流社区

标题: 谁有八进制到2进制代码 [打印本页]

作者: 天下1083    时间: 2015-6-11 13:14
标题: 谁有八进制到2进制代码
要有注释的,谢谢哦大神们
作者: fanxing    时间: 2015-6-11 14:18
编程实现将任意的十进制整数转换成任意R进制数(R在2-16之间)。(C语言)

#include <stdio.h>
int main(){
        int number = 0;
        int digital = 0;
        int count = 0;
        int temp = 0;
        printf("请输入10进制数:");
        scanf("%d", &number);
        printf("请输入要转化的进制数:");
        scanf("%d", &digital);
        int a[100] = {0};
        char b[6] = "ABCDEF";
        while(number){
                temp = number % digital;
                 number /= digital;
                a[count] = temp;
                count++;
        }
        for(int i = count - 1; i >= 0; i--){
                if(a[i] < 10) printf("%d",a[i]);
                else{
                        printf("%c", b[a[i] % 10]);
                }
        }
        return 0;
}
作者: fanxing    时间: 2015-6-11 14:19
看看哪里不懂

作者: fanxing    时间: 2015-6-11 14:21
这是我自己写的哦,鄙视从网上荡

作者: 294250051    时间: 2015-6-11 23:08
fanxing 发表于 2015-6-11 14:18
编程实现将任意的十进制整数转换成任意R进制数(R在2-16之间)。(C语言)

#include

char b[6] = "ABCDEF";
你的这句话应该是错误的,C语言中没有字符串这个类型,你这样相当于把这6个字母放在了数组的第一个箱子里。有错误。你可以看一下~
作者: fanxing    时间: 2015-6-13 09:03
这是我的基础测试题,没有错误啊,那六个字母不是放在b[0]中啊,你运行一下就知道了,如果错了,那基础测试判卷老师应该给我扣分啊
作者: fanxing    时间: 2015-6-13 09:08
这个代码只能解决大进制转换小进制,如果需要小进制转大进制得重写





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2