文档视界 最新最全的文档下载
当前位置:文档视界 › 大一下册C++语言程序设计-第四版答案

大一下册C++语言程序设计-第四版答案

第一章概述

1-1 简述计算机程序设计语言的发展历程。

解:

迄今为止计算机程序设计语言的发展经历了机器语言、汇编语言、高级语言等阶段,C++语言是一种面向对象的1-2 面向对象的编程语言有哪些特点?

解:

面向对象的编程语言与以往各种编程语言有根本的不同,它设计的出发点就是为了能更直接的描述客观世界中存系。面向对象的编程语言将客观事物看作具有属性和行为的对象,通过抽象找出同一类对象的共同属性(静态特成类。通过类的继承与多态可以很方便地实现代码重用,大大缩短了软件开发周期,并使得软件风格统一。因此能够比较直接地反问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开面向对象的编程语言。

1-3 什么是结构化程序设计方法?这种方法有哪些优点和缺点?

解:

结构化程序设计的思路是:自顶向下、逐步求精;其程序结构是按功能划分为若干个基本模块;各模块之间的关独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。结构解与功能抽象,自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务分解成许多易于控制维护。

虽然结构化程序设计方法具有很多的优点,但它仍是一种面向过程的程序设计方法,它把数据和处理数据的过程据结构改变时,所有相关的处理过程都要进行相应的修改,每一种相对于老问题的新方法都要带来额外的开销,由于图形用户界面的应用,程序运行由顺序运行演变为事件驱动,使得软件使用起来越来越方便,但开发起来却能很难用过程来描述和实现,使用面向过程的方法来开发和维护都将非常困难。

1-4 什么是对象?什么是面向对象方法?这种方法有哪些特点?

解:

从一般意义上讲,对象是现实世界中一个实际存在的事物,它可以是有形的,也可以是无形的。对象是构成世界的静态特征和动态特征。面向对象方法中的对象,是系统中用来描述客观事物的一个实体,它是用来构成系统的一组行为构成。

面向对象的方法将数据及对数据的操作方法放在一起,作为一个相互依存、不可分离的整体--对象。对同类型对中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口,与外界发生关系,对象与对象之间序模块间的关系更为简单,程序模块的独立性、数据的安全性就有了良好的保障。通过实现继承与多态性,还可使得软件的开发和维护都更为方便。

面向对象方法所强调的基本原则,就是直接面对客观存在的事物来进行软件开发,将人们在日常生活中习惯的思开发中,使软件开发从过分专业化的方法、规则和技巧中回到客观世界,回到人们通常的思维。

1-5 什么叫做封装?

解:

封装是面向对象方法的一个重要原则,就是把对象的属性和服务结合成一个独立的系统单位,并尽可能隐蔽对象1-6 面向对象的软件工程包括哪些主要内容?

解:

面向对象的软件工程是面向对象方法在软件工程领域的全面应用,它包括面向对象的分析(OOA)、面向对象的(OOP)、面向对象的测试(OOT)和面向对象的软件维护(OOSM)等主要内容。

1-7 简述计算机内部的信息可分为几类?

解:

计算机内部的信息可以分成控制信息和数据信息二大类;控制信息可分为指令和控制字两类;数据信息可分为数1-8 什么叫二进制?使用二进制有何优点和缺点?

解:

二进制是基数为2,每位的权是以2 为底的幂的进制,遵循逢二进一原则,基本符号为0和1。采用二进制码表易于物理实现;2.二进制数运算简单;3.机器可靠性高;4.通用性强。其缺点是它表示数的容量较小,表示同一更多的位数。

1-9 请将以下十进制数值转换为二进制和十六进制补码:

(1)2 (2)9 (3)93

(4)-32 (5)65535 (6)-1

解:

(1)(2)10 = (10)2 = (2)16

(2)(9)10 = (1001)2 = (9)16

(3)(93)10 = (1011101)2 = (5D)16

(4)(-32)10 = (11100000)2 = (E0)16

(5)(65535)10 = (11111111 11111111)2 = (FFFF)16

(6)(-1)10 = (11111111 11111111)2 = (FFFF)16

1-10 请将以下数值转换为十进制:

(1)(1010)2 (2)(10001111)2 (3)(01011111 11000011)2

(4)(7F)16 (5)(2D3E)16 (6)(F10E)16

解:

(1)(1010)2 = (10)10

(2)(10001111)2 = (143)10

(3)(01011111 11000011)2 = (24515)10

(4)(7F)16 = (127)10

(5)(2D3E)16 = (11582)10

(6)(F10E)16 = (61710)10

1-11 简要比较原码、反码、补码等几种编码方法。

解:

原码:将符号位数字化为 0 或 1,数的绝对值与符号一起编码,即所谓"符号──绝对值表示"的编码。

正数的反码和补码与原码表示相同。

负数的反码与原码有如下关系:

符号位相同(仍用1表示),其余各位取反(0变1,1变0)。

补码由该数反码的最末位加1求得。

第二章 C++简单程序设计

2-1 C++语言有那些主要特点和优点?

解:

C++语言的主要特点表现在两个方面,一是全面兼容C,二是支持面向对象的方法。C++是一个更好的C,它保持言、具有良好的可读性和可移植性等特点,对C的类型系统进行了改革和扩充,因此C++比C更安全,C++的编误。 C++语言最重要的特点是支持面向对象。

2-2 下列标识符哪些是合法的?

Program, -page, _lock, test2, 3in1, @mail, A_B_C_D

解:

Program, _lock, test2, A_B_C_D是合法的标识符,其它的不是。

2-3 例2.1中每条语句的作用是什么?

#include

void main(void)

{

cout<<"Hello!\n";

cout<<"Welcome to c++!\n";

}

解:

#include //指示编译器将文件iostream.h中的代码

//嵌入到该程序中该指令所在的地方

void main() //主函数名,void 表示函数没有返回值

{ //函数体标志

cout<<"Hello!\n"; //输出字符串Hello!到标准输出设备(显示器)上。

cout<<"Welcome to c++!\n"; //输出字符串Welcome to c++!

}

在屏幕输出如下:

Hello!

Welcome to c++!

2-4 使用关键字const而不是#define语句的好处有哪些?

解:

const定义的常量是有类型的,所以在使用它们时编译器可以查错;而且,这些变量在调试时仍然是可见的。

2-5 请写出C++语句声明一个常量PI,值为3.1416;再声明一个浮点型变量a,把PI的值赋给a。

解:

const float PI = 3.1416;

float a = PI;

2-6 在下面的枚举类型中,Blue的值是多少?

enum COLOR { WHITE, BLACK = 100, RED, BLUE, GREEN = 300 };

解:

Blue = 102

2-7 注释有什么作用?C++中有哪几种注释的方法?他们之间有什么区别?

解:

注释在程序中的作用是对程序进行注解和说明,以便于阅读。编译系统在对源程序进行编译时不理会注释部分,不起任何作用。而且由于编译时忽略注释部分,所以注释内容不会增加最终产生的可执行程序的大小。适当地使性。在C++中,有两种给出注释的方法:一种是延用C语言方法,使用"/*"和"*/"括起注释文字。另一种方法是它所在行的行尾,所有字符都被作为注释处理。

2-8 什么叫做表达式?x = 5 + 7是一个表达式吗?它的值是多少?

解:

任何一个用于计算值的公式都可称为表达式。x = 5 + 7是一个表达式,它的值为12。

2-9 下列表达式的值是多少?

1. 201 / 4

2. 201 % 4

3. 201 /

4.0

解:

1. 50

2. 1

3. 50.25

2-10 执行完下列语句后,a、b、c三个变量的值为多少?

a = 30;

b = a++;

c = ++a;

解:

a:32 ; b:30 ; c:32;

2-11 在一个for循环中,可以初始化多个变量吗?如何实现?

解:

在for循环设置条件的第一个";"前,用,分隔不同的赋值表达式。

例如:

for (x = 0, y = 10; x < 100; x++, y++)

2-12 执行完下列语句后,n的值为多少?

int n;

for (n = 0; n < 100; n++)

解:

n的值为100

2-13 写一条for语句,计数条件为n从100到200,步长为2;然后用while和do…while语句完成同样的循环解:

for循环:

for (int n = 100; n <= 200; n += 2);

while循环:

int x = 100;

while (n <= 200)

n += 2;

do…while循环:

int n = 100;

do

{

n += 2;

} while(n <= 200);

2-14 if ( x = 3 ) 和 if (x = = 3) 这两条语句的差别是什么?

解:

语句if(x = 3)把3赋给x,赋值表达式的值为true,作为if语句的条件;语句if(x == 3)首先判断x的值是为ture,否则为false。

2-15 什么叫做作用域?什么叫做局部变量?什么叫做全局变量,如何使用全局变量?

解:

作用域是一个标识符在程序正文中有效的区域。局部变量,一般来讲就是具有块作用域的变量;全局变量,就是2-16 已知x、y两个变量,写一条简单的if语句,把较小的的值赋给原本值较大的变量。

解:

if (x > y)

x = y;

else // y > x || y == x

y = x;

2-17 修改下面这个程序中的错误,改正后它的运行结果是什么?

#include

void main()

int i

int j;

i = 10; /* 给i赋值

j = 20; /* 给j赋值 */

cout << "i + j = << i + j; /* 输出结果 */

return 0;

}

解:

改正:

#include

int main()

{

int i;

int j;

i = 10; // 给i赋值

j = 20; /* 给j赋值 */

cout << "i + j = " << i + j; /* 输出结果 */

return 0;

}

程序运行输出:

i + j = 30

2-18 编写一个程序,运行时提示输入一个数字,再把这个数字显示出来。

解:

源程序:

#include

int main()

{

int i;

cout << "请输入一个数字:";

cin >> i;

cout << "您输入一个数字是" << i << endl;

return 0;

}

程序运行输出:

请输入一个数字:5

您输入一个数字是5

2-19 C++有哪几种数据类型?简述其值域。编程显示你使用的计算机中的各种数据类型的字节数。

解:

源程序:

#include

int main()

{

cout << "The size of an int is:\t\t" << sizeof(int) << " bytes.\n";

cout << "The size of a short int is:\t" << sizeof(short) << " bytes.\n";

cout << "The size of a long int is:\t" << sizeof(long) << " bytes.\n";

cout << "The size of a char is:\t\t" << sizeof(char) << " bytes.\n";

cout << "The size of a float is:\t\t" << sizeof(float) << " bytes.\n";

cout << "The size of a double is:\t" << sizeof(double) << " bytes.\n";

return 0;

}

程序运行输出:

The size of an int is: 4 bytes.

The size of a short int is: 2 bytes.

The size of a long int is: 4 bytes.

The size of a char is: 1 bytes.

The size of a float is: 4 bytes.

The size of a double is: 8 bytes.

2-20 打印ASCII码为32~127的字符。

解:

#include

int main()

{

for (int i = 32; i<128; i++)

cout << (char) i;

return 0;

}

程序运行输出:

!"#$%G'()*+,./0123456789:;<>?@ABCDEFGHIJKLMNOP_QRSTUVWXYZ[\]^'abcdefghijklmnopqrstuvwxyz<|>~s 2-21 运行下面的程序,观察其输出,与你的设想是否相同?

#include

int main()

{

unsigned int x;

unsigned int y = 100;

unsigned int z = 50;

x= y - z;

cout << "Difference is: " << x;

x = z - y;

cout << "\nNow difference is: " << x <

return 0;

}

解:

程序运行输出:

Difference is: 50

Now difference is: 4294967246

注意,第二行的输出并非 -50,注意x、y、z的数据类型。

2-22 运行下面的程序,观察其输出,体会i++与++i的差别。

#include

int main()

{

int myAge = 39; // initialize two integers

int yourAge = 39;

cout << "I am: " << myAge << " years old.\n";

cout << "You are: " << yourAge << " years old\n";

myAge++; // postfix increment

++yourAge; // prefix increment

cout << "One year passes...\n";

cout << "I am: " << myAge << " years old.\n";

cout << "You are: " << yourAge << " years old\n";

cout << "Another year passes\n";

cout << "I am: " << myAge++ << " years old.\n";

cout << "You are: " << ++yourAge << " years old\n";

cout << "Let's print it again.\n";

cout << "I am: " << myAge << " years old.\n";

cout << "You are: " << yourAge << " years old\n";

return 0;

}

解:

程序运行输出:

I am 39 years old

You are 39 years old

One year passes

I am 40 years old

You are 40 years old

Another year passes

I am 40 years old

You are 41 years old

Let's print it again

I am 41 years old

You are 41 years old

2-23 什么叫常量?什么叫变量?

解:

所谓常量是指在程序运行的整个过程中其值始终不可改变的量,除了用文字表示常量外,也可以为常量命名,这过程中其值可以变化的量称为变量,变量是需要用名字来标识的。

2-24 变量有哪几种存储类型?

解:

变量有以下几种存储类型:

auto存储类型:采用堆栈方式分配内存空间,属于一时性存储,其存储空间可以被若干变量多次覆盖使用;register存储类型:存放在通用寄存器中;

extern存储类型:在所有函数和程序段中都可引用;

static存储类型:在内存中是以固定地址存放的,在整个程序运行期间都有效。

2-25 写出下列表达式的值:

1. 2 < 3 && 6 < 9

2. ! ( 4<7 )

3. ! ( 3 > 5) || (6 < 2 )

解:

1. true

2. false

3. true

2-26 若a = 1,b = 2,c = 3,下列各式的结果是什么?

1. a | b - c

2. a ^ b & -c

3. a & b | c

4. a | b & c

解:

1. -1

2. 1

3. 3

4. 3

2-27 若a = 1,下列各式的结果是什么?

1. ! a | a

2. ~ a | a

3. a ^ a

4. a >> 2

解:

1. 1

2. -1

3. 0

4. 0

2-28 编写一个完整的程序,实现功能:向用户提问"现在正在下雨吗?",提示用户输入Y或N。若输入为Y,显为N,显示"现在没有下雨。";否则继续提问"现在正在下雨吗?"

解:

源程序:

#include

#include

void main()

{

char flag;

while(1)

{

cout << "现在正在下雨吗?(Yes or No):";

cin >> flag;

if ( toupper(flag) == 'Y')

{

cout << "现在正在下雨。";

break;

}

if ( toupper(flag) == 'N')

{

cout << "现在没有下雨。";

break;

}

}

}

程序运行输出:

现在正在下雨吗?(Yes or No):x

现在正在下雨吗?(Yes or No):l

现在正在下雨吗?(Yes or No):q

现在正在下雨吗?(Yes or No):n

现在没有下雨。

或:

现在正在下雨吗?(Yes or No):y

现在正在下雨。

2-29 编写一个完整的程序,运行时向用户提问"你考试考了多少分?(0~100)",接收输入后判断其等级,显示解:

#include

void main()

{

int i,score;

cout << "你考试考了多少分?(0~100):";

cin >> score;

if (score>100 || score<0)

cout << "分数值必须在0到100之间!";

else

{

i = score/10;

switch (i)

{

case 10:

case 9:

cout << "你的成绩为优!";

break;

case 8:

cout << "你的成绩为良!";

break;

case 7:

case 6:

cout << "你的成绩为中!";

break;

default:

cout << "你的成绩为差!";

}

}

}

程序运行输出:

你考试考了多少分?(0~100):85

你的成绩为良!

2-30 (1)实现一个简单的菜单程序,运行时显示"Menu: A(dd) D(elete) S(ort) Q(uit), Select one:"提示删除,S表示排序,Q表示退出,输入为A、D、S时分别提示"数据已经增加、删除、排序。"输入为Q时程序结进行判断,用break、continue控制程序流程。

解:

#include

#include

void main()

{

char choice,c;

while(1)

{

cout << "Menu: A(dd) D(elete) S(ort) Q(uit), Select one:";

cin >> c;

choice = toupper(c);

if (choice == 'A')

{

cout << "数据已经增加. " << endl;

continue;

}

else if (choice == 'D')

{

cout << "数据已经删除. " << endl;

continue;

}

else if (choice == 'S')

{

cout << "数据已经排序. " << endl;

continue;

}

else if (choice == 'Q')

break;

}

}

程序运行输出:

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:a

数据已经增加.

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:d

数据已经删除.

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:s

数据已经排序.

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:q

(2)实现一个简单的菜单程序,运行时显示"Menu: A(dd) D(elete) S(ort) Q(uit), Select one:"提示用户除,S表示排序,Q表示退出,输入为A、D、S时分别提示"数据已经增加、删除、排序。"输入为Q时程序结束解:

源程序:

#include

#include

void main()

{

char choice;

while(1)

{

cout << "Menu: A(dd) D(elete) S(ort) Q(uit), Select one:";

cin >> choice;

switch(toupper(choice))

{

case 'A':

cout << "数据已经增加. " << endl;

break;

case 'D':

cout << "数据已经删除. " << endl;

break;

case 'S':

cout << "数据已经排序. " << endl;

break;

case 'Q':

exit(0);

break;

default:

;

}

}

}

程序运行输出:

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:a

数据已经增加.

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:d

数据已经删除.

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:s

数据已经排序.

Menu: A(dd) D(elete) S(ort) Q(uit), Select one:q

2-31 用穷举法找出1~100间的质数,显示出来。分别使用while,do-while,for循环语句实现。解:

源程序:

使用while循环语句:

#include

#include

void main()

{

int i,j,k,flag;

i = 2;

while(i <= 100)

{

flag = 1;

k = sqrt(i);

j = 2;

while (j <= k)

{

if(i%j == 0)

{

flag = 0;

break;

}

j++;

}

if (flag)

cout << i << "是质数." << endl;

i++;

}

}

使用do…while循环语句:

#include

#include

void main()

{

int i,j,k,flag;

i = 2;

do{

flag = 1;

k = sqrt(i);

j = 2;

do{

if(i%j == 0)

{

flag = 0;

break;

}

j++;

}while (j <= k);

if (flag)

cout << i << "是质数." << endl; i++;

}while(i <= 100);

}

使用for循环语句:

#include

#include

void main()

{

int i,j,k,flag;

for(i = 2; i <= 100; i++)

{

flag = 1;

k = sqrt(i);

for (j = 2; j <= k; j++)

{

if(i%j == 0)

{

flag = 0;

break;

}

}

if (flag)

cout << i << "是质数." << endl; }

}

程序运行输出:

2是质数.

3是质数.

5是质数.

7是质数.

11是质数.

13是质数.

17是质数.

19是质数.

23是质数.

29是质数.

31是质数.

37是质数.

41是质数.

43是质数.

47是质数.

53是质数.

59是质数.

61是质数.

67是质数.

71是质数.

73是质数.

79是质数.

83是质数.

89是质数.

97是质数.

2-32 比较Break语句与Continue语句的不同用法。

解:

Break使程序从循环体和switch语句内跳出,继续执行逻辑上的下一条语句,不能用在别处;

continue 语句结束本次循环,接着开始判断决定是否继续执行下一次循环;

2-33 定义一个表示时间的结构体,可以精确表示年、月、日、小时、分、秒;提示用户输入年、月、日、小时出来。

解:

源程序见"实验指导"部分实验二

2-34 在程序中定义一个整型变量,赋以1~100的值,要求用户猜这个数,比较两个数的大小,把结果提示给用while、do…while语句实现循环。

解:

//使用while语句

#include

void main() {

int n = 18;

int m = 0;

while(m != n)

{

cout << "请猜这个数的值为多少?(0~~100):";

cin >> m;

if (n > m)

cout << "你猜的值太小了!" << endl;

else if (n < m)

cout << "你猜的值太大了!" << endl;

else

cout << "你猜对了!" << endl;

}

}

//使用do…while语句

#include

void main() {

int n = 18;

int m = 0;

do{

cout << "请猜这个数的值为多少?(0~~100):";

cin >> m;

if (n > m)

cout << "你猜的值太小了!" << endl;

else if (n < m)

cout << "你猜的值太大了!" << endl;

else

cout << "你猜对了!" << endl;

}while(n != m);

}

程序运行输出:

请猜这个数的值为多少?(0~~100):50

你猜的值太大了!

请猜这个数的值为多少?(0~~100):25

你猜的值太大了!

请猜这个数的值为多少?(0~~100):10

你猜的值太小了!

请猜这个数的值为多少?(0~~100):15

你猜的值太小了!

请猜这个数的值为多少?(0~~100):18

你猜对了!

2-35 定义枚举类型weekday,包括Sunday到Saturday七个元素在程序中定义weekday类型的变量,对其赋值赋weekday类型的值。

解:

#include

enum weekday

{

Sunday,

Monday,

Tuesday,

Wednesday,

Thursday,

Friday,

Saturday

};

void main()

{

int i;

weekday d = Thursday;

cout << "d = " << d << endl;

i = d;

cout << "i = " << i << endl;

d = (weekday)6;

cout << "d = " << d << endl;

d = weekday( 4 );

cout << "d = " << d << endl;

}

程序运行输出:

d = 4

i = 4

d = 6

d = 4

第三章函数

3-1 C++中的函数是什么?什么叫主调函数,什么叫被调函数,二者之间有什么关系?如何调用一个函数?

解:

一个较为复杂的系统往往需要划分为若干子系统,高级语言中的子程序就是用来实现这种模块划分的。C和C++调用其它函数的函数被称为主调函数,被其它函数调用的函数称为被调函数。一个函数很可能既调用别的函数又能在某一个调用与被调用关系中充当主调函数,而在另一个调用与被调用关系中充当被调函数。

调用函数之前先要声明函数原型。按如下形式声明:

类型标识符被调函数名 (含类型说明的形参表);

声明了函数原型之后,便可以按如下形式调用子函数:

函数名(实参列表)

3-2 观察下面程序的运行输出,与你设想的有何不同?仔细体会引用的用法。

源程序:

#include

int main()

{

int intOne;

int &rSomeRef = intOne;

intOne = 5;

cout << "intOne:\t\t" << intOne << endl;

cout << "rSomeRef:\t" << rSomeRef << endl;

int intTwo = 8;

rSomeRef = intTwo; // not what you think!

cout << "\nintOne:\t\t" << intOne << endl;

cout << "intTwo:\t\t" << intTwo << endl;

cout << "rSomeRef:\t" << rSomeRef << endl;

return 0;

}

程序运行输出:

intOne: 5

rSomeRef: 5

intOne: 8

intTwo: 8

rSomeRef: 8

3-3 比较值调用和引用调用的相同点与不同点。

解:

值调用是指当发生函数调用时,给形参分配内存空间,并用实参来初始化形参(直接将实参的值传递给形参)。过程,一旦形参获得了值便与实参脱离关系,此后无论形参发生了怎样的改变,都不会影响到实参。

引用调用将引用作为形参,在执行主调函数中的调用语句时,系统自动用实参来初始化形参。这样形参就成为实操作也就直接作用于实参。

3-4 什么叫内联函数?它有哪些特点?

解:

定义时使用关键字 inline的函数叫做内联函数;

编译器在编译时在调用处用函数体进行替换,节省了参数传递、控制转移等开销;

内联函数体内不能有循环语句和switch语句;

内联函数的定义必须出现在内联函数第一次被调用之前;

对内联函数不能进行异常接口声明;

3-5 函数原型中的参数名与函数定义中的参数名以及函数调用中的参数名必须一致吗?

解:

不必一致,所有的参数是根据位置和类型而不是名字来区分的。

3-6 重载函数时通过什么来区分?

解:

重载的函数的函数名是相同的,但它们的参数的个数和数据类型不同,编译器根据实参和形参的类型及个数的最函数。

3-7 编写函数,参数为两个unsigned short int型数,返回值为第一个参数除以第二个参数的结果,数据类型为0,则返回值为-1。在主程序中实现输入输出。

解:

源程序:

#include

short int Divider(unsigned short int a, unsigned short int b)

{

if (b == 0)

return -1;

else

return a/b;

}

typedef unsigned short int USHORT;

typedef unsigned long int ULONG;

int main()

{

USHORT one, two;

short int answer;

cout << "Enter two numbers.\n Number one: ";

cin >> one;

cout << "Number two: ";

cin >> two;

answer = Divider(one, two);

if (answer > -1)

cout << "Answer: " << answer;

else

cout << "Error, can't divide by zero!";

return 0;

}

程序运行输出:

Enter two numbers.

Number one:8

Number two:2

Answer: 4

3-8 编写函数把华氏温度转换为摄氏温度,公式为:C = (F - 32) * 5/9; 在主程序中提示用户输入一个华氏温度。

解:

源程序见"实验指导"部分实验三

3-9 编写函数判断一个数是否是质数,在主程序中实现输入、输出。

解:

#include

#include

int prime(int i); //判一个数是否是质数的函数

void main()

{

int i;

cout << "请输入一个整数:";

cin >> i;

if (prime(i))

cout << i << "是质数." << endl;

else

cout << i << "不是质数." << endl;

}

int prime(int i)

{

int j,k,flag;

flag = 1;

k = sqrt(i);

for (j = 2; j <= k; j++)

{

if(i%j == 0)

{

flag = 0;

break;

}

}

if (flag)

return 1;

else

return 0;

}

程序运行输出:

请输入一个整数:1151

1151是质数.

3-10 编写函数求两个整数的最大公约数和最小公倍数。

解:

源程序:

#include

#include

int fn1(int i,int j); //求最大公约数的函数

void main()

{

int i,j,x,y;

cout << "请输入一个正整数:";

cin >> i ;

cout << "请输入另一个正整数:";

cin >> j ;

x = fn1(i,j);

y = i * j / x;

cout << i << "和" << j << "的最大公约数是:" << x << endl;

cout << i << "和" << j << "的最小公倍数是:" << y << endl;

}

int fn1(int i, int j)

{

int temp;

if (i < j)

{

temp = i;

i = j;

j = i;

}

while(j != 0)

{

temp = i % j;

i = j;

j = temp;

}

return i;

}

程序运行输出:

请输入一个正整数:120

请输入另一个正整数:72

120和72的最大公约数是:24

120和72的最小公倍数是:360

3-11 什么叫作嵌套调用?什么叫作递归调用?

解:

函数允许嵌套调用,如果函数1调用了函数2,函数2再调用函数3,便形成了函数的嵌套调用。函数可以直接或间接地调用自身,称为递归调用。

3-12 在主程序中提示输入整数n,编写函数用递归的方法求1 + 2 + … + n的值。

解:

#include

#include

int fn1(int i);

void main()

{

int i;

cout << "请输入一个正整数:";

cin >> i ;

cout << "从1累加到" <

}

int fn1(int i)

{

if (i == 1)

return 1;

else

return i + fn1(i -1);

}

程序运行输出:

请输入一个正整数:100

从1累加到100的和为:5050

3-13 编写递归函数GetPower(int x, int y)计算x的y次幂,在主程序中实现输入输出。

解:

源程序:

#include

long GetPower(int x, int y);

int main()

{

int number, power;

long answer;

cout << "Enter a number: ";

cin >> number;

cout << "To what power? ";

cin >> power;

answer = GetPower(number,power);

cout << number << " to the " << power << "th power is " <

return 0;

}

long GetPower(int x, int y)

{

if(y == 1)

return x;

else

return (x * GetPower(x,y-1));

}

程序运行输出:

Enter a number: 3

To what power? 4

3 to the 4th power is 81

3-14 用递归的方法编写函数求Fibonacci 级数,公式为fib(n) = fib(n-1) + fib(n-2),n>2; fib(1) = fib(2) = 1;观察递归调用的过程。

解:

源程序见"实验指导"部分实验三

3-15 用递归的方法编写函数求n阶勒让德多项式的值,在主程序中实现输入、输出;

解:

#include

float p(int n, int x);

void main()

{

int n,x;

cout << "请输入正整数n:";

cin >> n;

cout << "请输入正整数x:";

cin >> x;

cout << "n = " << n << endl;

cout << "x = " << x << endl;

cout << "P" << n << "(" << x << ") = " << p(n,x) << endl;

}

float p(int n, int x)

{

if (n == 0)

return 1;

else if (n == 1)

return x;

else

return ((2*n-1)*x*p(n-1,x) - (n-1)*p(n-2,x)) /n ;

}

程序运行输出:

请输入正整数n:1

请输入正整数x:2

n = 1

x = 2

P1(2) = 2

请输入正整数n:3

请输入正整数x:4

n = 3

x = 4

P3(4) = 154

3-16 使用模板函数实现Swap( x, y ),函数功能为交换x、y的值。

解:

源程序:

#include

template void swap(T &x, T &y)

{

T z;

z = x;

x = y;

y = z;

}

void main()

{

int j = 1, k = 2;

double v = 3.0, w = 4.0;

cout << "j = " <

cout << "j = " <

C语言程序设计第三版习题库答案

C 语言程序设计(第三版)习题库 1、设圆半径r=,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 #include<> main(){ floatr,h,C1,Sa,Sb,Va,Vb; scanf(__”%f ”__,&r); scanf(”%d ”,__&h _);; C1=2**r; Sa=*r*r; Sb=4*Sa; Va=4**r*r*r/3; Vb=Sa*h; printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb ); } 2、输入一个华氏温度,要求输出摄氏温度。公式为c=5(F-32)/9 输出要求有文字说明,取位2小数。 #include<> main(){ floatF,c; scanf("%f",&F); ____c=5*(F-32)/9______; printf("c=%.2f",c); } 3、有一函数:?? ???≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。 #include<> main(){ intx,y; printf("输入x :"); scanf("%d",&x); if(x<1){/*x<1*/ y=x; printf("x=%3d,y=x=%d\n",x,y);

}elseif(____x<10_______){/*1≤x-10*/ _____y=2*x-1_______; printf("x=%3d,y=2*x-1=%d\n",x,y); }else{/*x≥10*/ y=3*x-11; printf("x=%3d,y=3*x-11=%d\n",x#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d\n",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }scanf("%d",&x);

大一下学期英语期末考试试题

大一下学期英语期末考试试题 1:交际用语(共计10分,每小题2分) 1. Are you sure about that? A. You needn't worry about that B. I like the idea C. Oh, no. l am afraid of that D. Oh, yes. I~m absolutely, positive 2. -- Would you like to see the menu? A. No, thanks. I already know what to order B. Your menu is very clear C. I hear the food here is tasty D. The setting is very comfortable 3. What if my compoter doesn't work? A. I'm not good at computer B. Ask Anne for help C. I've called the repair shop D. There must be something wrong 4. -- Howls the movie? Interesting? A. It was shown late until midnight B. It was starred by a few famous people C. Far from. I should have stayed home watching TV D. 1 was seated far away in the corner 5. -- Is this the motel you mentioned? A. It looks comfortable B. Yes, it is as quiet as we expected C. You are so considerate D. No, the price's reasonable 2:词汇与结构(共计20分,每小题2分) 6. The bedroom needs ( ). A. decorating B. to decorale C. decorate D. decorated 7. He is the man ( ) dog bit me. A. that B. which C. who D. whose

C语言程序设计(第二版)课后答案 丁亚涛

习题二 一、选择题 二、填空题 1.18 2.int float double 3.10 11 4.8 16 10 5.% 三、阅读题 1. 10,10,9,10 2. j=1, i=2 k=3,i=3 i=3,i=2 k=1,i=1 习题三 一、选择题 二、填空题 1. 从键盘上读入一个字符在屏幕上输出一个字符 #include 2. 按十进制整数形式输出,有符号 按16进制整数形式输出,没有符号 按十进制小数形式输出,输出的数据长度为7位,有2位小数 按字符形式输出一个字符 3. 按十进制整数形式输入数据 按十进制整数形式输入三位数据 跳过3位十进制数据 按字符形式输入一个字符 4. 分程序;; 5. 大写字母L 6. -1 三、阅读题 1. 6 6 6.00 6.00

2. x=127,x= 127,x=177,x=7f y=123.4567,y= 123.46,y=123,45670 3. 2,1 4. 1234 5. 4,3 6. -6,-6 习题四一、选择题 二、填空题 1. 非0 0 、 2. k==0 3. n%7==0&&n%==0 else 三、阅读题 1. a=1,b=0 2. c=1 习题五一、选择题 二、填空题 1. for语句 do-while 语句 while 语句 2. a=14,y=26 3. k=14,n=-1 4. 39 5. s=19 6. 22222 7. 10 8. 7 9. 8 10. 5,5 三、改错题

1. for( i=0;i<5;i++);for控制部分用分号分隔 2. int j=0;while(j<10){j++;i=j} 分号是多余的,否则会造成死循环 3. int s=1,i=1; while(i<5) {s*=i; i++; } 两条语句需要加上花括号 4. while(j<10);(分号不能少) 5. continue改为break 习题六 一、选择题 二、填空题 1. 20 0 19 2. 数组名 3. 越界 4. 6 5. j==k a[j][k]=1; a[j][k]=0; 三、阅读题 1. 6 5 4 3 2 1 2. aaa bbb ccc ddd 3. 2,2,1 习题七 一、选择题 二、填空题 1. 整个函数体内局部 2. 整型 3. k<=b return y;

C语言程序设计试题集与答案解析

一.填空 1. 每个C程序都必须有且仅有一个________ 函数。 2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。 3. 软件是程序,以及______、使用和维护所需要的所有文档。 4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。 5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。 6. C语言是由________组成的。 7. C语言的函数可分为主函数main、标准库函数和_________。 8. 一个函数是由两部分组成的,即:________和函数体。 9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。 10. 程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作 的要求。不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。 11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。 12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对 象,也可以用标号和符号来代替地址、常量和变量。

13. 在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。 14. C程序的执行均是由执行_________开始。 15. 函数体即为包含在{}内的部分。它分为________和为完成功能任务由若干个C 语句 组成的执行部分。 16. C语言程序中一条简单语句是以________字符作为结束符的。 17. C语言是结构化、________的程序设计语言。 18. 由于计算机硬件不能直接识别高级语言中的语句,因此,必须经过“_______程序”,将用高级语言编写的程序翻译成计算机硬件所能识别的机器语言程序方可执行。 19. 用高级语言编写的程序需翻译成计算机硬件所能识别的机器语言程序方可执行。所以 说,用高级语言进行程序设计,其编程效率高,方便易用,但_______没有低级语言高。 20.

大一英语综合教程标准答案

大一英语综合教程答案

————————————————————————————————作者:————————————————————————————————日期:

The Answers to Unit 1 Enhance Your Language Awareness (I) Working with Words and Expressions 2. (1) obtain (2) confident (3) communicate (4) advantage (5) relevant (6) helpful (7) extreme (8) enjoyable (9) means (10) process (11) particularly (12) characters (13) astonished (14) apparently 3. (1) fond of (2) is...related to (3) according to (4) To a certain degree (5) vice versa (6) no doubt (7) rid... of (8) cleared up (9) or else (10) at all costs (11) sure enough (12) let alone (13) similar to (14) It's no use (15) in my opinion (16) was worth (II) Increasing Your Word Power 1. (1) c (2) d (3) b (4) b (5) b (6) d 2. (1) highly/very (2) quite/very (3) quite/very/increasingly (4) quite/simply/very 3. Adverbs Adjectives efficiently efficient particularly particular fluently fluent quickly quick cheaply cheap continually continual probably probable adventurously adventurous finally final steadily steady slowly slow

大学数学分析答案

《数学分析》练习题1 一、单项选择题(本大题共4小题,每小题5分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1、广义积分dx x ? -2 2 211的奇点的是 【 】 A .0 B .2 C .2 D .2± 2、下列关于定积分的说法正确的是 【 】 A .函数)(x f 在[]b a ,有界,则)(x f 在[]b a ,一定可积; B .函数)(x f 在[]b a ,可积,则)(x f 在[]b a ,一定有界; C .函数)(x f 在[]b a ,不可积,则)(x f 在[]b a ,一定无界; D .函数)(x f 在[]b a ,无界,则)(x f 在[]b a ,可能可积。 3、函数()x f 在闭区间[]b a ,可积是函数()x f 在闭区间[]b a ,连续的__ __条件。 【 】 A .充分非必要 B .必要非充分 C .充分必要 D .即不充分,又非必要 4、若级数∑∞ =1 n n u 收敛,则下列级数中,为收敛级数的是 【 】 A .()∑∞=-1 1n n n u B .()∑∞=-1 1n n n u C .∑∞=+1 1n n n u u D .∑ ∞ =++1 1 2 n n n u u 二、填空题(本大题共4小题,每小题5分,共20分)请在每小题的横线上给出正确的答案. 1、(){}x f n 在X 一致收敛的定义是: . 2、函数2 x e -在0=x 处的幂级数展开式为, . 3、积分()1012 <x 的收敛性。 解: 5、求级数∑ ∞ =1 3n n n n x 的收敛半径与收敛域。 解: 6、求dx e x ?+∞ 1。 解: 四、综合题(本大题共3小题,每小题8分,共24分)请在每小题后的空白处写出必要的 证明过程。 1、证明:积分?+∞ 02cos dx x 收敛。 证: 2、设()x f 在R 上连续,()()()dt t x t f x F x 20 -= ?。 证明:(1)若()x f 为偶函数,则()x F 也是偶函数;(2)若()x f 为单调函数,则()x F 也是单调函数。 证: 3、若{}n na 收敛, ()∑∞ =--1 1n n n a a n 收敛,证明级数∑∞ =1 n n a 收敛。 证:

第5章-C语言程序设计(第2版)教材习题答案

【教材】《C语言程序设计(第2版)》清华大学出版社,黄保和,江弋编著。2011年10月第二版。ISBN:978-7-302-26972-4。售价:35元。 【答案版本】本习题答案为2012年2月修订版本。 一、选择题 1. 设有程序段”int k=10; while(k=0) k=k-1;”,则下面叙述正确的是D)循环体语句一次也不执行。 A. while循环执行10次 B. 循环是无限循环 C. 循环体语句执行一次 D. 循环体语句一次也不执行 2. 设有程序段”int x=0,s=0;while(!x!=0) s+=++x; printf(“%d”,s);”则A)运行程序段后输出1。 A. 运行程序段后输出1 B. 程序段执行无限次 C. 运行程序段后输出0 D. 程序段中的控制表达式是非法的 3. 下面循环语句中,错误的是D) int a=1,b=2;do b-- while(b= =0);。 A. int a=1,b=2; while(b--); B. int a=1,b=2; do a++; while(a==b); C. int a=1,b=2; while(a=3); D. int a=1,b=2; do b-- while(b==0); 4. 已知”int i=5;”,下列do…while循环语句的循环次数为C) 5。 do{ printf(“%d\n”,i--); } while(i!=0); A. 0 B. 1 C. 5 D. 无限 5. 循环语句”for(int i=0,j=10; i==j; i++,j--)”的循环次数是A) 0。 A. 0 B. 5 C. 10 D. 无限 6. 下述有关break语句的描述中,不正确的是C) break语句用于if语句的内嵌语句内,它结束该if语句。 A. break语句用于循环体内,它将结束该循环 B. break语句用于开关语句,它结束该开关语句 C. break语句用于if语句的内嵌语句内,它结束该if语句 D. break语句在一个循环体内可使用多次 7. 下面关于循环语句的描述中,错误的是B)循环体内必须同时出现break语句和continue 语句。 A. 循环体内可以包含有循环语句 B. 循环体内必须同时出现break语句和continue语句 C. 循环体内可以出现选择语句 D. 循环体可以是空语句 8. 以下不是死循环的是D)for(;(c=getchar()!=’\n’);)printf(“%c”,c);。 A. for(; ; x+=i); B. while(1) { x++; } C. for( i=10; ; i--) sum+=i; D. for( ; (c=getchar() )!=’\n’ ; ) printf( “%c”,c); 9. 执行语句”for(i=0;i++<3;);”后,变量i的值为C) 4。 A.2 B. 3 C. 4 D. 5 10.语句”for(x=0,y=0;y!=1&&x<4;x++);”是C)循环4次。 A. 无限循环 B. 循环次数不定 C. 循环4次 D. 循环3次

c语言程序设计第五版习题答案

习题解析与答案 第1章C语言概述 一.简答题 1.概述C语言的主要特点。 【解答】 (1)语言简洁、紧凑,使用方便、灵活。 (2)数据类型丰富,表达能力强。 (3)运算符多样。C语言中的运算符包含的范围非常广泛。 (4)具有结构化的控制语句。如if…else语句、while语句、do while语句、switch 语句、for语句。 (5)允许直接访问物理地址。C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。 (6)所生成的目标代码质量高,可移植性好。 2.构成C语言程序的基本单位是什么?它由哪几部分组成? 【解答】函数是构成C语言程序的基本单位。一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。 3.C语言程序的运行一般要经过哪几个步骤? 【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。 二.运行程序写结果 1.输入下面程序并运行。 main() { int a1,a2,x; a1=100; a2=50; x=a1-a2; printf(″x=%d\n″,x); } 【解答】运行结果为:x=50 2.输入下面程序并运行。 main() { int a1,a2,x; a1=10; a2=20; x=a1*a2; printf(″a1=%d,a2=%d\n″,a1,a2); printf(″x=%d\n″,x); } 【解答】运行结果为:a1=10,a2=20 x=200 3.输入下面程序并运行。

#include main() { printf("******\n"); printf(" *****\n"); printf(" ****\n"); printf(" ***\n"); printf(" **\n"); printf(" *\n"); } 【解答】运行结果为:****** ***** **** *** ** * 思考:可以修改程序,使之输出平行四边形,等腰三角形等图形。 三.编程题 1.参照本章例题,编写一个C程序,用于显示如下信息: ************************* I love C programs! ************************* 【分析与提示】 ①要有文件包含语句#include 。C语言中没有数据的输入、输出等功能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf等来实现的。这些函数的说明都包括在stdio.h文件中。 ②main是主函数的名称。用{}括起来的内容是函数体,函数体由若干条语句组成,这是计算机要执行的部分,每条语句以分号“;”结束。 ③注意显示的信息有三行,所以要用到换行符“\n”。 参考代码: #include main() { printf("************************\n"); printf(" I love C programs! \n"); printf("************************\n"); }

大一第二学期英语期末试卷

each

C) He will go when he feels better. D) He won’t go as he hasn’t finished his work. 4. A) Check the timetable.B) Go to the railway station earlier. C) Travel on a later train.D) Cancel the trip earlier. 5. A) In New York.B) In Boston. C) In Newport.D) In Washington. 6. A) A clerk at the airport information desk. B) A clerk at the railway station information desk. C) A policeman. D) A taxi-driver. 7. A) A guest and a receptionist. B) A passenger and an air hostess. C) A customer and a shop assistant. D) A guest and a waitress. 8. A) He’s better.B) He’s feeling worse. C) He’s sick in bed.D) He has recovered. 9. A) The man didn’t want the woman to have her hair cut. B) The woman followed the man’s advice. C) The woman is wearing long hair now. D) The man didn’t care if the woman had her hair cut or not.

欧阳光中数学分析答案

欧阳光中数学分析答案 【篇一:数学分析目录】 合1.1集合1.2数集及其确界第二章数列极限2.1数列极限 2.2数列极限(续)2.3单调数列的极限2.4子列第三章映射和实函数 3.1映射3.2一元实函数3.3函数的几何特性第四章函数极限和连续性4.1函数极限4.2函数极限的性质4.3无穷小量、无穷大量和有界量第五章连续函数和单调函数5.1区间上的连续函数5.2区间上连续函数的基本性质5.3单调函数的性质第六章导数和微分6.1导数概念6.2求导法则6.3高阶导数和其他求导法则6.4微分第七章微分学基本定理及使用7.1微分中值定理7.2taylor展开式及使用7.3lhospital法则及使用第八章导数的使用8.1判别函数的单调性8.2寻求极值和最值8.3函数的凸性8.4函数作图8.5向量值函数第九章积分9.1不定积分9.2不定积分的换元法和分部积分法9.3定积分9.4可积函数类r[a,b] 9.5定积分性质9.6广义积分9.7定积分和广义积分的计算9.8若干初等可积函数类第十章定积分的使用10.1平面图形的面积10.2曲线的弧长10.3旋转体的体积和侧面积10.4物理使用10.5近似求积第十一章极限论及实数理论的补充11.1cauchy收敛准则及迭代法11.2上极限和下极限11.3实数系基本定理第十二章级数的一般理论12.1级数的敛散性12.2绝对收敛的判别法12.3收敛级数的性质12.4abel-dirichlet判别法12.5无穷乘积第十三章广义积分的敛散性13.1广又积分的绝对收敛性判别法13.2广义积分的abel-dirichlet判别法第十四章函数项级数及幂级数14.1一致收敛性14.2一致收敛性的判别14.3一致收敛级数的性质14.4幂级数14.5函数的幂级数展开第十五章fourier级数15.1fourier级数15.2fourier级数的收敛性15.3fourier级数的

《C语言程序设计教程(第二版)》习题答案

2 第1章程序设计基础知识 一、单项选择题(第23页) 1-4.CBBC 5-8.DACA 二、填空题(第24页) 1.判断条件 2.面向过程编程 3.结构化 4.程序 5.面向对象的程序设计语言7.有穷性8.直到型循环9.算法10.可读性11.模块化12.对问题的分析和模块的划分 三、应用题(第24页) 2.源程序: main() {int i,j,k; /* i:公鸡数,j:母鸡数,k:小鸡数的1/3 */ printf("cock hen chick\n"); for(i=1;i<=20;i++) for(j=1;j<=33;j++) for(k=1;k<=33;k++) if (i+j+k*3==100&&i*5+j*3+k==100) printf(" %d %d %d\n",i,j,k*3);} 执行结果: cock hen chick 4 18 78 8 11 81 12 4 84 3.现计算斐波那契数列的前20项。 递推法源程序: main() {long a,b;int i; a=b=1; for(i=1;i<=10;i++) /*要计算前30项,把10改为15。*/ {printf("%8ld%8ld",a,b); a=a+b;b=b+a;}} 递归法源程序: main() {int i; for(i=0;i<=19;i++) printf("%8d",fib(i));} fib(int i) {return(i<=1?1:fib(i-1)+fib(i-2));} 执行结果: 1 1 2 3 5 8 13 21 3 4 55 89 144 233 377 610 987 1597 2584 4181 6765

(完整版)C语言程序设计练习及答案

《C语言程序设计》练习及答案 得分评卷人复查人 一、单选题,每小题1分,共60分(将正确答案的序号写在题目的括号中)。 1、结构化程序设计的三种基本控制结构是(D )。 A、主程序、子程序、函数 B、输入、处理、输出 C、调用,返回,转移 D、顺序、选择、循环 2、下列关于C程序变量的叙述, ( D )是错误的。 A、变量名必须由字母或下划线开头。 B、程序中的变量必须在被使用之前定义。 C、不同的基本类型的变量之间可以混合运算。 D、变量的数据类型决定变量的"作用域"。 3、能将C语言编写的源程序转换为目标程序的软件是(C )。 A、编辑程序 B、汇编程序 C、编译程序 D、解释程序 4、以下符号中,合法的用户标识符是( D )。 A、-p B、int C、3ab D、_xt_ 5、以下选项中,与m=n++完全等价的表达式是( C )。 A、m=++n B、m+=n+1 C、m=n, n=n+1 D、n=n+1,m=n 6、若有定义:int aa[8];。则以下表达式中不能代表数组元aa[1]的地址的是(C )。 A、&aa[0]+1 B、&aa[1] C、&aa[0]++ D、aa+1 7、表达式!5&(7+3)&&(4+5)的值是(A)。 A、0 B、1 C、5 D、9 8、以下选项中非法的C语言表达式是(A )。 A、x+1=x+1 B、0<=x<100 C、i=j==0 D、(char)(65+3) 9、在TURBO C中, int类型变量所占字节数是(B )。 A、1 B、2 C、4 D、8 10、C语言中基本的数据类型包括(B)。 A、整型,实型,逻辑型 B、整型,实型,字符型

大一英语下册习题册答案(1)

1. 听力对话和10个单词的听写估计 20-30分 2. 阅读理解30分两篇来自综合训练还有 两篇是课外的,估计30分左右 3. 词汇题(来自白色作业册和书后练习),20题估计10-20分,15个课内5个课外,题型类似白色作业册上的单选,书后练习里的词汇题和单词手册上的例句要看看。 4. 翻译句子15分5个句子。(完整的长句子翻译)复习范围是书后的翻译和白色作业册。 5. 看解释找单词(如果让你填代号就不要填单词)。共10个,大概5分,一般情况下是书后的词汇练习。 分值没有最后确定,所以不能更详细了。另附上作业册1-4,6,7,8单元的答案,全部上完课后讲评答案。 Unit 1 1-5 DBABC 6-10 BAACA 11-12 AB 1. gave rise to more violent clashes 2. Gone are the days when 3. W e launch a big advertising campaign 4. Your work is characterized by

5. but a means to an end Unit 2 1-5DDABD 6-10CBABC 11-12DA 1.I picked up a few words of Greek 2.She's nothing but a child 3.as if she got back to her childhood again 4.trace the family back to many centuries ago 5.evoke laughter as well as tears Unit 3 1-5ADBAC 6-10ACCBB 11-12DA 1. taken precaution of 2. forged his supervisor’s signature 3. tear up the peace agreement. 4. considered the unique identifier 5. extract information Unit 4 1-5CCBAB 6-10DCDCC 11-12CD 1. was held up 2. When it comes to German 3. does not necessarily 4. close down 5. Cut down the article Unit 6 1-5DCCCB 6-10DBDBA 11-12DC 1.I find her exhausting 2.shut out 99% of the sun’s harmful rays

数学分析第三版答案下册

数学分析第三版答案下册 【篇一:2015年下学期数学分析(上)试卷a参考答案】> 一、填空题(每小题3分,共15分): 1、126; 2、2; 3、1?x?x2???xn?o(xn); 4、arcsinx?c (或?arccos x?c);5、2. 二、选择题(每小题3分,共15分) 1、c; 2、a; 3、a; 4、d; 5、b 三、求极限(每小题5分,共10分) 1??1、lim1?2? 2、limxlnx ?n??x?0 ?n? ? n 1?? ?lim?1?2?n??n?? 1 n n2? 1n 1 lnx(3分) ?lim?li?? x?0x?011 ?2 xx (3分) (?x)?0 (2分)?lime?1(2分) ?lim? n?? x?0 3n2 ?3 。四、利用数列极限的??n定义证明:lim2(10分) n??n?3 证明:当n?3时,有(1分) 3n299 (3分) ?3??22 n?3n?3n 993n2

因此,对任给的??0,只要??,即n?便有2 ?3?? (3分) n?n?3 3n2x{3,},当n?n便有2故,对任给的??0,取n?ma(2 分) ?3??成立。 ?n?3 9 3n2 ?3(1分)即得证lim2 n??n?3 五、证明不等式:arctanb?arctana?b?a,其中a?b。(10分) 证明:设f(x)?arctanx,根据拉格朗日中值定理有(3分) f(b)?f(a)?f?(?)(b?a)? 1 (b?a),2 1?? (a???b) (3分) 所以有 f(b)?f(a)?(b?a) (2分) bn?arctaan?b?a (2分)即 arcta 六、求函数的一阶导数:y?xsinx。(10分) 解:两边取对数,有: lny?sinxlnx (4分) 两边求一次导数,有: y??xsinx(cosxlnx? y?sinx (4分) ?cosxlnx? yx sinx )(2分) x 七、求不定积分:?x2e?xdx。(10分)解: 2?x2?x xedx?xde = (2分) ?? = ?x2e?x?2?xe?xdx (2分) = ?x2e?x?2?xde?x(2分) = ?x2e?x?2xe?x?2?e?xdx (2分) =?e?x(x2?2x?2)?c (2分) 15 八、求函数f(x)?|2x3?9x2?12x|在闭区间[?,]上的最大值与最小值。(10 42

C语言程序的设计习题参考答案(第二版_杜友福)

C 语言程序设计习题答案 习题一 C 语言程序设计概述 一、名词解释 (1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)汇编程序P2 (5)高级语言P2 (6)编译程序P3 (7)解释程序P3 (8)算法P4 (9)结构化的程序设计P9 二、简述题 1. 设计程序时应遵循哪些基本原则?P4 答:正确性、可靠性、简明性、有效性、可维护性、可移植性。 2. 算法的要素是什么?算法具有哪些特点? 答:算法的要素是:操作与控制结构;算法的特点有:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。 3. 算法的表示形式有哪几种? 答:算法的表示形式有:自然语言、传统流程图、伪代码、结构化的流程图(N_S 流程图,盒图)。 4. 有哪三种基本结构? 答:三种基本结构是:顺序结构、选择结构和循环结构。 5. 传统流程图与N-S 流程图最大的区别是什么? 答:N-S 流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。 三、用传统流程图、N-S 图分别表示求解以下问题的算法。 1. 有3个数a ,b ,c ,要求按由大到小的顺序把它们输出。 2. 依次将10个数输入,求出其中最大的数 和最小的数并输出。 3. 求1+2+3+…+100的值。 4. 求1×2×3×…×10的值。

5. 求下列分段函数的值。 6. 求100~200之间的所有素数。 7. 求一元二次方程ax 2+bx+c=0的根。分别考虑d=b 2-4ac 大于0、等于0和小于0三种情况。 四、注释下面C 程序的各个组成部分。 main() /*主函数 */ { /*程序开始 */ int a,k,m; /*定义三个用来存放整数的变量 */ a=10; /*将整数10赋值给变量a */ k=2; /*将整数2赋值给变量k */ m=1; /*将整数1赋值给变量1 */ a=(k+m)*k/(k-m); /*先求出算术表达式的值,并将其赋值给变量a */ printf("%d\n",a); /*在屏幕上打印出变量a 的值 */ } /*程序结束 */ 习题二 数据类型、运算符与表达式 一、选择题 1~10:BCDCB DDBCA 11~20: ADDAA DBADC 21~28: DABAD CDD Y= 3X (X<1) 4X-1 (X=1) 5(X-1)+6 (1

C语言程序设计第二版习题参考答案

C语言程序设计第二版 习题参考答案 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-

C语言程序设计习题参考答案 习题 1 一、判断题 1.在计算机中,小数点和正负号都有专用部件来保存和表示。 2.二进制是由0和1两个数字组成的进制方式。 3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。 4.在整数的二进制表示方法中,0的原码、反码都有两种形式。 5.有符号数有三种表示法:原码、反码和补码。 6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。 解:1.F2.T 3.T 4.T 5.T 6.T 二、单选题 1.在计算机中,最适合进行数值加减运算的数值编码是。 A. 原码 B. 反码 C. 补码 D. 移码 2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII 码为十进制数。 A. 112 B. 120 C. 121 D. 122 3.关于ASCII码,在计算机中的表示方法准确地描述是。 A. 使用8位二进制数,最右边一位为1 B. 使用8位二进制数,最左边一位为1 C. 使用8位二进制数,最右边一位为0 D. 使用8位二进制数,最左边一位为0 4.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是 ___________。 A. X∧Y=1000 B. X∨Y=1111 C. X⊕Y=0011 D. ˉY=1000 5.下列叙述中正确的是()。 A.高级语言就是机器语言 B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序 C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种 D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。 A.生成可执行文件B.生成目标文件 C.输出运行结果D.自动保存源文件 7.下列叙述中不正确的是()。 A.main函数在C程序中必须有且只有一个 B. C程序的执行从main函数开始,所以main函数必须放在程序最前面 C. 函数可以带参数,也可以不带参数。

大一下学期英语习题内容

Unit1 He was driving home one evening, on a two-lane country road. Work, in this small Midwestern community, was almost as slow as his beat-up Pontiac,1 but he never quit looking. Ever since the factory closed, he’d been unemployed, and with winter raging on, the chill had finally hit home2. 一天傍晚,他在双车道的乡村公路上驱车回家。工作在中西部这个小社区清淡得几乎就像他那辆破旧的庞蒂亚克车慢悠悠的,可是他从没放弃过寻找工作。工厂倒闭后,他就一直失业,偏又赶上严冬肆虐,寒气逼人。 It was a lonely road. Not many people had a reason to be on it, unless they were leaving. Most of his friends had already left. They had families to feed and dreams to fulfill, but he stayed on. After all, this was where he buried his mother and father. He was born here and knew the country. 一路上人迹稀少。没有多少人会有理由在这条路上行驶,除非是他们离开这个地方。他的大部分朋友都已经离开这里了,他们要养家糊口,要实现梦想。而他留了下来,毕竟这里是他父母的安息之地,他就出生在这里,熟悉这里的一切。 He could go down this road blind,3 and tell you what was on either side, and with his headlights not working, that came in handy. It was starting to get dark and light snow flurries were coming down. He’d better get a move on. 他闭着眼都能沿这条路驶下去,还能说出路两旁的情况,甚至连车灯都不用开,虽然车灯派得上用场。天渐渐黑了下来,小雪纷纷落下,他最好还是赶快赶路。 1、他很抱歉他愤怒和准备做很多的印象或弥补。 2、我们友好的工作人员将随时提供和提供信息时,你可能会需要它的。 3、如果任何连接泄漏,请慢慢的螺母,直至泄漏停止。 4、如果一个人的发展的感觉,他们属于一个组,他们必须帮助他们是团队的一部分,他们有 5。我认为你是一个真正的朋友。你已经帮助我保持更积极的因为孤独可以很。 6。作为这里的游客,你可以任何国家机构的信息和协助在任何时候。

c语言程序设计教程第二版课后习题答案

c 语言程序设计教程第二版课后习题 答 案 篇一: c 语言程序设计教程_李含光_ 郑关胜_ 清华大学 出版社习题答案习题答案[完美打印版]】1.单项选择题 (1)a (2)c(3)d (4)c (5)b 2.填空题(1)函数 (2)主函数(main )(3)printf(),scanf()第 2 章习题参考答案 1.单项选择题 1-5 cbccc 6-10 cdcdc 11-13 dbb 2 .填空题 (1)1(2)26 (3)6 , 4 , 2 (4)10 , 6 (5)3.000000 (6)双精度(double )(7)9 (8)字母,数字,下划线(9)13.700000 (10)11(11)((m/10 )%10 )*100+ (m/100 )*10+m%10 (12)0 (13)10 ,9 ,11(15) (x0y0)||(x0z0)||(y0||z0)(16 )double (17)x==0 (18)sqrt(fabs(a-b))/(3*(a+b))(19 )sqrt((x*x+y*y)/ (a+b)) 第 3 章习题参考答案 1.单项选择题 1-5 cccdd 6-10 bcdbc11-15 bcbbb16 a 2 .填空题 (1)用;表示结束(2){ } (3 )y=x0?1:x==0?0:-1 (4)y%4==0y%100!=0||y%400==0 (5)上面未配对(6)default 标号(7)while ,do while ,for (8)do while (9)本次(10)本层3.阅读程序,指出结果 (1)yes (2)*(3)abother (4)28 70 (5)2,0(6)8(7)36 (8)1(9)3,1,-1,3,1,-1(10)a=12 ,y=12 (11) i=6 ,k=4 (12)1,-2 4 .程序填空 (1)x:y ,u :z (2)m=n ,m !=0 ,m=m/10 (3)teps , t*n/(2*n+1) , printf( n”“,%2*lsf )(4)m%5==0 ,

相关文档
相关文档 最新文档