没有合适的资源?快使用搜索试试~ 我知道了~
首页C++入门习题详解:第五版徐红云等著作
C++入门习题详解:第五版徐红云等著作
5星 · 超过95%的资源 需积分: 40 93 下载量 63 浏览量
更新于2024-07-18
39
收藏 740KB DOCX 举报
《C++程序设计基础习题解答(第五版)》是一本针对C++初学者编写的教材,由徐红云、周霭如和黄小兵三位作者共同编著。本书旨在帮助读者掌握C++语言的基本概念和编程技巧,通过理论讲解和丰富的习题,提升编程实践能力。 该书的第一章主要聚焦于C++的基础知识,包括编程语言的核心要素。例如,章节中提到的选择题部分强调了关键概念的理解。第一题指出一个最简单的C++程序至少需要有一个(C)main函数,这是程序的入口点。第二题强调了函数名的重要性,它是(B)标识符,用于区分和调用不同的函数。第三题则介绍了程序从源代码到可执行程序的过程,即(D)编译,将高级语言转换为机器可理解的形式。 对于程序书写格式的练习,问题涉及到将摄氏温度转换为华氏温度。在分析部分,作者指导学生如何组织代码,首先定义所需的数据类型(如double C和F),接着说明了程序流程:提示用户输入摄氏温度,读取输入,进行计算(F=(9.0/5)*C+32),最后清晰地输出结果。这个练习让学生熟悉了C++的输入输出操作、变量声明以及基本的数学运算表达式。 在解答中,给出了一个完整程序的示例,展示了如何使用iostream库进行输入输出,以及如何使用namespace std来避免命名冲突。这个例子还展示了如何在C++中使用double类型和赋值运算符来执行温度转换。同时,提示学生思考如何改进代码,如将计算华氏温度的表达式写为更简洁的形式。 这本书不仅提供理论知识,还通过实际习题让读者深入理解和掌握C++语言的关键技能,适合初学者系统学习和巩固C++程序设计基础。
资源详情
资源推荐
int main ()
{
int a;
cout<<"a=";
cin>>a;
int ra=a;
int *pa=&a;
cout<<"a 的值:"<<a<<endl;
cout<<"a 的地址:"<<&a<<endl;
cout<<"ra 的值:"<<ra<<endl;
cout<<"ra 的地址:"<<&ra<<endl;
cout<<"pa 所指向的变量的值:"<<*pa<<endl;
cout<<"pa 的地址:"<<pa<<endl;
}
4.数据对象在 C++中有什么不同的访问方式?请编写一个程序验证之。
【解答】
数据对象在 C++中的访问方式有:名访问,引用(别名)访问,间址访问。
验证程序:
#include<iostream>
using namespace std;
int main()
{
int a;
cout<<"a=";
cin>>a;
a=a+5; //名访问
cout<<&a<<endl; //输出变量地址
cout<<*(&a)<<endl; //地址访问,输出变量值
int *pa=&a; //说明指针变量,指向变量 a
cout<<*pa<<endl; //间址访问,输出变量值
int &ra=a; //ra 是 a 的引用
cout<<ra<<endl; //引用访问,输出变量 a 的值
}
5.为了约束对数据对象的值做只读操作,C++采用什么方式?请给出简要归纳。
【解答】
约束数据对象只读形式如下:
约束对象 说明形式
标识常量 const 类型 常量标识符=常量表达式;
指针常量 类型 * const 指针;
指向常量的指针 const 类型 * 指针; 或者 类型 const * 指针;
指向常量的指针常量 const 类型 * const 指针; 或者 类型 const * const 指针;
常引用
const 类型 & 引用名 = 对象名;
6.什么叫表达式?表达式值的类型由什么因素决定?使用不同运算符连接以下三个变量,请写出 5
个以上运算结果值等于 true 的表达式。
int a=1, b=2; double x=0.5;
【解答】
表达式是由数据和运算符,按求值规则,表达一个值的式子。
表达式值的类型的决定因素为操作数的类型。
(1)如果运算符左右操作数类型相同,运算结果也是相同类型。
(2)如果运算符左右操作数类型不同,首先把类型较低(存储要求,示数能力较低)的数据转换成
类型较高的数据,然后运算。
(3)赋值表达式的类型由被赋值变量的类型决定。当把一个表达式的值赋给一个变量时,系统首先
强制把运算值转换成变量的类型,然后执行写操作。
6 个值等于 true 的表达式:
(1)b>a && a>x (2)(a+b)!=x (3)a||(b+x)
(4)a==(b*x) (5)a-b<x (6)(a/x==b)
二、程序设计
1.输入平面上某点横坐标 x 和纵坐标 y,若该点在如图 1.11 所示的方块区域内,则输出 true;否则
输出 false。
【解答】
#include <iostream>
using namespace std;
int main()
{
double x,y;
bool b;
cout << "please input x, y:\n";
cin >> x >> y;
b = ( -2<=x ) && ( x<=2 ) && ( -2<=y ) && ( y<=2 );
if(b)
cout<<"true"<<endl;
else
cout <<"false"<< endl;
}
2.输入三个整数,求出其中最小数(要求使用条件表达式)。
【解答】
#include <iostream>
using namespace std;
int main()
{
int a,b,c,temp,min;
cout << "please input a,b,c:";
cin >> a >> b >> c;
temp = ( a<b ) ? a:b;
min = ( temp<c ) ? temp:c;
cout << "min=" << min << endl;
}
3.编写一个程序。要求输入一个 5 位正整数,然后分解出它的每位数字,并将这些数字按间隔 2 个
空格的逆序形式打印输出。例如,用户输入 42339,则程序输出如下结果:
9 3 3 2 4
【解答】
#include<iostream>
using namespace std;
int main()
{
int t;
cout<<"Input one integer for 5 bit: ";
cin>>t;
cout<<t%10<<" "<<t/10%10<<" "<<t/100%10<<" "<<t/1000%10
<<" "<<t/10000<<endl;
}
第 2 章练习题
同步练习 2.1
一、选择题
1.已知 int i=0, x=1, y=0; 在下列选项中,使 i 的值变成 1 的语句是( )。
(A)if( x&&y ) i++; (B)if( x==y ) i++;
(C)if( x||y ) i++; (D)if( !x ) i++;
2.已知 int i=0, x=1, y=0; 在下列选项中,使 i 的值变成 1 的语句是( )。
(A)if( x ) {if(y) i=1; else i=0; } (B)if( x ) {if(y) i=1; } else i=0;
(C)if( x ) i=0; else { if(y) i=1; } (D)if( x ) i=1; else {if(y) i=0; }
3.设有函数关系为 y= ,在下列选项中,能正确表示上述关系的是( )。
(A)y = 1;
if( x >= 0 )
if( x == 0 ) y = 0;
else y = -1;
(B)y = -1;
if( x != 0 )
if( x > 0 ) y = 1;
else y = 0
(C)if( x <= 0 )
if( x < 0 ) y = -1;
else y = 0;
else y = 1;
(D)y = -1;
if( x <= 0 )
if( x < 0 ) y = -1;
else y = 0;
4.设 i=2,执行下列语句后 i 的值为( )。
switch( i )
{ case 1 : i ++;
case 2 : i --;
case 3 : ++ i; break;
case 4 : -- i;
default : i ++;
}
剩余63页未读,继续阅读
王小風
- 粉丝: 3
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 构建Cadence PSpice仿真模型库教程
- VMware 10.0安装指南:步骤详解与网络、文件共享解决方案
- 中国互联网20周年必读:影响行业的100本经典书籍
- SQL Server 2000 Analysis Services的经典MDX查询示例
- VC6.0 MFC操作Excel教程:亲测Win7下的应用与保存技巧
- 使用Python NetworkX处理网络图
- 科技驱动:计算机控制技术的革新与应用
- MF-1型机器人硬件与robobasic编程详解
- ADC性能指标解析:超越位数、SNR和谐波
- 通用示波器改造为逻辑分析仪:0-1字符显示与电路设计
- C++实现TCP控制台客户端
- SOA架构下ESB在卷烟厂的信息整合与决策支持
- 三维人脸识别:技术进展与应用解析
- 单张人脸图像的眼镜边框自动去除方法
- C语言绘制图形:余弦曲线与正弦函数示例
- Matlab 文件操作入门:fopen、fclose、fprintf、fscanf 等函数使用详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功