#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));
}
分享到:
相关推荐
BIN2HEX - 将二进制数字转换为十六进制。 BIN2OCT - 将二进制数字转换为八进制。 CONVERT - 将数字从一种度量系统转换到另一种。 DELTA - 确定两个值是否相等。 ERF - 返回在两个值之间集成的错误函数。 ERFC - 返回...
同时,也可以用指针来遍历字符串,进行二进制、八进制、十进制或十六进制之间的转换。 3. **门禁卡**:这个程序可能涉及到了字符串的比较,如验证ID号码。可以使用字符串指针来比较两个字符串是否相等,或者使用...
- 说明:`"D"` 表示十进制数格式,后面跟的数字指定输出字符串中包含的最小位数。如果原数值的位数不足,则会在前面补零。 3. **科学计数法格式 (E)** - 示例:`25000.ToString("E")` 输出:`2.500000E+005` - ...
4. "0716传址函数,十六转十进制.cpp":可能涉及到使用传址函数将十六进制数字转换为十进制。 5. "0814传址函数,str倒序.cpp":可能是一个练习,要求使用传址函数将字符串倒序。 这些文件名暗示了各种编程技能的...
5.将十进制转成十六进制 8 6.求两个字符串中相同的汉字及字母的个数 10 7.生成n位随机字符串 11 8.取出字符串中的汉字、字母或是数字 14 9.根据字符分割字符串的三种写法 16 10.将数字转换千分位分隔形式 18 11.取...
之后,使用`int.Parse()`或`Convert.ToInt32()`将十六进制字符串转换为十进制数。 5. **二维数组操作**: - 第五个题目涉及到二维数组的使用,包括初始化、输出矩阵、查找最大值及其位置。在C#中,二维数组可以...
这个计算器能够将十进制数字转换为十六进制,反之亦然。实现这个功能涉及到了数值的位操作、进制转换算法以及字符串格式化。开发者需要理解不同进制间的转换规则,并能有效地在二进制、八进制、十进制和十六进制之间...
5. **BIN2DECBIN2HEX**: 将二进制数转换为十进制、十六进制字符串。 6. **BIN2OCT**: 将二进制数转换为八进制字符串。 7. **COMPLEX**: 创建复数。 8. **CONVERT**: 在不同的度量单位系统之间转换数值。 9. **DEC2...
- 将十进制数转换为十六进制数。 - 参数包括十进制数、位数。 12. **DEC2OCT** - 将十进制数转换为八进制数。 - 参数包括十进制数、位数。 13. **DELTA** - 判断两个数值是否相等。 - 参数包括第一个数值和...
- **功能**:十六进制转十进制。 - **应用场景**:用于计算机科学中的数据处理。 ##### HEX2OCT - 将十六进制数转换为八进制数 - **功能**:十六进制转八进制。 - **应用场景**:用于计算机科学中的数据处理。 ###...
3. **IntToHex** - 十进制转十六进制字符串。此函数接受两个参数,一个是待转换的十进制数,另一个是输出的十六进制字符串的位数。示例:`Edit1.Text := IntToHex(100, 2);` 结果是"64"。 - 注意:Delphi没有直接...
这涉及到数的进制转换,需要理解二进制、八进制、十进制、十六进制等不同进制之间的转换规则。文件处理是另一个关键点,需要从输入文件中读取数据,存储和处理字符串,然后根据要求输出结果到文件。此外,还需要实现...
- **Decimal**: 将数据转换为十进制数值。 - **Double**: 转换为双精度浮点数。 - **Integer**: 转换为整数。 - **Smallint**: 转换为短整型。 - **Real**: 转换为实数。 - **Hex**: 将数据转换为十六进制表示。 - *...
- **BIN2DEC()**、**BIN2HEX()**、**BIN2OCT()**:二进制到十进制、十六进制、八进制的转换。 - **COMPLEX()**:创建一个复数。 - **CONVERT()**:将一个单位的数字转换为另一个单位。 - **DEC2BIN()**、**DEC2HEX()...
代码中包含了大量的十六进制数字,这些数字代表了从1901年到2050年的农历每个月的天数和月份信息。通过这些数据,可以实现农历日期的转换和计算。例如,`gLunarMonthDay` 数组中的每个十六进制值对应了一年中每个月...
7. 十六进制转十进制: 函数接受一个以字符数组形式表示的十六进制数,通过遍历数组,将每个字符转换为其对应的十进制值,累加得到结果。注意区分字母字符和数字字符。 8. 递归方法将整数转化为字符串: 使用递归...
- `Hex$(x)`:将十进制数`x`转换为十六进制字符串。 - `Oct$(x)`:将十进制数`x`转换为八进制字符串。 - `Asc(x$)`:返回字符串`x$`的第一个字符的ASCII码。 - `Chr$(x)`:将ASCII码`x`转换为对应的字符。 - `...
10. **OCT2BIN**、**OCT2DEC**、**OCT2HEX**:八进制数到二进制、十进制和十六进制的转换。 ##### (五)财务函数 财务函数主要用于金融和会计领域的计算,如折旧、利息支付、债券价值等。 1. **ACCRINT**、**...
6. **十进制转换**:分为两个子任务,一是将十进制数转换为二进制,二是转换为十六进制。不使用Java内置的转换函数,需要自定义算法实现。二进制转换可以采用除2取余法,十六进制则可以除16取余。 7. **回文整数...