Programming abstractions in C阅读笔记:p184-p195

《Programming Abstractions In C》学习第61天,p184-p195总结。

一、技术总结

1.mutual recursion

2.natural number

(1)定义

p184, If you limit the domain of possible values to the set of natural numbers,which are defined simply as the set of nonnegative integers.

3.最大公约数

c 复制代码
/*
 * p191. 3. The greatest common divisor(g.c.d) of two nonnegative integers is the
 * largest integer that divides evenly into both. In the third century B.C., the
 * Greek mathematician Euclid discovered that the greatest common divisor of x
 * and y can always be computed as follows:
 *
 * If x is evenly divisible by y, then y is the greatest common divisor.
 * Otherwise, the greatest common divisor of x and y is always equal to the
 * greatest common divisor of y and the remainder of x divided by y.
 *
 * Use Euclid insight to write a recursive function GCD(X, Y) that computes the
 * greatest common divisor x and y.
 */
#include <stdio.h>

int gcd(int x, int y);

/*
 * function: gcd
 * Usage: int(x, y)
 * ------------
 */
int gcd(int x, int y) {
    if (x % y == 0) {
        return y;
    }
    return gcd(y, x % y);
}


int main() {
    int result;
    result = gcd(16, 28);
    printf("GCD=%d\n", result);  // GCD=4
    return 0;
}

二、英语总结

1.holistic是什么意思?

答:

(1)holistic: holism + -istic。adj. treat the whole of sth and not just a part(整体的)。

(2)holism: holos("whole",来自于"*sole",完整的) + -ism(word-forming element making nouns implying a practice, system, doctrine, etc. 构成词的元素,暗示实践、制度、学说等)。u. the belief that each thing is a whole that is more important the parts that make it up,整体论。

(3)-istic: adjectival word-forming element(构成形容词的元素)。

(4)示例:p185, Maintain a holistic perspective(保持整体的观点)。

2.philosophical是什么意思?

(1)philosophical: philosophy + -ical。adj. relating to the study of philosophy(哲学的)。

(2)philosophy: philo-("loving") + sophia("knowledge, wisdom"),哲学。

3.devote是什么意思?

答:de-(down from,away from, 离开) + vow(to vow"make a promise to do sth, 发誓"),即as if by vow。

(1) vt. to use sth for a particular purpose(使用)。p185,In Chapter 2 of The Art and Science of C, I devote one section to the philosophical concepts of holism and reductionnism(在《在C语言的科学与艺术》第二章,我专门用一节来介绍整体论与还原论这两个哲学概念。)

4.odds are good是什么意思?

答:

(1)odds: n. the probalility that a particular thing will or will not happend(可能性)。

(2)odds are good: There is a high probability that it will happen(可能性很大)。

(3)示例:p185,After all, when you write a program, the odds are good--even if you are an experienced programmer--that your program won't work the first time。

三、参考资料

1. 编程

(1)Eric S.Roberts,《Programming Abstractions in C》:https://book.douban.com/subject/2003414

2. 英语

(1)Etymology Dictionary:https://www.etymonline.com

(2) Cambridage Dictionary:https://dictionary.cambridge.org

欢迎搜索及关注:编程人(a_codists)

相关推荐
许长安2 小时前
c/c++ static关键字详解
c语言·c++·经验分享·笔记
逐步前行3 小时前
C数据结构--排序算法
c语言·数据结构·排序算法
许长安5 小时前
C/C++中的extern关键字详解
c语言·开发语言·c++·经验分享·笔记
奔跑吧邓邓子6 小时前
【C语言实战(71)】C语言进阶:树与图的奇妙数据之旅
c语言···开发实战
一袋米扛几楼986 小时前
【软件安全】C语言特性 (C Language Characteristics)
java·c语言·安全
神仙别闹7 小时前
基于C语言 HTTP 服务器客户端的实验
服务器·c语言·http
GilgameshJSS8 小时前
STM32H743-ARM例程40-U_DISK_IAP
c语言·arm开发·stm32·单片机·嵌入式硬件
No0d1es9 小时前
电子学会青少年软件编程(C/C++)1级等级考试真题试卷(2025年9月)
java·c语言·c++·青少年编程·电子学会·真题·一级
小龙报10 小时前
《算法通关指南数据结构和算法篇(4)--- 队列和queue》
c语言·开发语言·数据结构·c++·创业创新·学习方法·visual studio
序属秋秋秋13 小时前
《Linux系统编程之开发工具》【实战:倒计时 + 进度条】
linux·运维·服务器·c语言·c++·ubuntu·系统编程