- 博客(7)
- 收藏
- 关注
原创 C语言K&R习题4-2。对atof函数进行扩充,使它可以处理形如 123.45e-6的科学表示法,其中,浮点数后面可能会紧跟一个e或者E以及一个指数(可能有正负号)
写起来并不难,但是由于需要考虑的情况较多,容易遗漏判断条件,debug逐渐完善代码。
2023-07-31 13:31:55
227
1
原创 C语言K&R习题4-1。编写函数strindex(s, t),它返回字符串t在s中最右边出现的位置。如果s中不包含t,则返回-1。
调试发现reverse其实并不必要,当程序遇到第一个与t相符的字符串后会记录其位置,程序不结束,然后继续扫描s,直到遇到最后一个t后,以'\0\结束搜索,此时记录的位置即为最右侧的t位置。实现思路,首先使字符串s和t倒序,之后从左到右检测第一次出现的位置即可。
2023-07-31 10:09:50
541
1
原创 C语言K&R习题3-3 expand,编写函数expand(s1, s2),将字符串s1中类似于a-z一类的速记符号在字符串s2中扩展为等价的完整列表abc...xyz。
思路很明确,检测字符’-‘,如果字符’-‘前后均为字母,说明这段为速记,判断前后字母的大小关系,字母是否相等,根据不同情况进行s2数据的输入。未检测到字符’-‘时,将s1元素原样复制到s2的最后一位。要注意,s2内的字符串长度与s1是不一样的,可以定义一个变量记录s2待输入的元素序号,亦可以灵活运用string.h内的strlen语句,读取s2的末尾标号。该函数可以处理大小写字母和数字,并可以处理a-b-c、a-z0-9 与 -a-z等类似的情况。作为前导和尾随的-字符原样排印。
2023-07-28 10:31:02
560
1
原创 C语言K&R习题2-4(改)定义squeeze函数,输入字符串s1和s2,将s1和s2进行对比,对应位置字母有重复的在s1中删除后输出。
【代码】C语言K&R习题2-4(改)定义squeeze函数,输入字符串s1和s2,将s1和s2进行对比,对应位置字母有重复的在s1中删除后输出。
2023-07-26 14:16:54
201
1
原创 C语言K&R习题1-20、1-21(改),用空格模拟tab;用tab代替连续空格。
这个比较简单啊,利用变量len记录当前字符位置,用TABEND-TABEND%len得到空格数量,打印即可。这个代码debug了好久,感觉比1-20难太多,详见注释。思路固化了,应该有很多简单的方法。
2023-07-25 17:21:41
122
原创 C语言K&R习题1-16(改),利用函数打印字符串及其长度,找出最长字符串并将其单独打印。
【代码】C语言K&R习题1-16(改),利用函数打印字符串及其长度,找出最长字符串并将其单独打印。
2023-07-25 11:11:37
157
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅