练习2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀0x 或0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f以及A~F。
来源:互联网 发布:手机任意显示软件 编辑:程序博客网 时间:2024/06/05 06:38
C语言程序设计(第二版) 练习2-3 个人设计
练习2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀0x或0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f以及A~F。
代码块
#include <stdio.h>int htoi (char s[]);main(){ char s[] = "0xA2F"; printf("%d\n", hoti(s)); return 0;}int hoti (char s[]) /*十六进制转换函数*/{ int i, n, num; /*定义循环变量,中间变脸,最终转换值*/ num = 0; /*以下两行为变量设置初始值*/ i = 0; if (s[i] == '0'){ /*以下四行为判断是否为十六进制数值,以0x或0X开头作为条件*/ ++i; if (s[i] == 'x' || s[i] == 'X'){ ++i; for (; s[i] != '\0'; ++i){ /*判断字符串是否结束并循环*/ if (s[i] >= '0' && s[i] <= '9') /*如果字符为数字,转换为相应值*/ n = s[i] - '0'; if (s[i] >= 'A' && s[i] <= 'Z') /*如果字符为大写字母,转换为相应值*/ n = s[i] - 55; if (s[i] >= 'a' && s[i] <= 'z') /*如果字符为小写字母,转换为相应值*/ n = s[i] - 87; num = num * 16 + n; /*循环求值*/ } } } return num;}
如果程序设计有错误或更简洁的方法,欢迎并感谢您指正出示,谢谢!
阅读全文
0 0
- 练习 2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀 0x 或 0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f 以及 A~F。
- 练习2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀0x 或0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f以及A~F。
- 练习2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀0x或0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f以及A~F。
- 练习 2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀 0x 或 0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f 以及 A~F。
- 练习2-3 编写函数htoi(s),把由16进制数字组成的字符串(包含可选的前缀0X或0x)转换成与之等价的整形值。字符串中允许包含的数字包括:0 ~ 9, a ~ f,A ~ F。
- 编写hoti(s),把由十六进制数字组成的字符串(0x或0X)转化为与之等价的整形值。字符串中允许包含的数字为:0-9,a-f或A-F。
- 练习2-3 编写函数htoi(s),把由十六进制数字组成的字符串(包含前缀0x或0X)转换成与之等价的整型值
- 把由十六进制数字组成的字符串转换为与之等价的整数值
- 将由16进制数字组成的字符串转换成与之等价的整形值
- 字符串处理3 - 将0X数字中小于E的换成F
- 输入一个字符串,内有数字和非数字字符,例如:ab123fk456 98dds153?145f .将其中连续的数字字符作为一个整数,依次存放到一个整型数组a中。例如:123放在a[0],4
- 练习3-3 编写函数 expand(s1, s2),将字符串s1 中类似于a-z 一类的速记符号在字符串s2中扩展为等价的完整列表abc…xyz。该函数可以处理大小写字母和数字。
- 如何将包含数字的NSString字符串转换为整数
- vc中把字符串转换成16进制数的函数(如'7f'->0x7f)
- vc中把字符串转换成16进制数的函数(如'7f'->0x7f)
- vc中把字符串转换成16进制数的函数(如'7F'->0x7F)
- 《C++程序设计语言》6.6_16 包含数字的C风格字符串为参数, 返回与之对应的int值
- java中将由数字组成的字符串型(String)转换成整型(int)
- HTML5新增标签以及功能
- Android
- app自动更新安装完毕并打开
- RequireJS实例教程及命名冲突解决
- 运行Eclipse出错:Failed to load the JNI shared library
- 练习2-3 编写函数 htoi(s),把由十六进制数字组成的字符串(包含可选的前缀0x 或0X)转换为与之等价的整型值。字符串中允许包含的数字包括:0~9、a~f以及A~F。
- MYSQL大小写及校验集有关的一些知识整理
- Oracle 数据库创建
- 1016: [JSOI2008]最小生成树计数
- 修改文本框的值
- Activity的四种启动模式:
- 一个程序员奋斗史
- android 6.0以上多权限管理
- keras文档快速问答(翻译自Keras FAQ: Frequently Asked Keras Questions)