欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C++程序设计基础(第4版)(上)习题解答2.pdf

    • 资源ID:89820699       资源大小:11.17MB        全文页数:140页
    • 资源格式: PDF        下载积分:12金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++程序设计基础(第4版)(上)习题解答2.pdf

    C+程 序 设 计 基 础(第 4 版)(上)习 题 与 解 答 第 1章 基 本 数 据 与 表 达 式 i.i 选 择 题 1.个 最 简 单 的 C+程 序,可 以 只 有 一 个(C)。(A)库 函 数(B)自 定 义 函 数(C)main函 数(D)空 函 数 2.用 C H 语 言 编 写 的 源 程 序 要 成 为 目 标 程 序 必 须 要 经 过(D)。(A)解 释(B)汇 编(C)编 辑(D)编 译 3.C+程 序 中 的 简 单 语 句 必 须 以(B)结 束。(A)冒 号(B)分 号(C)空 格(D)花 括 号 4.假 设 有 说 明 inta=O;double x=5.16;,则 在 以 下 语 句 中,(C)属 于 编 译 错 误。(A)x=a/x;(B)x=x/a;(C)a=a%x;(D)x=x*a;5.执 行 C+程 序 时 出 现 的“溢 出”错 误 属 于(C)错 误。(A)编 译(B)连 接(C)运 行(D)逻 辑 6.在 下 列 选 项 中,全 部 都 是 C+关 键 字 的 选 项 为(C)。(A)while IF Static(C)sizeof case extern(B)break(D)switchchar gofloat integer7.按 C H 标 识 符 的 语 法 规 定,合 法 的 标 识 符 是(A)o(A)_abc(B)new(C)it(D)age8.在 C H 语 句 中,两 个 标 识 符 之 间(A)不 用 作 为 C+的 分 隔 符。(A)数 字(B);(C):(D)+9.下 列 正 确 的 八 进 制 整 型 常 量 表 示 是(B)。(A)OaO(B)015(C)080(D)0 x101 0.下 列 错 误 的 十 六 进 制 整 型 常 量 表 示 是(C)。(A)0 x11(B)Oxaf(C)Oxg(D)Oxlf11.在 下 列 选 项 中,全 部 都 合 法 的 浮 点 型 数 据 的 选 项 为(B)。(A)-le3.5 15.2e-4(B)12.34-le+5 0.1E-12(C)0.2e-2-12345.e-5(D)5.0e(1+4)0.1 8e+212.在 下 列 选 项 中,正 确 的 字 符 常 量 为(D)。(A)Ma(B),name(C)a(D)M O I113.在 下 列 选 项 中,(D)不 熊 交 换 变 量 a 和 b 的 值。(A)t=b;b=a;a=t;(B)a=a+b;b=a-b;a=a-b;(C)t=a;a=b;b=t;(D)a=b;b=a;14.关 于 下 列 语 句,叙 述 错 误 的 是(A)。int i=10,*p=&i;(A)p 的 值 为 10(B)p 指 向 整 型 变 量 i(C)*p表 示 变 量 i的 值(D)p 的 值 是 变 量 i的 地 址 15.有 以 下 变 量 说 明,下 面 不 走 哪 的 赋 值 语 句 是(B)。int a=5,b=10,c;int*pl=&a,*p2=&b;(A)*p2=b;(B)pl=a;(C)p2=pl;(D)16.有 以 下 变 量 说 明,下 面 正 确 的 语 句 是(B)。int a=10,b;int&pa=a,&pb=b;(A)&pb=a;(B)pb=pa;(C)c=*pl*(*p2);pb=&pa;(D)*pb=z*pa;17.执 行 下 面 语 句 序 列 后,a和 b 的 值 分 别 为(B)。int a=5,b=3,t;int&ra=a;int&rb=b;t=ra;ra=rb;rb=t;(A)3 和 3(B)3 和 5(C)5 和 3(D)5 和 518.在 下 列 运 算 符 中,(D)优 先 级 最 高。(A)=(B)*=19.在 下 列 运 算 符 中,(D)优 先 级 最 低。(A)!(B)&(C)(C)+!=(D)(D)*?:2 0.已 知 inti=l,j=2;,则 表 达 式 i+j的 值 为(C)o(A)1(B)2(C)3(D)42 1.已 知 inti=l,j=2;,则 表 达 式-H-i+j的 值 为(D)o(A)1(B)2(C)3(D)42 2.在 下 列 表 达 式 选 项 中,(C)是 正 确。(A)+(a+)(B)a+b(C)a+b(D)a+b2 3.己 知 int i=0,j=l,k=2;,则 逻 辑 表 达 式-F+i|-j&+k(A)0(B)1(C)的 值 为(B)o2(D)32 4.执 行 下 列 语 句 后,x 的 值 是(D),y 的 值 是()。int x,y;x=y=l;-H-x|+y;(A)不 确 定(B)0(C)1(D)22 5.设 x 为 整 型 变 量,不 砥 正 确 表 达 数 学 关 系 l x V 5 的 C H 逻 辑 表 达 式 是(A)。(A)lx5(B)x=2|x=3|x=4(C)lx&x5(D)!(x=5)2 6.己 知 intx=5;,执 行 下 列 语 句 后,x 的 值 为(C)。x+=x-=x*x;(A)25(B)40(C)-40(D)2027.设 ini a=l,b=2,c=3,d=4;,则 以 下 条 件 表 达 式 的 值 为(A)。ab?a:cd?c:d(A)1(B)2(C)3(D)428.以 下 逗 号 表 达 式 的 值 为(D)。(x=4*5,x*5),x+25(A)25(B)20(C)100(D)451.2根 据 下 列 数 学 表 达 式 写 出 C+算 术 表 达 式 1.-2.xxx(ax+b)+c+d+ex+yl _5.cot-r 6.g(cr+ab+b2)(1+口【解 答】1.1/(1+1/(1+l/(x+y)2.x*(x*(x*(a*x+b)+c)+d)+e3.log(1+pow(fabs(a+b)/(a-b),10)4.sqrt(1+3.14159/2*cos(48*3.14159/180)5.l/tan(1-x*x)/(1+x*x)或 者 cos(1-x*x)/(1+x*x)/sin(1-x*x)/(1+x*x)6.log 10(a*a+a*b+b*b)1.3用 逻 辑 表 达 式 表 示 下 列 条 件 1.i 被/整 除 2.是 小 于 正 整 数 的 偶 数 3.l r 1 0,1 0 0 6.坐 标 点(x,y)落 在 以(10,2 0)为 圆 心,以 3 5为 半 径 的 圆 内 7.三 条 边”,人 和 c 构 成 三 角 形 8.年 份 Y ear能 被 4 整 除,但 不 能 被 100整 除,或 者 能 被 4 0 0整 除【解 答】1.i%j=0 2.(nk)&(n%2=0)3.l=x&x10 4.xz|y=-100&y=10&y=1 00)6.sqrt(pow(x-10),2)+pow(y-20),2)c&b+ca&c+ab8.(year%4=0)&(year%100!=0)|(year%400=0)1.4 阅 读 下 列 程 序,写 出 运 行 结 果#includc using namespace std;int main()int a=1,b=2;bool x,y;cout(a-H-)+(-H-b)endl;cout a%b endl;x=!ab;y=a-&b;cout x endl;cout y endl;)【解 答】42012.#include using namespace std;int main()int x,y,z,x=y=z=1;f=-x|y-&z-H-;cout x=x cndl;cout y=*y endl;cout z=z endl;cout”f=H f endl;)【解 答】x=0y=0z=2f=l3.#include#includeusing namespace std;int main()(int a=123;int&ra=a;int*pa=&a;coutsctw(5)decasctw(5)octrasctw(5)hcx*paend 1;【解 答】123 173 7b1.5 思 考 题 1.什 么 是 数 据 类 型?变 量 的 类 型 定 义 有 什 么 作 用?【解 答】数 据“类 型”是 对 数 据 的 抽 象。类 型 相 同 的 数 据 有 相 同 的 表 示 形 式、存 储 格 式 以 及 相 关 的 操 作。定 义 一 个 变 量 时,计 算 机 根 据 变 量 的 类 型 分 配 存 储 空 间,并 以 该 类 型 解 释 存 放 的 数 据。2.普 通 数 据 类 型 变 量 和 指 针 类 型 变 量 的 定 义、存 储 和 使 用 方 式 有 何 区 别?请 编 写 一 个 程 序 验 证 之。【解 答】变 量 类 型 定 义 存 储 使 用 方 式 数 据 类 型 标 识 符 数 据 值 通 过 名 访 问 即 直 接 访 问 对 变 量 内 容 操 作 指 针 类 型*标 识 符 地 址 值 通 过 指 针 变 量 的 地 址 值 间 址 访 问 对 象 验 证 程 序:#includeusing namespace std;int main()int a,b,c;couta,b,c=c in a b c;对 普 通 数 据 类 型 变 量 赋 值 int*pa=&a,*pb=&b,*pc=&c;用 变 量 地 址 值 初 始 化 指 针 变 量 couta,b,c=a,b,c e n d l;/名 访 问,输 出 a,b,c的 值 coutpa,pb,pc=p a,p b,p c en d l;/输 出 指 针 变 量 的 地 址 值 间 址 访 问,输 出 pa,pb,pc指 向 的 变 量 的 赋 值 cout*pa,*pb,*pc=*p a,*p b,*pcendl;3.什 么 是 数 据 对 象 的 引 用?对 象 的 引 用 和 对 象 的 指 针 有 什 么 区 别?请 用 一 个 验 证 程 序 说 明 之。【解 答】引 用 是 为 数 据 对 象 定 义 别 名。引 用 与 指 针 有 以 下 几 点 区 别:(1)引 用 名 不 是 内 存 变 量,而 指 针 变 量 要 开 辟 内 存 空 间。(2)引 用 名 需 要 在 变 量 定 义 与 变 量 名 绑 定,并 且 不 能 重 定 义;指 针 变 量 可 以 在 程 序 中 赋 给 不 同 的 地 址 值,改 变 指 向。(3)程 序 中 用 变 量 名 和 引 用 名 访 问 对 象 的 形 式 和 效 果 一 样;指 针 变 量 通 过 间 址 访 问 对 象。验 证 程 序:#includeusing namespace std;int main()int a;co u tMa=;cina;int ra=a;int*pa=&a;c o u tMa 的 值:M a e n d l;coutvv”的 地 址:vv&aendl;coutra 的 值:M ra e n d l;c o u tMra 的 地 址:vv&raendl;c o u tMp a所 指 向 的 变 量 的 值:”*paendl;c o u tMpa 的 地 址:wpavvendl;)4.数 据 对 象 在 C+中 有 儿 种 不 同 的 访 问 方 式?请 编 写 个 程 序 验 证 之。【解 答】数 据 对 象 在 C+中 的 访 问 方 式 有:验 证 程 序:#includeusing namespace std;int main()int a;couta=*;cina;a=a+5;cout&aendl;cout*(&a)endl;int*pa=&a;cout*paendl;int&ra=a;coutraendi;名 访 问,引 用(别 名)访 问,间 址 访 问。名 访 问 输 出 变 量 地 址 地 址 访 问,输 出 变 量 值 说 明 指 针 变 量,指 向 变 量 a 间 址 访 问,输 出 变 量 值 ra是 a 的 引 用 引 用 访 问,输 出 变 量 a 的 值 5.为 了 约 束 对 数 据 对 象 的 值 进 行 只 读 操 作,C H采 用 什 么 方 式?请 进 行 简 要 归 纳。【解 答】约 束 数 据 对 象 只 读 形 式 如 下:约 束 对 象 说 明 形 式 标 识 常 量 const类 型 常 量 标 识 符=常 量 表 达 式;指 针 常 量 类 型*c o n st指 针;指 向 常 量 的 指 针 const类 型*指 针;或 者 类 型 c o n st*指 针;指 向 常 量 的 指 针 常 量 const类 型*co n st指 针;或 者 类 型 const*c o n st指 针;常 引 用 const类 型&引 用 名=对 象 名;6.什 么 是 表 达 式?表 达 式 值 的 类 型 由 什 么 因 素 决 定?使 用 不 同 运 算 符 连 接 以 下 3 个 变 量,请 写 出 5个 以 上 获 得 值 为 true的 表 达 式。int a=l,b=2;double x=0.5;【解 答】表 达 式 是 由 数 据 和 运 算 符,按 求 值 规 则,表 达 个 值 的 式 子。表 达 式 值 的 类 型 的 决 定 因 素 为 操 作 数 的 类 型。(1)如 果 运 算 符 左 右 操 作 数 类 型 相 同,运 算 结 果 也 是 相 同 类 型。(2)如 果 运 算 符 左 右 操 作 数 类 型 不 同,首 先 把 类 型 较 低(存 储 要 求,示 数 能 力 较 低)的 数 据 转 换 成 类 型 较 高 的 数 据,然 后 运 算。(3)赋 值 表 达 式 的 类 型 由 被 赋 值 变 量 的 类 型 决 定。当 把 一 个 表 达 式 的 值 赋 给 一 个 变 量 时,系 统 首 先 强 制 把 运 算 值 转 换 成 变 量 的 类 型,然 后 执 行 写 操 作。6 个 值 等 于 true的 表 达 式:(1)ba&ax(2)(a+b)!=x(3)a|(b+x)(4)a=(b*x)(5)a-bx(6)(a/x=b)7.阅 读 以 下 程 序,分 析 下 面 语 句 序 列 中 每 个 字 符“*”和“&”的 含 义,并 写 出 输 出 结 果。#include using namespace std;int main()(inta=10,b=20;int*p=&a,*q=&b;*p=*p*q;int&ra=a;ra=a;int*&rt=q;*rt=30;couta=,a,n b=b n*p=*p,n*q=,*q,nra=,r a,n*rt=,*rt e n d l;)【解 答】字 符“*”和 的 意 义 见 程 序 中 添 加 的 注 释。#include using namespace std;int main()(int a=10,b=20;int*p=&a,*q=&b;/“*”是 指 针 类 型 说 明 符,是 取 址 运 算 符*p=*p*q;第 1、2、4个“*”是 间 址 访 问 符,第 3个“*”算 术 乘 运 算 符 int&ra=a;/&是 引 用 说 明 符 ra=a;int*&rt=q;/是 指 针 类 型 说 明 符,是 引 用 说 明 符*rt=30;“物 是 间 址 访 问 符 输 出 语 句+的“*”是 间 址 访 问 符 c o u t,a=a,n b=b n*p=,*p n*q=,*q,nra=,r a,n*rt=,*r t e n d l;程 序 输 出 结 果 为:a=200b=30*p=200*q=30ra=200*rt=301.6 编 程 题 1.输 入 一 个 3 位 整 数,将 它 反 向 输 出。【解 答】#include using namespace std;int main()(int x,i,j,k;cout please input x:n;cin x;i=x/IOO;j=x/10%10;k=x%10;cout k j i endl;2.输 入 平 面 上 某 点 横 坐 标 x 和 纵 坐 标),若 该 点 位 于 图 1.11所 示 的 方 块 区 域 内,则 输 出 1;否 则,输 出 Oo【解 答】#include using namespace std;int main()double x,y,b;cout please input x,y:M;cin x y;图 1.1 1 方 形 区 域 b=(-2=x)&(x=2)&(-2=y)&(y=2);cout b endl;3.输 入 3 个 整 数,求 出 其 中 最 小 数(要 求 使 用 条 件 表 达 式)。【解 答】/include using namespace std;int main()int a,b,c,temp,min;cout please input a,b,c:;cin a b c;temp=(ab)?a:b;min=(tempc)?temp:c;cout min endl;第 2 章 程 序 控 制 结 构 2.1 选 择 题 已 知 int i=0,x=l,y=0;,在 下 列 选 项 中,使 i的 值 变 成 1 的 语 句 是(C)o(A)iRx&y)i+;(C)if(x|y)i+;-12.设 有 函 数 关 系 为 产 01(A)y=1;if(x=0)if(x=0)y=0;else y=-1;(C)if(x=0)if(x0)y=-l;else y=0;else y=1;3.假 设 i=2,执 行 下 列 语 句 后(B)iRx=y)i+;(D)iff!x)i+;x 0(B)y=-l;ifi(x!=0)if(x0)y=1;else y=0(D)y=-l;iff x=0)if(x0)y=-l;else y=0;的 值 为(B)oswitch(i)case 1:i+;case 2:i;case 3:+i;break;case 4:-i;default:i+;)(A)1(B)2(C)3(D)44.l2知 inti=0,x=0;,在 下 面 while语 句 执 行 时 循 环 次 数 为(D)。while(!x&i 3)x+;i+;(A)4(B)3(C)2(D)15.已 知 inti=3;,在 下 面 do_whi1e语 句 执 行 时 的 循 环 次 数 为(B)。do i;coutiendl;(while(i!=I);(A)1(B)2(C)3(D)无 限 6.卜 面 fbr语 句 执 行 时 的 循 环 次 数 为(B).int i,j;for(i=0,j=5;i=j;)cout i j ndl;i+;j-;(A)0(B)5(C)10(D)无 限 7.以 下 程 序 段 形 成 死 循 环 的 是(B)。(A)int x;fdr(x=0;x=0);(C)int a=5;while(a)a;(D)int i=3;for(;i;i-);2.2 阅 读 下 列 程 序,写 出 运 行 结 果#includcusing namespace std;int main()int a,b,c,d,x;a=c=0;b=1;d=20;iK a)d=d-10;elseifl:!b)if(!c)x=15;else x=25;cout d endl;【解 答】20L#includeusing namespace std;int main()(int a=0,b=1;switch(a)(case 0:switch(b)case 0:couta=M a u b=bendl;break;case 1:couta=M a n b=,b e n d l;break;case 1:a+;b+;c o u t,a=M a n b=,b e n d l;)【解 答】a=0 b=1a=1 b=23.#includeusing namespace std;int main()in ti=1;while(i=10)(ifl;+i%3!=1)continue;elsecout i endl;)【解 答】47104.#includeusing namespace std;int main()(int i=0,j=5;do|if(i3)break;while(j0);cout i=i cndl“j=j cndl;【解 答】i=4j=l5.#includeusing namespace std;int main()int ij;fbr(i=l,j=5;ij;i+)j-;)c o u t i t,jendl;)【解 答】3 36.#includeusing namespace std;int main()int i,s=0;fdr(i=0;i5;i-H-)switch(i)(case 0:s+=i;break;case 1:s+=i;break;case 2:s+=i;break;default:s+=2;cout,s=scndl;【解 答】s=77.#includcusing namespace std;int main()(int i,j,x=0;for(i=0;i=3;i-H-)(X-H-;fbr(j=0;j=3;j+)(if(j%2)continue;x+;X-H-;)cout”x=x cndl;【解 答】x=162.3 思 考 题 i.C+语 言 中 有 什 么 形 式 的 选 择 控 制 语 句?归 纳 它 们 的 语 法 形 式、应 用 场 合。根 据 一 个 实 际 问 题 使 用 不 同 的 条 件 语 句 编 程。【解 答】语 句 使 用 方 式 使 用 场 合 i f语 句 if(表 达 式)语 句 1;需 要 对 给 定 的 条 件 进 行 判 断,并 根 据 判 断e ls e语 句 2;的 结 果 选 择 不 同 的 操 作。适 用 于 复 杂 的 条 件 表 达 式 判 断。sw itch语 句 switch(表 达 式)(c a s e常 量 表 达 式 1:语 句 1;c a s e常 量 表 达 式 2:语 句 2;c a s e常 量 表 达 式 n;语 句 n;default:语 句 n+1;根 据 整 型 表 达 式 的 不 同 值 决 定 程 序 分 支 的 情 况。适 用 于 判 断 表 达 式 简 单,需 要 多 个 分 支 处 理 的 情 况。演 示 程 序:程 序(1)此 程 序 用 ifW出 等 级 对 应 的 分 数 段/A-=90,B-(90,80,C-(80,70,D-(70,60E-60#includeusing namespace std;int main()char gd;coutEnter the grade:1;cin g d;直 到 输 入 有 效 等 级,否 则 程 序 不 继 续 运 行 while(!(gd=,A,&gd=,a,&gd=90,B-(90,80,C-(80,70,D-(70,60E-60#includeusing namespace std;int main()char gd;c o u tMEnter the grade:,;cingd;直 到 输 入 有 效 等 级,否 则 程 序 不 继 续 运 行 while(!(gd-A*&gd-a,&gd-e*)c o u tnlnvalid grade!Please retry:u;cin g d;switch(gd)case A:c a s e c o u t MnScored 90-I00!n;break;case B:case b:c o u tunScored 80-89!nM;break;case C:case c:cout”nScored 70-79!nu;break;case D:case d:cout”nScored 60-69!nu;break;case E:case,e,:c o u tnnScore under 60!n;break;default:coutUnexpect error!n;防 止 意 外 错 误 2.什 么 叫 做 循 环 控 制?归 纳 比 较 C+语 言 中 各 种 循 环 控 制 语 句 的 语 法、循 环 条 件 和 循 环 结 束 条 件 的 表 示 形 式 及 执 行 流 程。【解 答】循 环 控 制 是 在 特 定 的 条 件 下,程 序 重 复 执 行 些 特 定 动 作。语 句 语 法 while语 句 while(表 达 式)循 环 体;循 环 条 件:表 达 式 值 为 非 0(真)循 环 结 束 条 件:表 达 式 值 为 0(假)执 行 流 程 使 用 场 合 程 序 中 常 用 于 根 据 条 件 执 行 操 作 而 不 需 关 心 循 环 次 数 的 情 况。先 判 断 形 式 循 环,条 件 不 成 立 时 不 进 入 循 环 体。do-while 语 句 do循 环 体 while(表 达 式);循 环 条 件:表 达 式 值 为 非 0(真)循 环 结 束 条 件:表 达 式 值 为 0(假)程 序 中 常 用 于 根 据 条 件 执 行 操 作 而 不 需 关 心 循 环 次 数。后 判 断 形 式 循 环,至 少 执 行 1次 循 环 体。一 般 情 况,w h ile语 句 和 dowhile语 句 可 以 互 换 使 用。for语 句 lbr(表 达 式 1;表 达 式 2;表 达 式 3)循 环 体;(1)表 达 式 1称 为 初 始 化 表 达 式,不 是 循 环 体 执 行 部 分。(2)表 达 式 3 称 为 后 置 表 达 式,作 为 循 环 体 的 最 后 一 个 执 行 表 达 式。(3)循 环 条 件:表 达 式 2 值 为 非 0(真)循 环 结 束 条 件:表 达 式 2 值 为 0(假)for语 句 称 为 步 长 循 环 语 句,通 常 用 于 确 定 循 环 次 数 的 情 况。由 于 语 句 的 3 个 表 达 式 均 可 以 缺 省,也 可 以 用 于 条 件 循 环,即 循 环 次 数 不 确 定 的 情 况。表 达 式】r1 truefals循 环 体 1表 达 式 S1forr语 句 的 执 行 流 程 3.根 据 一 个 实 际 问 题,用 不 同 的 循 环 语 句 编 程,分 析 其 优 缺 点。【解 答】略。4.用 if语 句 和 goto语 句 组 织 循 环,改 写 上 面 第 3 题 编 写 的 程 序,并 分 析 在 什 么 情 况 下 可 以 适 当 使 用 goto语 句。【解 答】在 不 破 坏 程 序 基 本 流 程 控 制 的 情 况 下,可 以 适 当 使 用 g o to语 句 实 现 从 语 句 结 构 内 部 向 外 的 必 要 跳 转,即 按 特 定 条 件 结 束 结 构 语 句 块 的 执 行。程 序 略。5.有 以 下 程 序,希 望 判 断 两 个 输 入 的 整 数 是 否 相 等。程 序 通 过 编 译,但 不 能 达 到 预 期 结 果。请 分 析 程 序 能 够 通 过 C H编 译 而 不 能 得 到 期 望 结 果 的 原 因。#includcusing namespace std;int main()(int a,b;c o u tMa:;cina;c o u tnb:;cinb;if(a=b)coutw aw 等 于 vb vendl;elsecoutwa v v”不 等 于 bv end 1;运 行 程 序,输 入 a 的 值 为 4,b 的 值 为 9,显 示 结 果 如 下:a:4b:99 等 于 9【解 答】在 i f语 句 的 判 断 表 达 式(a=b)U,赋 值 号 J”应 该 是 逻 辑 等 从 语 法 上,C+的 i f语 句 把 a=b这 个 赋 值 表 达 式 视 为 逻 辑 表 达 式,没 有 编 译 错 误。a=b的 值 决 定 于 b。若 b 的 输 入 值 不 等 于 0,if语 句 的 判 断 表 达 式 作 为 逻 辑 真(tru e),否 则 作 为 逻 辑 假(fa lse)。所 以,题 目 中 输 入 b 的 值 虽 然 不 等 于 a,但 表 达 式 a=b为 逻 辑 tr u e,执 行 了 if语 句 的 第 1个 分 支。2.4 编 程 题 1.输 入 某 学 生 成 绩,若 成 绩 在 8 5分 以 上,则 输 出 飞 ery good;若 成 绩 在 60 8 5分 之 间,则 输 出“good”;若 成 绩 低 于 6 0分,则 输 出“no good”。【解 答】#includeusing namespace std;int main()double score;cout please input score:;cin score;if(score=85)cout nVery good!,1;else if(score=60)cout Good!;else cout”No good!;2.输 入 3 个 整 数,按 从 小 到 大 的 顺 序 输 出 它 们 的 值。【解 答】#includeusing namespace std;int main()(int a,b,c,t;cout a,b,c=”;cin a b c;if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;c o u t a C b t*c endl;)3.输 入 三 角 形 的 3 条 边,判 别 它 们 能 否 形 成 三 角 形,若 能,则 判 断 是 等 边、等 腰 三 角 形,还 是 一 般 三 角 形。【解 答】#includeusing namespace std;int main()(double a,b,c;cout a,b,c=H;cin a b c;if(a+b c&b+c a&c+a b)if(a=b&b=c)coin vv”等 边 三 角 形!endl;else if(a=b|a=c|b=c)cout”等 腰 三 角 形!vv endl;else cout”一 般 三 角 形!vv endl;elsecout”不 能 形 成 三 角 形!endl;)4.输 入 百 分 制 成 绩,并 把 它 转 换 成 五 级 分 制,转 换 公 式 为:A(优 秀)90 100grade(级 别)=B(良 好)80 89C(中 等)70 79D(合 格)60 69【解 答】#includeusing namespace std;int main()(double score;char grade;cout score=;cin score;if(score=0&score=100)switch(int(score)/IO)case 10:case 9:grade=a1;break;case 8:grade=b;break;case 7:grade=*c;break;case 6:grade=d;break;case 5:case 4:case 3:case 2:case 1:case 0:grade=e;break;)else|cout vv”数 据 输 入 错 误!vvendl;goto end;cout grade endl;end:分 号 不 能 省 5.编 程 模 拟 剪 刀、石 头 和 布 游 戏。游 戏 规 则 为:剪 刀 剪 纸,石 头 砸 剪 刀,布 包 石 头。玩 游 戏 者 从 键 盘 输 入 s(表 示 剪 刀)或 r(表 示 石 头)或 p(表 示 布),要 求 两 个 游 戏 者 交 替 输 入,计 算 机 给 出 输 赢 的 信 息。【解 答】#includeusing namespace std;int main()char first,second;cout First input(s,r or pcin first;cout Second input(s,r or pcin second;switch(first)|case s:switch(second)(case s:cout”Scissor ties scissor.0 endl;goto end;case T:cout Scissor is crushed by rock.endl;goto end;case p:cout Scissor cuts paper.*endl;goto end;default:cout second input error!endl;goto end;case T:switch(second)(case s:cout Rock crushes scissor.u endl;goto end;case T:cout Rock ties dl;goto end;case p:cout*Rock is wrapped by paper.n endl;goto end;default:cout second input error!1 cndl;goto end;)case p*:switch(second)case s:cout Paper is cut by scissor.endl;goto end;case T:cout Paper wraps the rock.endl;goto end;case*p*:cout Taper ties paper.endl;goto end;default:cout second input error!endl;goto end;default:cout First input error!endl;goto end;end:;6.输 入 一 个 整 数,输 出 该 整 数 的 所 有 素 数 因 子。例 如,输 入 1 2 0,输 出 为 2、2、2、3 和 5。【解 答】#includeusing namespace std;int main()(int m,i=2;cout please input m:;cin m;while(i=m)if(m%i=0)(cout i vvm=m/i;)else i+;7.使 用 迭 代 公 式 x”+=(/+/4)/2 5=0,1,2沁=/2)编 程 求 某 一 正 整 数。的 平 方 根。【解 答】#include#includeusing namespace std;int main()const double cps=le-8;double a,x0,x;cout please input a:;cin a;x0=a/2;x=(xO+a/xO)/2;whilc(fabs(x-xO)cps)x0=x;x=(xO+a/xO)/2;cout x cndl;)8.已 知 x=0,10,2 0,,1 8 0,求 sinx,cosx 和 tanx 的 值。【解 答】#include#includc#includeusing namespace std;int main()const double pi=3.14159265;int i;double x,yl,y2,y3;cout setw(2)x setw(15)w sin(x)”vv setw(15)Mcos(x)n setw(15)tg(x)M endl;fbr(i=0;i=18;i-H-)(x=i*10*pi/180;yl=sin(x);y2=cos(x);y3=yl/y2;cout setw(2)i*l 0 setw(15)yl setw(l5)y2 setw(15)y3 endl;)9.在 100 2 0 0之 间 找 出 满 足 用 3 除 余 2,用 5 除 余 3 和 用 7 除 余 2 的 所 有 整 数。【解 答】#includeusing

    注意事项

    本文(C++程序设计基础(第4版)(上)习题解答2.pdf)为本站会员(文***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开