c程序设计吴乃陵况迎辉课后答案.doc

  1. 1、本文档共111页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c程序设计吴乃陵况迎辉课后答案

第一章 C++基础知识习题 1 第一章 C++基础知识习题 1.1 判断下列标识符的合法性。 sin book 5arry _name Example2.1 main $1 class_cpp a3 x*y my name 答:合法的:sin book _name main class_cpp a3 非法的:5arry Example2.1 $1 x*y my name 1.2 假定有下列变量: int a=3,b=5,c=0; float x=2.5,y=8.2,z=1.4; char ch1=’a’,ch2=’5’,ch3=’0’,ch4; 求下列表达式的值,以及运算后表达式所涉及的各变量的值。 x+(int)y%a x=z*b++,b=b*x,b++ ch4=ch3-ch2+ch1 int(y/z)+(int)y/(int)z !(a>b)&&c&&(x*=y)&&b++ ch3||(b+=a*c)||c++ z=(a<<2)/(b>>1) 答:x+(int)y%a 表达式值为:4.5,运算后x、y、a的值不变,仍分别为2.5、8.2、3。 提示:运算时取出y变量的数值强制转化为整型数放入寄存器参加运算,但内存中y本身的数值不变化。只有赋值运算和自增、自减运算才改变变量本身的值 x=z*b++,b=b*x,b++ 表达式值为:42,运算后x为7.0,b为43。 提示:逗号表达式,依次运算,表达式的值是最后一次运算的值。后++是变量先参加运算然后变量自身加1,所以第1步x等于1.4*5,即7.0,然后b增为6;第2步b赋值为42;第3步,表达式的值是上一步后b的值42,但随后b的值自增1,成为43。 ch4=ch3-ch2+ch1 表达式值为:’\\’,字符外斜杠。运算后ch1、ch2、ch3值不变。 提示:字符型的变量实质是范围很小的整型量。 int(y/z)+(int)y/(int)z 表达式值为:13。y和z自身的值不变。 提示:int(y/z)是完成实数除法后,商强制转化为整型,(int)y/(int)z则是数值先转换,完成的是整除。 !(a>b)&&c&&(x*=y)&&b++ 表达式值为:0。运算后x仍为2.5,b仍为5 提示:只要出现一个false右边的不再做,因为c为0,即false,所以其右的所有运算不再做。 ch3||(b+=a*c)||c++ 表达式值为:1。运算后b为5,c为0,均不变。 提示:只要出现一个true,右边不再做。ch3的值为48。 z=(a<<2)/(b>>1) 表达式值为:6。运算后a与b的值不变仍为3和5。 提示:a的数值为2,左移2位为2即12,相当整数2两次,而b的数值为2,右移1位为2,即2,相当于整除2。 1.3 判断下列哪些是常量,哪些是变量。 "China" const int n=10; int m=5; 'a' char ch='a' int array[5]={1,2,3,4,5}; char s[]="Hello"; 答:"China" 文字常量 const int n=10; 常变量 int m=5; 变量 'a' 文字常量 1 第一章 C++基础知识习题 2 char ch='a' 变量 int array[5]={1,2,3,4,5}; 变量 char s[]="Hello"; 变量 1.4 将下列算式或叙述用C++表达式描述。 (1) 22)(arcsin2cx??? (2) (x+y)/((x-y)*ay) (3) 位于原点为圆心,a, b为半径的圆环中的点坐标。 (4) 。 cba?? (5) 并且字符ch不为'\0'。 20?k 答: pi/2+sqrt(asin(x)*asin(x)+c*c) (x+y)/((x-y)*pow(a,y)) ((x*x+y*y)>=a*a)&&((x*x+y*y)<=b*b) (a!=b)&&(a!=c)&&(b!=c) (k<=20)&&(ch!='\0') 1.6 设有语句: int a, b; float x,y; char ch1,ch2,ch3; cin>>a>>b>>x>>y>>ch1; ch2=cin.get(); cin>>ch3; 若从键盘输入: 3 2 1.8 7 a b c 执行后各变量取值如何?注意abc三字符两两间有空格。 答:a是3,b是2,x是1.8,y是7,ch1是’a’,ch2是空格,ch3是’b’。 1.7 设有语句: int a,b,c,d; cin>>oct>>a>>b>>hex>>c>>dec>>d; 若从键盘输入: 23 23 23 23 执行后各变量的值用十进制表示各是多少? 答:a:19

文档评论(0)

peili2018 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档