1.如何称呼C程序的基本模块?
它们被称为函数。
2.什么是语法错误?给出它们的一个英语例子和C语言例子。
语法错误就是指违背了如何把语句或程序放置在一起的规则。这是一个英语中的例子:“My speak English good.”下面是一个C语言中的例子:
printf
“Where are the parentheses?”;
|
3.什么是语义错误?给出它们的一个英语例子和C语言例子。
语义错误是指含义上的错误。这是英语中的一个例子:“This sentence is excellent Italian.”下面是一个C语言中的例子:
thrice_n = 3 + n;
|
4.Indiana Sloth已经编好了下面的程序,并想征求您的意见。请帮助他评定。
1
2
3
4
5
6
7
8
|
include stdio.h
int
main(
void
)
/* 该程序可显示出一年中有多少周 */
(
int
s
s:=56;
print (There are s weeks in a year.);
return
0;
|
进行修改之后,代码如下:
1
2
3
4
5
6
7
8
9
|
#include <stdio.h>
int
main(
void
)
/* 该程序可显示出一年中有多少周 */
{
int
s;
s=52;
printf
(
"There are %d weeks in a year.\n"
,s);
return
0;
}
|
5.假设下面的每一个例子都是某个完整程序的一部分,它们每个将输出什么结果?
num=2; |
a.Baa Baa Black Sheep.Have you any wool?
(注意在句号之后没有空格;使用" Have"而不是"Have",就可以得到一个空格。)
b.Begone!
O creature of lard!
(注意光标仍留在第二行结束处。)
c.What?
No/nBonzo?
(注意斜线符号"/"没有反斜线符号"\"所具有的作用,它只是简单地作为斜线符号被打印出来。)
d.2 + 2 = 4
(注意每个%d是如何被列表中对应的变量值所替换的。也要注意+的意思就是加法。可以在print()语句内进行计算。)
6.下面哪几个是C的关键字?main,int,function,char,=
int和char(main是一个函数名,函数是C中的一个技术术语,=是一个运算符)。
7.如何以下面的格式输出words和lines的值:“There were 3020 words and 350 lines”?这里3020和350代表两个变量的值。
printf
(
"There were %d words and %d lines.\n"
,words,lines);
|
8.考虑下面的程序:
1
2
3
4
5
6
7
8
9
10
11
12
|
#include <stdio.h>
int
main(
void
)
{
int
a,b;
a=5;
b=2;
b=a;
a=b;
printf
(
"%d %d\n"
, b, a);
return
0;
}
|
请问在第7行、第8行和第9行之后程序的状态分别是什么?
在第7行之后,a为5,b为2。在第8行之后,a和b都为5。在第9行之后,a和b还是为5。注意a不会为2;因为在执行a=b;语句时,b的值已经被改变为5。