首页 > 其他分享 >进制转换

进制转换

时间:2023-11-05 18:34:56浏览次数:25  
标签:转换 进制 int number num newbase printf

1.十进制到n进制的转换(n<10)

原因:不知道如何实现A~F的输出。

原代码,只能实现到n进制,n<10
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int newbase,num,q=1,r,newnum=0,count=1,i;
    printf("the new base:");
    scanf("%d",&newbase);
    printf("the number to be converted:");
    scanf("%d",&num);
    while(q!=0)
    {
        q=num/newbase;
        r=num%newbase;
        for(i=1;i<count;i++)
                r=r*10;
        newnum=newnum+r;
        num=q;
        count++;
    }
    printf("the new number:%d\n",newnum);
    return 0;
}

2.十六进制

暂时无法实现十以上进制的转换,我便向AI求助。
以下是求助过程。

3.新代码

新代码,能实现到n进制,n<=16
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int newbase,number,q=1,r,index=0,i;
    char num[100];
    printf("the new base:");
    scanf("%d",&newbase);
    printf("the number to be converted:");
    scanf("%d",&number);

    while(q!=0)
    {
        q=number/newbase;
        r=number%newbase;
        if(r<10)
            num[index]=r+'0';
        else
            num[index]=r-10+'A';
        index++;
        number=q;
    }
    printf("the new number:");
    for(i=index; i>=0; i--)
        printf("%c",num[i]);
    return 0;
}

4.运行结果

5.经验总结

(1)学会了在C语言中通过数组储存多个同类型元素。
(2)回忆了字符的存储、输出。

标签:转换,进制,int,number,num,newbase,printf
From: https://www.cnblogs.com/eleslsel/p/17810862.html

相关文章

  • 免费格式转换工具箱,PDF candy
     随着我们办公所遇到的情况多样化,有时候为了让word文件不在别的电脑上乱码,或者为了符合任务的要求,我们经常需要针对格式进行转换,可是虽然wps有这个功能,但是它需要会员,今天就给大家带来稳定免费的PDF转换工具,没错,就是PDFCandydesktop!!!PDFCandydesktop具有以下特点:支持多种文......
  • 再也不用充值会员转换PDF了!!!
    PDFCandyDesktop是一款强大的PDF编辑和管理工具,它提供了一套全面的解决方案,让您可以轻松地创建、编辑、转换和优化PDF文件。无论您是一名学生、教师、企业家还是自由职业者,PDFCandyDesktop都能满足您的所有需求。PDFCandyDesktop的界面设计简洁明了,所有的功能都一目了然。您......
  • 108. 将有序数组转换为二叉搜索树
    目录题目题解题目给你一个整数数组nums,其中元素已经按升序排列,请你将其转换为一棵高度平衡二叉搜索树。高度平衡二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过1」的二叉树。题解题目给出的“有序数列”帮助我们满足了“二叉搜索树”的条件......
  • 部署MYSQL 二进制方式
    二进制部署mysql(之前一直使用部署好的,但是自己突然部署,忘记了。。。,这次记录下)一、需要先到mysql官方网站下载二进制安装包:#官网地址:https://dev.mysql.com/downloads/#下载地址:https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.30-linux-glibc2.12-x86_64.ta......
  • 进制位
    [NOIP1998提高组]进制位题目描述著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字。例如:其含义为:,,,,,,根据这些规则可推导出:,,,。同时可以确定该表表示的是进制加法。输入格式第一行一个整数()表示行数。以下行,每行包括个字符串,每个字符串间......
  • CTFshow Reverse 二进制玩家人均全栈 wp
    是个zip文件,修复一下得到一个”听说大家很怕VMP?”的文件。无法运行,跟标准elf文件比较一下,把头部改3个字节,文件可以跑了upx脱壳,脱壳后进入主函数迷宫在52行的unk_4BE100中,把迷宫提取出来:1,1,0,0,0,0,0,00,1,1,1,0,0,0,00,0,0,1,0,0,0,00,1,1,1,0......
  • 教3妹学编程-算法题】2914. 使二进制字符串变美丽的最少修改次数
    3妹:呜呜,烦死了,脸上长了一个痘2哥 :不要在意这些细节嘛,不用管它,过两天自然不就好了。3妹:切,你不懂,影响这两天的心情哇。2哥 :我看你是不急着找工作了啊,工作那么辛苦,哪还有时间想这些啊。3妹:说到找工作,我又要去刷题了。2哥:我给你出一道关于美丽的题吧,让你的心情美丽美丽~ 1题目......
  • 将C#中的DateTime转换为"YYYYMMDDHHMMSS"格式
    内容来自DOChttps://q.houxu6.top/?s=将C#中的DateTime转换为"YYYYMMDDHHMMSS"格式我想将一个C#DateTime转换为"YYYYMMDDHHMMSS"格式。但我找不到内置的方法来获取这个格式?有什么建议吗?DateTime.Now.ToString("yyyyMMddHHmmss");//区分大小写以上代码将获取当前日期......
  • Redhat8.2二进制安装mysql8.0,启动报错
    报错信息:bin/mysql:errorwhileloadingsharedlibraries:libtinfo.so.5:cannotopensharedobjectfile:Nosuchfileordirectory解决办法:ll/usr/lib64/libtinfo.so.6[root@zabbixservermysql]#ln-s/usr/lib64/libtinfo.so.6.2/usr/lib64/libtinfo.so.5[root@zab......
  • C++ 字符串与数值间的转换(只归纳了常用情况)
    很多编程中字符串与数字间的转换是一种常见的需求下面总结了C++中字符串与数值间是如何进行转换的。目录:1.字符串转数字(C版本)2.字符串转数字C++风格3.数字转字符串1.字符串转数字(C版本)strings1="123";strings2="123.1";inti=atoi(s1.c_str());......