- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《程序设计语言——C 》第1版第1次印刷勘误(总)
P8 表2-2。
表2-2 C语言中全部基本数据类型
称 占用字节数 取 值 范 围 有效数字 [signed] char 有符号字符型 1 -128 ~ 127 unsigned char 无符号字符型 1 0 ~ 255 [signed] short [int] 有符号短整型 2 -32768 ~ 32767 unsigned short [int] 无符号短整型 2 0 ~ 65535 [signed] int 有符号整型 2 -32768 ~ 32767 unsigned [int] 无符号整型 2 0 ~ 65535 [signed] long [int] 有符号长整型 4 -231 ~(231-1) unsigned long [int] 无符号长整型 4 0 ~(232-1) float 实型 4 -1038 ~ 1038 6 ~ 7位 double 双精度实型 8 -10308 ~ 10308 15 ~ 16位 红色字处,原为0 ~ 65536,是错误的。
P73
教材第73页公式2n-1是错的,应改为2(n-1)printf(sum=%tf\n,sum);
正确的应为:printf(sum=%lf\n,sum); t改为小写的L
P136 图
图7-4 插入法排序示意图
正确的图如下:
注意蓝色括号的位置。
P157
第14行后半部分,第15行,原内容是:
如果第一个字符串大于第二个字符串,则返回值为1;如果第一个字符串小于第二个字符串,则返回值为–1。
应改为:
如果第一个字符串大于第二个字符串,则返回值为正数;如果第一个字符串小于第二个字符串,则返回值为负数。
第19, 20行,原内容是:
上面第一个函数调用比较结果为0,第二个函数调用比较结果为1,第三个函数调用比较结果为–1。
应改为:
上面第一个函数调用比较结果为0,第二个函数调用比较结果是一个正数,第三个函数调用比较结果是一个负数。
P176
例8-4分别取出一个整数的四个字节。 //改为:一个长整型数
#include stdio.h
main( )
{
int k;
union
{
int i; //改为: long i;
char c[4];
}a;
printf(Please input an integer:\n);
scanf(%d, a.i); //改为: %ld 注意:在d之前加小写的L
printf(four bytes:);
for(k=3; k=0; k--)
printf(%d\t, (int)a.c[k]); /*一个整数的四个字节分别对应字符数组的每个元素*/
printf(\n); //改为:一个长整型数
}
以上内容已发出版社
=======================================
以下未发
P38 倒数两行,原内容为:
x1=└┘-0.08
x2=└┘-4.92
(删掉空格)改为:
x1=-0.08
x2=-4.92
(备注:负号也占一个字符位置)
P56 倒数第6~9行
if(x = 10)
if(x10) y = -10; /* 内嵌if语句 */
else if(x == 10) y = 5;
else y = 20;
黑框中内容应删除
P57 倒数第2~4行,原内容是:
它等价于:
x = ab ? a : (cb ? c : b);
先计算右侧的条件运算符,然后将计算结果带入表达式,继续计算左侧的条件运算符。若a=1,b=3,c=5,则x的值为3。
cb ? c : b)作为赋值号右边表达式的值。
P75,例4-19 之前的一段,描述:“是素数”和“不是素数”反了。
原描述:
程序中A行的break语句跳出它所在的for语句,然后执行B行的if语句。for循环结束后,可根据循环变量i的值判定x是否为素数,如果i=b,表示在A行,在范围2~之内有一个i能把x除尽,break语句跳出循环,此时x是素数。如果在范围2~之内的所有的i都不能把x除尽,则for循环结束后,i的值是b+1,即条件 i=b+1 成立,表示x不是素数。
应修改为:
程序中A行的break语句跳出它所在的for语句,然后执行B行的if语句。for循环结束后,可根据循环变量i的值判定x是否为素数,如果i=b,表示在A行,在范围2~之内有一个i能把x除尽,break语句跳出循环,此时x不是素数。
文档评论(0)