c 字符串转数字_C语言实现十进制转216进制、十六进制转十进制

1、十进制转216进制

【问题描述】从键盘输入十进制整数num及转换的进制数base,将整数num转换为base进制(base取值范围为 2~16)。

方法为:十进制数除base取余法,即十进制数除以base,余数为权位上的数,得到的商值继续除以base,依此步骤继续向下运算直到商为0为止。

源程序:

#include 

void trans(int data, int base) 

    int x[64],k,i=0;

    while(data) 

    {  

        x[i]=data%base;  

        data/=base;

        i++;

    }

    for(k=i-1;k>=0;k--)

      if(x[k]<10) 

            printf("%d", x[k]);    

      else if(x[k]<=16) 

            printf("%c", 'A'+x[k]-10); 

int main(void) 

    int num,base; 

    scanf("%d%d", &num, &base); 

    if(base<=0||base>16)

       { 

          printf("data error\n"); 

          return; 

       } 

    printf("number=%d  base=%d\n",num,base); 

    trans(num,base); 

    printf("\n"); 

    return 0;

2、十六进制转十进制

【问题描述】输入一个字符串,取出该字符串中的十六进制字符(不分大小写)组成一个新的表示十六进制数的字符串,输出该字符串并将其转换成十进制数后输出。

方法为:十六进制数由数字0~9、字母A~F(或a~f)组成。把十六进制数按权展开、相加即得十进制数。

源程序:

#include

#include

int main(void)

{

  char s[20],hex[20];

  int i,j,num;

  gets(s);

  /* 取出字符串中的十六进制字符  */

  for(i=0,j=0;s[i]!='\0';i++)

   {

     if(s[i]>='0'&&s[i]<='9'||s[i]>='A'&&s[i]<='F'||s[i]>='a'&&s[i]<='f')

       {

          hex[j]=s[i];

          j++;

       }

   }

   hex[j]='\0';

   printf("Hexadecimal String: ");

   puts(hex);

   /* 十六进制转十进制 */ 

   num=0;  

   for(i=0;hex[i]!='\0';i++)

    {

        if(hex[i]>='0'&&hex[i]<='9')

            num=num*16+hex[i]-'0';

         else if(hex[i]>='A'&&hex[i]<='F')

                     num=num*16+hex[i]-'A'+10;

                 else if(hex[i]>='a'&&hex[i]<='f')

                     num=num*16+hex[i]-'a'+10;  

    }

   printf("Decimal number=%d\n",num);          

   return 0;

}

ed39ecad8d8fd2a4b2bdf9a67347ca2d.png

1b64497789ef52dc26c3f1456114459f.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276810.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mysql循环语句,死循环解决办法

delimiter // #定义标识符为双斜杠 drop procedure if exists test; #如果存在test存储过程则删除 create procedure test() #创建无参存储过程,名称为testbegindeclare i int; #申明变量set i 0; …

QML-关于Qt.rgba()颜色无法正常显示问题

GitHub:八至 作者&#xff1a;狐狸家的鱼 本文链接&#xff1a;关于Qt.rgba()颜色的正确写法 当在正常给color属性写颜色的时候&#xff0c;用十六进制能正常显示&#xff0c;但是用Qt.rgba()时&#xff0c;颜色无法正常显示出来。 按照文档的正常写法&#xff1a; color: Qt.r…

一个简单的LINQ TO XML, AJAX 例子[译]

这个教程是用Visual Studio.net 2008建立&#xff0c;也可以使用VS2005&#xff0c;但你需要从这里下载安装Microsofts ASP.NET AJAX Extensions&#xff0c;AJAX和LINQ是微软目前主要焦点&#xff0c;两个看上去不足为奇&#xff0c;但背后都隐藏着巨大的潜力和力量。在这个示…

1.ASP.NET Core介绍

优点&#xff1a; 1.跨平台&#xff0c;高性能&#xff0c;开源&#xff0c;运行在.Net Core 或.Net Framework框架上&#xff08;asp.net core 3.0及以后只支持.Net Core&#xff09;。 2.各平台上开发工具支持&#xff0c;能够开发web应用&#xff0c;webapi&#xff0c;移动…

python3性能还低吗_Python3 vs. Python2 大作战,谁将是性能之王?

渲染 HTML 模板 django_html 测试将使用 Django 模板渲染引擎来构建一个 150x150 的 HTML 表格。 它利用了 Django 引擎的 Content 和 Template 类。如图所示&#xff0c;Python 3.7 比 Python 2.7 快 1.19 倍&#xff0c;但除此之外&#xff0c;其他 Python 3 版本都没有 Pyth…

python day08

一 文件处理补充 控制文件中光标移动 1 f.read(n): l.文件打开方式为文本模式的时,代表读取N个字符 ll.文件打开方式为b模式时,读取N个字节 强调:只有在read(n)模式下 N代表字符个数,除此之外的是以字节为单位 2 f.seek(): 光标移动是以字节为单位的整数移动. 三种模式:(分别为…

百度地图移动端开发和ArcGIS for Android 开发入门

打开链接http://pan.baidu.com/s/1eQpFNWY&#xff0c;可以查看 转载于:https://www.cnblogs.com/David-Young/p/3827058.html

VSCode 小鸡汤 第00期 —— 安装和入门

简介 这将是一个新的系列&#xff0c;将会以 Visual Studio Code&#xff08;后文都简称为 VSCode 啦&#xff09;的操作&#xff0c;环境配置&#xff0c;插件介绍为主&#xff0c;为大家不定期的介绍 VSCode 的一些操作技巧&#xff0c;所以取名 VSCode 小鸡汤&#xff0c;本…

.net生成文字图片

System.Drawing.Bitmap bmpnew Bitmap(Bitmap.FromFile(Server.MapPath("42.jpg")));//载入图片 System.Drawing.Graphics gGraphics.FromImage(bmp); g.DrawString("abcd测试",new Font("黑体",18),new SolidBrush(Co…

python可以调用windows资源吗_如何在Windows上用Python调用WinRar?还有问题吗

使用zipfile模块&#xff0c;我创建了一个脚本来提取我的归档文件&#xff0c;但是这个方法会破坏除txt文件之外的所有内容。在def unzip(zip): filelist [] dumpfold rM:\SVN_EReportingZones\eReportingZones\data\input\26012012 storage rM:\SVN_EReportingZones\eRepor…

SQLServer、Mysql、Oracle 创建、删除用户和授予用户权限

SQLServer 1、创建用户 CREATE LOGIN [用户名称] WITH PASSWORD用户密码, DEFAULT_DATABASE[默认数据库名称], CHECK_EXPIRATIONOFF, CHECK_POLICYOFF GO USE [数据库名称] GO CREATE USER [用户名称] FOR LOGIN [用户名称] WITH DEFAULT_SCHEMA[dbo] GO 2、授予全库只读权限 A…

一次缓存性能问题排查

概述以下分享的都跳过了很多坑&#xff0c;包括redis、tomcat环境配置、机器硬件配置等等问题&#xff08;与线上保持一致&#xff0c;或者硬件性能减配系数&#xff0c;例如线上&#xff1a;8C16G&#xff0c;压测&#xff1a;4C8G&#xff0c;系数简单相差2倍&#xff09;&am…

python 多个列表_Python同时迭代多个列表

没有人会记得死的东西&#xff0c;所以要活下去&#xff0c;咬牙切齿的活下去&#xff01; import sys from itertools import chain from random import randint reload(sys) sys.setdefaultencoding(utf-8) 案例一 要求&#xff1a;一个班级有10个人&#xff0c;考试语数外三…

再读新疆系列(六)——吹拂“卡拉库里湖”的风

一下飞机&#xff0c;导游王雪作了简短的自我介绍&#xff0c;马不停蹄地带着我们经喀什市区直接向帕米尔高原的“卡拉库里”湖走。 问午饭在哪吃&#xff1f; 答&#xff1a;“湖边”。 “几点能到&#xff1f;” “大约下午二点多。”妈呀&#xff0c;又经历一次残酷的饥饿历…

记录一次webpack3升级到webpack4过程

升级之前也参考了一些网上的教程。借鉴之&#xff0c;进行的自己的升级。一些版本为什么设为那个版本号也是参考别人的结果。 整体是按照先升级npm run dev&#xff1b;在升级npm run build的顺序。 首先升级webpack&#xff0c;在package.json文件中将webpack版本号修改为4.8.…

linux时间修改-hwclock和date

修改系统时间date 设定日期&#xff1a;date -s 月/日/年&#xff0c;例如设定日期为2018年12月1日&#xff0c;date -s 12/01/2018&#xff08;年也可以是两位&#xff09; 设定时间&#xff1a;date -s hh:mm:ss&#xff0c;例如设定时间为21:15:38&#xff0c;date -s 21:15…

判断一个字符串是否为回文的递归算法

//编译器&#xff1a;GCC 4.2.1 运行环境&#xff1a;Redflag Linux 6.0 Desktop //如果在VC下编译可能要加入string和algorithm两个头文件并修改函数返回值类型 #include<iostream>using namespace std;int Ifhw(string s,string q,int &i){if(s[i]q[i]&&i!…

plsql如何执行存储过程_如何理解Spark应用的执行过程

从Spark应用的提交到执行完成有很多步骤&#xff0c;为了便于理解&#xff0c;我们把应用执行的整个过程划分为三个阶段。而我们知道Spark有多种运行模式&#xff0c;不同模式下这三个阶段的执行流程也不相同。本文介绍这三个阶段的划分&#xff0c;并概要介绍不同模式下各个阶…

JS高级:事件冒泡和事件捕获;

1、事件&#xff1a;浏览器客户端上客户触发的行为成为时事件&#xff1b;所有的事件都是天生自带的&#xff0c;不需要我们去绑定&#xff0c;只需要我们去触发 当用户触发一个事件时&#xff0c;浏览器的所有详细信息都存在一个叫做event的对象上&#xff0c;我们把它叫做事件…

Vue于React特性对比(三)

最近重学React&#xff0c;再次和vue做了对比。 一&#xff0c;为官方插件提供便利的第三方插件横行 React仅仅是一个ui框架。虽然官方提供了redux&#xff0c;react-router&#xff1b;但也有第三方的redux-thunk&#xff0c;redux-saga&#xff1b;还有react-router-dom。 而…