1. /*rain.c 针对若干年的降水量数据,计算年降水总量.年降水平均量,以及月降水平均量*/ #include <stdio.h> #define MONTHS 12 #define YEARS 5 int main (void) { //把数组初始化为2000到2004年的降水量数据 const float rain[YEARS][MONTHS] = //const声明和初始化数组可保护数据 { {4.3, 4.3, 4.3, 3.0, 2.0, 1.2, 0.2, 0.2, 0.4,…
1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i; printf("ch[%d] = %c\n", i-97, ch[i-97]); } printf("That is all! thanks~\n"); return 0; } 这是之前写的,有点乱,改了些如下: #include int main(void) {…
Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; printf("Convert mins to hours and minutes\n"); printf("Please enter the mins: \n"); scanf("%d", &mins); while (mins >…
Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[20]; printf("My Handsome Master, please enter your name: \n"); scanf("%s %s", &name, &family); //名字和姓氏一起读的话,需要先输入名字再输入姓氏,中间要有空白字…
这章感觉好难啊,放个别人的总结. // 多维数组和指针 #include <stdio.h> int main(void) { int zippo[4][2] = {{2, 4}, {6, 8}, {1, 3}, {5, 7}}; /* zippo[0]是一个整数大小对象的地址,而zippo是两个整数大小对象的地址. 因为(一个)整数和两个整数组成的数组开始于同一个地址,因此zippo和zippo[0]具有相同的数值. 验证: 输出也显示出二维数组zippo的地址和一维数组zippo[0]的地…
1.题略 /*返回较小值,设计驱动程序测试该函数*/ #include <stdio.h> double min (double a, double b); int main (void) { double x, y; printf ("Please enter two numbers: \n"); scanf ("%lf %lf", &x, &y); printf ("The smaller one is %lf\n"…
1.题略 #include <stdio.h> int main(void) { ; printf("Please enter text here(end with Ctrl + Z):\n"); while (ch=getchar() != EOF) i++; printf("There are %d characters in text.\n", i); ; } 运行结果 输入第一个Ctrl+Z时,并没有结束,下一行再输入Ctrl+Z才检测到EOF.…
Review long代替int类型变量的原因是什么? 在您的系统中,long可以容纳比int更大的数:如果您确实需要处理更大的值,那么使用一种在所有系统上都保证至少是32位的类型会使程序的可移植性更好.(PS:用sizeof(int)查看我电脑中的int发现是4字符即32位,和long一样,但是long是标准的32位,int在我这64位的系统中定义的是32位,在其他系统可能是16位.无论如何,有个标准,最好按标准来设定,这样移植起来就方便) 要获得一个32位的有符号整数,可以使用哪些可以值得数…
目录 前言 1. 二进制位数组 1.1 位数组的表示 1.2 GETBIT 命令的实现 1.3 SETBIT 命令的实现 1.4 BITECOUNT 命令的实现 1.5 BITOP 命令的实现 2. 慢查询日志 2.1 慢查询记录的保存 2.2 慢查询日志的阅览与删除 2.3 添加新日志 3. 监视器 最后 前言 参考资料:<Redis设计与实现 第二版>: 第三部分为独立功能的实现,主要由以下模块组成:发布订阅.事务.Lua 脚本.排序.二进制位数组.慢查询日志.监视器: 本篇将介绍 Red…
习题10.21 解释map和set容器的差别,以及他们各自适用的情况. 解答: map容器和set容器的差别在于: map容器是键-值对的集合,而set容器只是键的集合: map类型适用于需要了解键与值的对应的情况,例如,字典(需要了解单词(键)与其解释(值)的对应情况),而set类型使用于只需判断某值是否存在的情况,例如,判断某人的名字是否在黑名单中. 习题20.22 解释set和list容器的差别,以及他们各自适用的情况. 解答: set容器和list容器的主要差别在于: set容器中的元素…