21xrx.com
2024-12-22 21:46:53 Sunday
登录
文章检索 我的文章 写文章
《C++面向程序设计教程第三版》习题答案
2023-07-05 04:29:06 深夜i     --     --
C++教程 面向程序设计 习题答案 第三版 编程练习

《C++面向程序设计教程第三版》是一本经典的C++教材,其习题是学习者进行知识巩固和加深理解的重要工具。本文将介绍《C++面向程序设计教程第三版》中的习题答案,帮助读者更好地掌握C++程序设计技能。

在《C++面向程序设计教程第三版》中,习题分为章节练习和项目,各章节练习包含选择题、填空题和编程题,而项目则要求学习者完成较为复杂的程序设计任务。

在解答选择题和填空题时,需要认真阅读题干,关注每个细节,并进行适当推理和分析。在编程题中,需要完整地思考问题,梳理思路,确定程序结构,并使用合适的C++语言特性进行设计和编写。

下面是《C++面向程序设计教程第三版》中的一些习题答案:

1. 选择题

1) C++中,指针和引用的本质区别是(B)

A. 值参数和引用参数的区别

B. 操作对象的方式不同

C. 表达式的返回值类型不同

D. 所占存储空间大小不同

2) 在C++中,以下语句正确的是(D)

A. char a='AB';

B. float a=3.14;

C. int a(3.14);

D. int a=3;

3) 关于C++程序的函数,以下叙述错误的是(D)

A. 函数名的第一个字符必须是字母或下划线

B. 函数的定义不可以与函数的声明分开

C. 函数可以有多个返回语句

D. 函数不可以是递归的

2. 填空题

1) 下面程序的输出结果是___________。

#include

using namespace std;

int main()

{

  int a=3,b=5;

  a+=b-=3;

  cout<<<","<

  return 0;

}

答案:5,2

2) 下面程序的输出结果是___________。

#include

using namespace std;

int main()

{

  int a=3,b=5;

  a=a^b;

  b=b^a;

  a=a^b;

  cout<<<","<

  return 0;

}

答案:5,3

3) 以下程序输出的值是___________。

#include

using namespace std;

int main()

{

  int n=1,sum=0;

  while(n<10)

  {

   if(n%2==0) sum+=n;

   n++;

  }

  cout< <

  return 0;

}

答案:20

3. 编程题

根据《C++面向程序设计教程第三版》第10章的内容,设计一个计算器类Cal,对于输入的两个整数,可以进行加、减、乘和除四种运算。其基本结构如下:

class Cal 

  private: 

   int a; 

   int b; 

  public: 

   Cal(int x,int y); 

   int Add(); 

   int Subtract(); 

   int Multiply(); 

   int Divide(); 

}; 

其中,构造函数Cal(int x,int y)用于初始化a和b变量,Add函数、Subtract函数、Multiply函数和Divide函数分别实现加、减、乘和除四种运算,并返回结果。考虑输入输出和异常情况。

答案:

#include

using namespace std; 

class Cal 

  private: 

   int a; 

   int b; 

  public: 

   Cal(int x,int y); 

   int Add(); 

   int Subtract(); 

   int Multiply(); 

   int Divide(); 

}; 

Cal::Cal(int x,int y) 

  a=x; 

  b=y; 

int Cal::Add() 

  return a+b; 

int Cal::Subtract() 

  return a-b; 

int Cal::Multiply() 

  return a*b; 

int Cal::Divide() 

  if(b==0) 

   throw "Divider cannot be zero."; 

  else 

   return a/b; 

int main() 

  int x,y; 

  cout<<"Please enter two numbers:"<

  cin>>x>>y; 

  Cal calculator(x,y); 

  cout<<"Add:"< <

  cout<<"Subtract:"< <

  cout<<"Multiply:"< <

  try{ 

   cout<<"Divide:"< <

  } 

  catch(const char* msg) 

   cerr< <

  return 0; 

以上代码采用了异常处理,当计算时分母为零时,将抛出异常并输出错误信息。同时,为了便于用户使用,还添加了输入提示和输出信息。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复