`
zy3381
  • 浏览: 155480 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

十进制十六进制互转、数字转字符、日期转总天数

 
阅读更多
#include<stdio.h>
/*
    将十六进制转换成十进制输出
*/
void hex2dec(char *hex)
{
    int result = 0;
    int temp;
    while(*hex != '\0')
    {
        if(*hex>='0' && *hex<='9')
        {
            temp = *hex - '0';
        }
        else if(*hex>='A' && *hex<='F')
        {
            temp = *hex - 'A' + 10;
        }
        else if(*hex>='a' && *hex<='f')
        {
            temp = *hex - 'a' + 10;
        }
        result += temp;
        if(*(hex+1) != '\0')
        {
            result = result*16;
        }
        hex++;
    }
    printf("%d", result);
}

/*
    将十进制转换成十六进制输出
*/
void dec2hex(int dec)
{
    int hex;
    if(dec<16)
    {
        hex = dec;
    }
    else
    {
        //余数
        int x = dec%16;
        //对商进行递归
        dec2hex(dec/16);
        //递归最外层最后输出
        hex = x;
    }
    if(hex>9)
    {
        printf("%c", hex-10+'A');
    }
    else
    {
        printf("%c", hex+'0');
    }
}

/*
    将整数转换成字符串输出
*/
void int2char(int n)
{
    int r = n%10;
    int s = n/10;
    if(s==0)
    {
        printf("%c" ,n+'0');
    }
    else
    {
        int2char(s);
        printf("%c", r+'0');
    }
}
/*
    给定日期是当年的第几天
*/
int date2TotalDays(int year, int month, int day)
{
    int i,totalDays=0;
    int months[] = {31,28,31,30,31,30,31,30,31,30,31,30};
    if((year%4==0 && year%100!=0) || year%400==0)
    {
        months[1] = 29;
    }
    for(i=0; i<month-1; i++)
    {
        totalDays += months[i];
    }
    totalDays += day;
    return totalDays;
}
void main()
{
    hex2dec("12cd");
    printf("\n");
    dec2hex(1000);
    printf("\n");
    int2char(483);
    printf("\n");
    printf("%d", date2TotalDays(2014,3,7));
}

















分享到:
评论

相关推荐

    收集整理的SQL Server自定义函数

    5.将十进制转成十六进制 8 6.求两个字符串中相同的汉字及字母的个数 10 7.生成n位随机字符串 11 8.取出字符串中的汉字、字母或是数字 14 9.根据字符分割字符串的三种写法 16 10.将数字转换千分位分隔形式 18 11.取...

    Excel公式与函数大辞典.宋翔(带书签高清文字版).pdf

    2.6.8 DECIMAL——将给定基数的文本转换为十进制数 116 第3章 日期和时间函数 117 3.1 了解Excel日期系统 118 3.1.1 Excel提供的两种日期系统 118 3.1.2 了解日期和时间序列号 119 3.1.3 输入与设置日期和时间 ...

    delphi 开发经验技巧宝典源码

    0115 如何将十进制转换为十六进制 78 0116 如何将十六进制转换为十进制 79 4.5 类型转换函数 80 0117 使用IntToHex函数将整数转换为十六进制数 80 0118 使用Int函数返回实数的整数部分 80 0119 使用...

    delphi 开发经验技巧宝典源码06

    0115 如何将十进制转换为十六进制 78 0116 如何将十六进制转换为十进制 79 4.5 类型转换函数 80 0117 使用IntToHex函数将整数转换为十六进制数 80 0118 使用Int函数返回实数的整数部分 80 0119 使用...

    python练手的 27个项目

    使用python将十六进制数转换为十进制数 使用python制作视频播放器 使用python判断一个年份是否是闰年 使用python实现电池电量通知功能 使用python计算加载网站的时间 使用python测试网址可否联通 使用python将pdf...

    C#编程经验技巧宝典

    59 &lt;br&gt;0082 C#随机数的产生 59 &lt;br&gt;0083 身份证从15位升至18位算法 60 &lt;br&gt;0084 十进制数转二进制数的算法 60 &lt;br&gt;0085 十进制数转八进制数的算法 61 &lt;br&gt;0086 十进制数转十六进制数的算法...

    易语言540个易模块

    十进制转化为十六进制5 十六进制转十进制模块 时间格式化-自由扩展型 世恒通用安装系统文件压缩模块 是否为汉字 输入法操作模块 输入法上屏 鼠标控制 树型框操作类 树型框增强 数据库查找 数据库到超级列表框 ...

    Python3 菜鸟查询手册

    25.20 十进制转二进制、八进制、十六进制.png 25.21 ASCII码与字符相互转换.png 25.22 最大公约数算法.png 25.23 最小公倍数算法.png 25.24 简单计算器实现.png 25.25 生成日历.png 25.26 使用递归斐波那契...

    《计算机应用基础》.doc

    将十进制数45转换成对应的二进制数、八进制数、十六进制数各是多少? 答:二进制是101101,八进制是55,十六进制是2D 二、简答题(每题10分,共50分) 1.请画出冯诺依曼型计算机的基本构成框图。 2.怎样将d盘"作业...

    790个易模块打包下载-2

    十六进制转十进制模块 .ec 时间格式化-自由扩展型.ec 世恒通用安装系统文件压缩模块.ec 是否为汉字.ec 输入法操作模块.ec 输入法上屏.ec 鼠标控制.ec 树型框操作类.ec 树型框增强.ec 数据库查找.ec 数据库...

    790个易模块-3

    十六进制转十进制模块 .ec 时间格式化-自由扩展型.ec 世恒通用安装系统文件压缩模块.ec 是否为汉字.ec 输入法操作模块.ec 输入法上屏.ec 鼠标控制.ec 树型框操作类.ec 树型框增强.ec 数据库查找.ec 数据库...

    790个易模块打包

    十六进制转十进制模块 .ec 时间格式化-自由扩展型.ec 世恒通用安装系统文件压缩模块.ec 是否为汉字.ec 输入法操作模块.ec 输入法上屏.ec 鼠标控制.ec 树型框操作类.ec 树型框增强.ec 数据库查找.ec 数据库...

    多功能 DLL 动态库

    说明:将十进制的整数转换成十六进制或八进制,参数:source 要转换的十进制整数;OtcHex : 输入8转换成八进制数,其它转换为十六进制数。 String ToUPNum( dec source,Boolean UD ) 说明:将双精度的小数转换为...

    2018计算机应用基础.doc

    将十进制数45转换成对应的二进制数、八进制数、十六进制数各是多少? 答:二进制 101101,八进制 55,十六进 2D。 二、简答题(每题10分,共50分) 1.请画出冯诺依曼型计算机的基本构成框图。 答: 2.怎样将d盘...

    易化的Python-易语言

    是否指定文本开头文本_TAB转空格文本_寻找文本文本_倒找文本文本_寻找文本index文本_倒找文本index文本_是否全十进制数字U文本_是否全数字字母文本_是否全数字文本_是否全数字U文本_是否全空格文本_是否标题化文本_...

    计算机应用基础答案(1).doc

    将十进制数45转换成对应的二进制数、八进制数、十六进制数各是多少? 答:二进制 101101,八进制 55,十六进 2D。 二、简答题(每题10分,共50分) 1.请画出冯诺依曼型计算机的基本构成框图。 答: 2.怎样将d盘...

    EXCEL集成工具箱V6.0

    【屏幕取色】 经典的屏幕取色工具,可取任意一处屏幕颜色到指定的存储格中,可显示为RGB颜色值或十六进制的颜色值,为VBA开发人员的辅助工具之一。 【万年日历】 可以查询所有节、假日信息和公农双历,以及计算两...

Global site tag (gtag.js) - Google Analytics