A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 天下1083 中级黑马   /  2015-6-11 13:14  /  987 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

要有注释的,谢谢哦大神们

6 个回复

倒序浏览
编程实现将任意的十进制整数转换成任意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:18
编程实现将任意的十进制整数转换成任意R进制数(R在2-16之间)。(C语言)

#include

char b[6] = "ABCDEF";
你的这句话应该是错误的,C语言中没有字符串这个类型,你这样相当于把这6个字母放在了数组的第一个箱子里。有错误。你可以看一下~
回复 使用道具 举报 0 1
这是我的基础测试题,没有错误啊,那六个字母不是放在b[0]中啊,你运行一下就知道了,如果错了,那基础测试判卷老师应该给我扣分啊
回复 使用道具 举报
这个代码只能解决大进制转换小进制,如果需要小进制转大进制得重写
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马