C习题参考答案 《c面向对象程序设计》 郑宇军
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3-8
class Program
{
static void Main(string[] args)
{
Console、WriteLine("按任意键退出,其它键继续…");
while(Console、ReadKey()、KeyChar!='Q')
{
Console、WriteLine("请输入本金:");
{
static void Main(string[] args)
{
Console、WriteLine("Please input a number:");
int n=int、Parse(Console、ReadLine());
int i = 1, x = 1;
while (i <= n)
{
x = x * i;
3-5四次执行的结果分别就是:3,6,-6,-3
3-6当两个操作数均为布尔类型时,与运算“&”与逻辑与运算“&&”的求值效果相同,或运算“|”与逻辑或运算“||”的求值效果相同。但异或运算“^”不存在对应的条件逻辑运算。
3-7不就是。if-else可进行任意分支,而“?:”操作符要求第二与第三个操作数的类型必须一致。
第二:作为方法参数时,值类型变量传递的就是数值,引用类型变量传递的就是地址,因此如果方法的执行代码修改了变量,对值类型的变量不会有影响,但会改变引用类型的变量。
第三:装箱就是将一个值类型转换为一个对象类型(object),而拆箱则就是将一个对象类型显式转换为一个值类型。
3_3略
3_4对整数为真,对实数不一定,因为实数受到计算机精度的影响。
习题Hale Waihona Puke Baidu考答案
Chapter 1
1_1对象客观世界中的事物都就是对象,包括有形的物理对象,可感知的逻辑实体,以及概念化的抽象实体。它有自己的属性,能够执行特定的操作。
类具有相同属性与操作的一组对象的集合;它描述的不就是单个对象,而就是“一类”对象的共同特征。其重要性在于它就是面向对象技术中最重要的结构,它支持信息隐藏与封装,进而支持对抽象数据类型(ADT)的实现。
{
Console、WriteLine("请输入两个数:");
int a = int、Parse(Console、ReadLine());
int b = int、Parse(Console、ReadLine());
Console、WriteLine("{0}+{1}={2}", a, b, Adder、Add(a+b));
i++;
}
Console、WriteLine(x);
Console、ReadLine();
}
}
(2)
class Program
{
static void Main()
{
Console、WriteLine("Please input a number:");
int n = int、Parse(Console、ReadLine());
1_2略
1_3参考图如下
图1
1_4 UML与面向对象UML就是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法与新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。标准建模语言UML适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试与维护。
namespace p2_5
{
class Adder
{
public static int Add(int a, int b)
{
return a+b;
}
}
}
//控制台应用程序
using System;
using p2_5;
namespace P2_6
{
class Program
{
static void Main()
2_3略(注:不同版本的Visual Studio引用的程序集有所区别)
2_4C#源代码会被编译为一种通用的中间语言(IL)代码,该语言类似于低级语言,但其代码与具体的硬件平台无关;之后CLR再针对特定的平台将IL程序翻译为机器指令,加载所需要的资源并管理执行。
2_5
//动态链接库程序
using System;
Chapter 2
2_1程序的功能一般通过方法代码来实现。每个方法都就是从其第一行代码开始执行,直至最后一行代码结束,期间可以通过代码来调用其她的方法,从而完成各式各样的操作。C#程序的起点就是由Main方法定义的,程序总就是从Main方法的第一行代码开始执行,在Main方法结束时停止运行。
2_2略(注:不同版本的Visual Studio的菜单项有所区别)
}
}
}
Chapter 3
3_1略
3_2第一:值类型的变量直接包含自身的所有数据,每创建一个变量,就在内存中开辟一块区域;只有通过变量才能修改它所包含的数据。而引用类型的变量只存储对目标数据的引用,每创建一个变量,就增加一个指向目标数据的指针;有可能出现多个引用类型的变量指向同一份数据的情况,这时修改一个变量就会影响到其它所有的变量。
double x=double、Parse(Console、ReadLine());
Console、WriteLine("请输入利率:");
double y=double、Parse(Console、ReadLine());
Console、WriteLine("请输入存款年数:");
double z=double、Parse(Console、ReadLine());
Console、WriteLine("本息合计为:");
for (int i=0;i<z;i++)
{
x=x+x*y;
}
Console、WriteLine(x);
Console、WriteLin("按任意键退出,其它键继续…");
Console、ReadLine();
}
}
}
3-9
(1)
class Program
int i = 1, x = 1;
do
{
x = x * i;
i++;
}
while (i <= n);
Console、WriteLine(x);
Console、ReadLine();
}
}
(3)
class Program
{
static void Main()
{
Console、WriteLine("Please input a number:");
class Program
{
static void Main(string[] args)
{
Console、WriteLine("按任意键退出,其它键继续…");
while(Console、ReadKey()、KeyChar!='Q')
{
Console、WriteLine("请输入本金:");
{
static void Main(string[] args)
{
Console、WriteLine("Please input a number:");
int n=int、Parse(Console、ReadLine());
int i = 1, x = 1;
while (i <= n)
{
x = x * i;
3-5四次执行的结果分别就是:3,6,-6,-3
3-6当两个操作数均为布尔类型时,与运算“&”与逻辑与运算“&&”的求值效果相同,或运算“|”与逻辑或运算“||”的求值效果相同。但异或运算“^”不存在对应的条件逻辑运算。
3-7不就是。if-else可进行任意分支,而“?:”操作符要求第二与第三个操作数的类型必须一致。
第二:作为方法参数时,值类型变量传递的就是数值,引用类型变量传递的就是地址,因此如果方法的执行代码修改了变量,对值类型的变量不会有影响,但会改变引用类型的变量。
第三:装箱就是将一个值类型转换为一个对象类型(object),而拆箱则就是将一个对象类型显式转换为一个值类型。
3_3略
3_4对整数为真,对实数不一定,因为实数受到计算机精度的影响。
习题Hale Waihona Puke Baidu考答案
Chapter 1
1_1对象客观世界中的事物都就是对象,包括有形的物理对象,可感知的逻辑实体,以及概念化的抽象实体。它有自己的属性,能够执行特定的操作。
类具有相同属性与操作的一组对象的集合;它描述的不就是单个对象,而就是“一类”对象的共同特征。其重要性在于它就是面向对象技术中最重要的结构,它支持信息隐藏与封装,进而支持对抽象数据类型(ADT)的实现。
{
Console、WriteLine("请输入两个数:");
int a = int、Parse(Console、ReadLine());
int b = int、Parse(Console、ReadLine());
Console、WriteLine("{0}+{1}={2}", a, b, Adder、Add(a+b));
i++;
}
Console、WriteLine(x);
Console、ReadLine();
}
}
(2)
class Program
{
static void Main()
{
Console、WriteLine("Please input a number:");
int n = int、Parse(Console、ReadLine());
1_2略
1_3参考图如下
图1
1_4 UML与面向对象UML就是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它溶入了软件工程领域的新思想、新方法与新技术。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。标准建模语言UML适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试与维护。
namespace p2_5
{
class Adder
{
public static int Add(int a, int b)
{
return a+b;
}
}
}
//控制台应用程序
using System;
using p2_5;
namespace P2_6
{
class Program
{
static void Main()
2_3略(注:不同版本的Visual Studio引用的程序集有所区别)
2_4C#源代码会被编译为一种通用的中间语言(IL)代码,该语言类似于低级语言,但其代码与具体的硬件平台无关;之后CLR再针对特定的平台将IL程序翻译为机器指令,加载所需要的资源并管理执行。
2_5
//动态链接库程序
using System;
Chapter 2
2_1程序的功能一般通过方法代码来实现。每个方法都就是从其第一行代码开始执行,直至最后一行代码结束,期间可以通过代码来调用其她的方法,从而完成各式各样的操作。C#程序的起点就是由Main方法定义的,程序总就是从Main方法的第一行代码开始执行,在Main方法结束时停止运行。
2_2略(注:不同版本的Visual Studio的菜单项有所区别)
}
}
}
Chapter 3
3_1略
3_2第一:值类型的变量直接包含自身的所有数据,每创建一个变量,就在内存中开辟一块区域;只有通过变量才能修改它所包含的数据。而引用类型的变量只存储对目标数据的引用,每创建一个变量,就增加一个指向目标数据的指针;有可能出现多个引用类型的变量指向同一份数据的情况,这时修改一个变量就会影响到其它所有的变量。
double x=double、Parse(Console、ReadLine());
Console、WriteLine("请输入利率:");
double y=double、Parse(Console、ReadLine());
Console、WriteLine("请输入存款年数:");
double z=double、Parse(Console、ReadLine());
Console、WriteLine("本息合计为:");
for (int i=0;i<z;i++)
{
x=x+x*y;
}
Console、WriteLine(x);
Console、WriteLin("按任意键退出,其它键继续…");
Console、ReadLine();
}
}
}
3-9
(1)
class Program
int i = 1, x = 1;
do
{
x = x * i;
i++;
}
while (i <= n);
Console、WriteLine(x);
Console、ReadLine();
}
}
(3)
class Program
{
static void Main()
{
Console、WriteLine("Please input a number:");