C Primer Plus 第二章 课后答案

目录

 

复习题

1.C语言的基本模块是什么?

2.什么是语法错误?写出一个英语例子和C语言例子。

3.什么是语义错误?写出一个英语例子和C语言例子。

4.Indiana Sloth编写了下面的程序,并征求你的意见。请帮助他评定。

5.假设下面的4个例子都是完整程序中的一部分,它们都输出什么结果?

6.在main、int、function、char、=中,哪些是C语言的关键字?

7.如何以下面的格式输出变量words和lines的值(这里,3020和350代表两个变量的值)? There were 3020 words and 350 lines.

8.考虑下面的程序:

9.考虑下面的程序:

编程题

1.编写一个程序,调用一次 printf()函数,把你的姓名打印在一行。再调用一次 printf()函数,把你的姓名分别打印在两行。然后,再调用两次printf()函数,把你的姓名打印在一行。输出应如下所示(当然要把示例的内容换成你的姓名):

2.编写一个程序,打印你的姓名和地址。

3.编写一个程序把你的年龄转换成天数,并显示这两个值。这里不用考虑闰年的问题。

4.编写一个程序,生成以下输出:

5.编写一个程序,生成以下输出:

6.编写一个程序,创建一个整型变量toes,并将toes设置为10。程序中还要计算toes的两倍和toes的平方。该程序应打印3个值,并分别描述以示区分

7.许多研究表明,微笑益处多多。编写一个程序,生成以下格式的输出:

8.在C语言中,函数可以调用另一个函数。编写一个程序,调用一个名为one_three()的函数。该函数在一行打印单词“one”,再调用第2个函数two(),然后在另一行打印单词“three”。two()函数在一行显示单词“two”。main()函数在调用 one_three()函数前要打印短语“starting now:”,并在调用完毕后显示短语“done!”。因此,该程序的输出应如下所示:


复习题

1.C语言的基本模块是什么?

函数

2.什么是语法错误?写出一个英语例子和C语言例子。

3.什么是语义错误?写出一个英语例子和C语言例子。

4.Indiana Sloth编写了下面的程序,并征求你的意见。请帮助他评定。

include studio.h 
int main{void} /* 该程序打印一年有多少周 /* 
( int s 
s := 56; 
print(There are s weeks in a year.); 
return 0;

行一:include→#include    studio.h→《stdio.h》

行二:{}→()

行三:(→{    s→s;

行四::=→=

行五:There are s weeks in a year.→"There are %d weeks in a year.", s

行六:;→;}

5.假设下面的4个例子都是完整程序中的一部分,它们都输出什么结果?

a. printf("Baa Baa Black Sheep."); printf("Have you any wool?\n"); 
b. printf("Begone!\nO creature of lard!\n"); 
c.  printf("What?\nNo/nfish?\n"); 
d.  int num; num = 2; printf("%d + %d = %d", num, num, num + num);

a.

Baa Baa Black Sheep.Have you any wool?

b.

Begone!

O creature of lard!

c.

What?

No/nfish?

d.

2 + 2 = 4

6.在main、int、function、char、=中,哪些是C语言的关键字?

关键字是:

int   char

【注意区分关键字和其它】

7.如何以下面的格式输出变量words和lines的值(这里,3020和350代表两个变量的值)? There were 3020 words and 350 lines.

printf("There were %d words and %d lines", words, lines);

8.考虑下面的程序:

#include <stdio.h> 
int main(void) 
{
    int a, b; 
    a = 5; b = 2; /* 第7行 */ 
    b = a; /* 第8行 */ 
    a = b; /* 第9行 */ 
    printf("%d %d\n", b, a);
    return 0; 
}

第7行:a = 5, b = 2

第8行:b = 5, a = 5

第9行:a = 5, b = 5

9.考虑下面的程序:

#include <stdio.h> 
int main(void) 
{ 
    int x, y; 
    x = 10; 
    y = 5;   /* 第7行 */ 
    y = x + y; /*第8行*/ 
    x = x*y;  /*第9行*/ 
    printf("%d %d\n", x, y); 
    return 0; 
}

第七行:x = 10, y = 5

第八行:x = 10, y = 15

第九行:x = 150, y = 15

编程题

1.编写一个程序,调用一次 printf()函数,把你的姓名打印在一行。再调用一次 printf()函数,把你的姓名分别打印在两行。然后,再调用两次printf()函数,把你的姓名打印在一行。输出应如下所示(当然要把示例的内容换成你的姓名):

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Gong Yueyang\n");
    printf("Gong\nYueyang\n");
    printf("Gong ");
    printf("Yueyang\n");
    return 0;
}

2.编写一个程序,打印你的姓名和地址。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Gong Yueyang\nxxxxxxxxx\n");
    return 0;
}

3.编写一个程序把你的年龄转换成天数,并显示这两个值。这里不用考虑闰年的问题。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("%d years is %d days", 21, 21 * 365);
    return 0;
}

4.编写一个程序,生成以下输出:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("For he's a jolly good fellow!\n");
    printf("For he's a jolly good fellow!\n");
    printf("For he's a jolly good fellow!\n");
    printf("Which nobody can deny!\n");
    return 0;
}

5.编写一个程序,生成以下输出:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Brazil, Russia, India, China\nIndia, China,\nBrazil, Russia\n");
    return 0;
}

6.编写一个程序,创建一个整型变量toes,并将toes设置为10。程序中还要计算toes的两倍和toes的平方。该程序应打印3个值,并分别描述以示区分

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int tose = 10;
    printf("tose is %d\n", tose);
    printf("tose^2 is %d\n",tose * tose);
    printf("tose*2 is %d\n", tose*2);
    return 0;
}

7.许多研究表明,微笑益处多多。编写一个程序,生成以下格式的输出:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Smile!Smile!Smile!\n");
    printf("Smile!Smile!\n");
    printf("Smile!\n");
    return 0;
}

8.在C语言中,函数可以调用另一个函数。编写一个程序,调用一个名为one_three()的函数。该函数在一行打印单词“one”,再调用第2个函数two(),然后在另一行打印单词“three”。two()函数在一行显示单词“two”。main()函数在调用 one_three()函数前要打印短语“starting now:”,并在调用完毕后显示短语“done!”。因此,该程序的输出应如下所示:

#include <stdio.h>
#include <stdlib.h>

int one_three();
int two();

int main()
{
    printf("starting now:\n");
    one_three();
    printf("done!\n");
    return 0;
}

int one_three()
{
    printf("one\n");
    two();
    printf("three\n");
}

int two()
{
    printf("two\n");
}

猜你喜欢

转载自blog.csdn.net/asdgyy/article/details/82858902