C++程序设计课后习题答案 第一章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=z*b++,b=b*x,b++值为:42,x为7,b为43 ch4=ch3-ch2+ch1值为:’\\\\’ int(y/z)+(int)y/(int)z值为:13
!(a>b)&&c&&(x*=y)&&b++值为:0,b为5 注:只要出现一个false右边的不再做。
ch3||(b+=a*c)||c++值为:1,c为0 注:只要出现一个true,右边不再做。 z=(a<<2)/(b>>1)值为:6
1.3判断下列哪些是常量,哪些是变量。
\ const int n=10; int m=5; 'a' char ch='a' int array[5]={1,2,3,4,5}; char s[]=\
答:\文字常量 const int n=10;常变量 int m=5;变量 'a' 文字常量 char ch='a'变量
int array[5]={1,2,3,4,5};变量 char s[]=\变量
1.4将下列算式或叙述用C++表达式描述。 (1)
(2) (x+y)/((x-y)*ay)
(3)位于原点为圆心,a, b为半径的圆环中的点坐标。 (4) 。
(5) 并且字符ch不为'\\0'。
答: 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,b:19,c:35,d:23 1.8对于习题1.7,若执行: