
C Primer Plus
文章平均质量分 55
心得体会+代码实现
Zy_Yin123
加油!
展开
-
C语言匹配标记算法循环统计数据
最近做《CPrimerPlus》《C Primer Plus》《CPrimerPlus》第七章的课后习题,做到习题六的时候看到了匹配标记算法的应用,觉得很好很实用,开一篇博客记录一下。题目是这样的:7 - 6目标编写一个程序读取输入,读到 # 停止,报告 ei 出现的次数。输入输出样例:按照我原先的想法,我可能会这样写:if(ch=='e'&&++ch=='i'){ cnt++;}但是,对于这类问题,还可以运用匹配标记算法进行改进。代码如下:#include &原创 2021-03-23 09:42:02 · 443 阅读 · 0 评论 -
C语言打印字符时的小细节
最近做《CPrimerPlus》《C Primer Plus》《CPrimerPlus》第七章课后题,其中的第二题给了我一点启发。题目是这样的:7 - 2编写一个程序读取输入读到 # 字符为止,程序要打印每个输入的字符以及对应的 ASCIIASCIIASCII 码(十进制),每行打印 8 个字符 - ASCIIASCIIASCII 码 组合。建议:使用字符计数和求模运算符(%)在每八个循环周期时打印一个换行符。输出形式如下:我最先给出的代码为:#include <stdio.h>原创 2021-03-23 09:22:54 · 343 阅读 · 0 评论 -
C语言指针初探
《CPrimerPlus》《C Primer Plus》《CPrimerPlus》第九章“函数”部分专门讲了指针,清晰透彻,现在加入我的一点理解,进行一下总结。ptr = &pooh;//把ptr指向pooh,或者说把pooh的地址赋值给ptrval = *ptr;/* 找出ptr指向的值,*给出存储在指针指向的地址上的值, *ptr相当于获得储存在该地址的值 */ int* pi;//pi指向int类型char* pc;//pc指向c原创 2021-03-29 12:20:21 · 195 阅读 · 0 评论 -
C语言的递归在倒序问题中的处理
看到《CPrimerPlus》《C Primer Plus》《CPrimerPlus》第九章“函数”的课后习题 9−109-109−10 ,引发了一些对于递归地使用的思考。题目如下:目标编写一个 to_base_n() 函数,接受两个参数,且第二个参数在 2~102 ~ 102~10 范围内,然后以第二个参数中指定的进制打印第一个参数的数值。例如,to_base_n(129,8129, 8129,8) 显示结果201201201,也就是 129129129 的八进制数。在一个完整的程序中测试该函数。原创 2021-03-29 21:02:47 · 829 阅读 · 0 评论 -
C语言total+=*start++的解释
《CPrimerPlus》《C Primer Plus》《CPrimerPlus》第十章 “数组和指针” 的10.4.1中给出了一个语句:total+=∗start++total+=*start++total+=∗start++接下来对代码的运行顺序进行一下解构。本代码和下面的代码是等价的: total += *start; start++;即代码的执行流程为:先执行*start解引用,将start指针指向的值进行运算,然后start指针自增。一元运算符*和原创 2021-04-03 12:11:11 · 2246 阅读 · 1 评论 -
C语言基础的排序算法(冒泡排序)
《C Primer Plus》第10章 “数组和指针” 中的习题六涉及到了排序算法的应用,数组中的排序和查找是程序设计中非常基础和重要的算法知识。作为算法入门,现记录之。比较排序/冒泡排序比较排序的基本思想是比较相邻元素的大小关系,并通过交换元素位置的方式调整不符合要求的相邻元素。相邻元素的两两比较,需要通过 n-1 次比较之后才只能保证一个元素到达最终位置。冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元首先比较相邻的元素。若前者比后者大,就进行交换对每一对相邻元素作同样的原创 2021-04-12 13:39:49 · 311 阅读 · 0 评论 -
C语言while的小细节
《C primer plus》的第五章——运算符、表达式和语句,看到思考题第八题的时候,发现了一个以前可能会忽略的点。有关while和n++,n--的问题原创 2021-03-12 20:12:07 · 468 阅读 · 0 评论