当前位置:嗨网首页>书籍在线阅读

03-第2章复习题答案

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

A.2 第2章复习题答案

1.它们都叫作函数。

2.语法错误违反了组成语句或程序的规则。这是一个有语法错误的英文例子:Me speak English good.。这是一个有语法错误的C语言例子: printf"Where are the parentheses?";

3.语义错误是指含义错误。这是一个有语义错误的英文例子:This sentence is excellent Czech.[1]。这是一个有语义错误的C语言例子: thrice_n = 3 + n; [2]

4.第1行:以一个#开始; studio.h 应改成 stdio.h ;然后用一对尖括号把 stdio.h 括起来。

第2行:把 {} 改成 () ;注释末尾把 /* 改成 */

第3行:把 ( 改成{

第4行: int s 末尾加上一个分号。

第5行没问题。

第6行:把 := 改成 = ,赋值用 = ,而不是用 := (这说明Indiana Sloth了解Pascal)。另外,用于赋值的值 56 也不对,一年有 52 周,不是 56 周。

第7行应该是: printf("There are %d weeks in a year.\n", s);

第9行:原程序中没有第 9 行,应该在该行加上一个右花括号}。

修改后的程序如下:

#include <stdio.h>
int main(void) /* this prints the number of weeks in a year */
{
     int s;
     s = 52;
     printf("There are %d weeks in a year.\n", s);
     return 0;
}

5.a. Baa Baa Black Sheep.Have you any wool? (注意, Sheep.Have 之间没有空格)

b. Begone!

O creature of lard!

c. What?

No/nfish?

(注意斜杠 / 和反斜杠 \ 的效果不同, / 只是一个普通的字符,原样打印)

d. 2 + 2 = 4

(注意,每个 %d 与列表中的值相对应。还要注意, + 的意思是加法,可以在 printf() 语句内部计算)

6.关键字是 intcharmain 是一个函数名; function 是函数的意思; = 是一个运算符)。

7. printf("There were %d words and %d lines.\n", words, lines);

8.执行完第 7 行后, a5b2 。执行完第 8 行后, ab 都是 5 。执行完第 9 行后, ab 仍然是 5 (注意, a 不会是 2 ,因为在执行 a = b; 时, b 的值已经被改为 5 )。

9.执行完第 7 行后, x10b5 。执行完第 8 行后, x10y15 。执行完第 9 行后, x150y15