所谓数组是具有一定顺序关系的若干个变量的集合,组成数组的各个变量称为数组的元素。数组中各元素的数据类型要求相同。数组可以是一维的,也可以是多维的。
char型的数组由包含ASCII字符集中的字符(英文字母、数字、标点符号以及某些特殊符号)的整数类型组成的数组。
short型的数组是由short数据类型组成的数组。类型short (或short int)是一种短整数类型,它占用字节的长度大于类型char, 小于或等于类型int。 8、 什么叫表达式?什么叫表达式语句?
答:所谓表达式是指由运算符、运算量和标点符号组成的有效序列,其目的是用来说明一个计算过程。
表达式可以独立形成语句,该语句称为表达式语句 9、 什么叫左值?什么叫右值?
答:所谓左值是指能够出现在赋值表达式左边的表达式。
所谓右值是指只能出现在赋值表达式的右边的数值。 10、 判断下列表达式的写法是否正确,如有错误,请改正:
a) V=43*PI*r3; // 原来公式为V=
43*?*r3
答:错误,表达式要写成 #define PI 3.1415926 V=4.0/3*PI*r*r*r
b) s=PI*r*r; // 原来公式为 s = 答:正确
c) r=1/(1/r1+r2) //原来公式为r?(11?1?r2
1
)2rr答:错误,表达式要写成 r=1/(1/r1+1/r2)
11、 若说明 int x(5), y(12), z(0) ; 经过下列算术表达式的计算之后,请给出整个算术表达式的结果值和x,y,z的各自值:
a) ++x+(--y+z++) b) y/x+y++/++z c) ?a?+y%x d) +x+(-y)/(++z+2)
答: a) x=6,y=11,z=1
b) x=5,y=13,z=1 c) x=5,y=12,z=0 d) x=5,y=12,z=1
12、 若说明 double x(12), y(1.5), z(18.5) ; 给出下列逻辑表达式的计算结果: a) x*y > z && z<100 || x>10 答: 结果:1 b) y/x<0 || z>0 && x>20
答: 结果:0
c) z-x>10 || z<100 && x<50 && y <0 答:结果:0
d) x && y>0 && !(z-x-6.5) || z<10 答:结果:1 13、 若说明 unsigned char x=47, y=0146, z=0xa3 ;给出下列位运算表达式的运算结果: a) ~x |y 结果为:0xf6 b) x & ~y 结果为:0x09
c) x & y ^ ~z 结果为:0x7a d) x | y ^z 结果为:0xef e) x<<2 | y 结果为:0xfe f) y>>5 ^ ~z 结果为:0x5f g) z ^ z | x 结果为:0x2f h) x&~x | z 结果为:0xa3 14、 若说明 char x= -27, y=056;分别给出下列位运算表达式的运算结果: a) ~x & y 答:结果:0x0a b) x | ~y 答: 0xf5
c) x<<2 | ~y 答: 0xd5 d) y>>3 ^ ~x答: 0xe0 15、 若说明 long x(1), y(2), z(3) ;请分别给出下列特殊运算符的运算结果; a) x
(a) 若int x=1, y=2; 则表达式 (y = 0)? ++x/- -y : ++y 的运算结果是什么? 答:x=1;y=1
(b) 若int x=5, y(15), *p=&x ; 则经过 y += ++x - 5, *p=++x+- -y ; 的运算之后,cout< (c) 若unsigned char x=77, y =077, z=0x 77 ; 则表达式 (x & y) ^ ~z 的值是什么? 答:结果:0x85 (d) 若int x(0), y=1, z(2), *pw=&z ; 则经过语句 *pw += y +1, x+= ++z, x += z –y ; 的运算, 则 x, y, z 的结果值各是什么? 答:x=9,y=1,z=5 (e) 若char x = ‘A’, y= 0x20; int z; y = z = x + y ; 则 cout<< x << \ \ y << \的输出结果是什么? 答:结果:A => a(97) 第三章 1、答: #include \#include double a[10]={-5,65,-32,98,-54,23,0,76,-307,-2}; double m=0; //m存放负数的和 cout<<\负数为:\ for(int i=0; i<10; i++) if( a[i]<0 ) //如为负数,则输出且叠加 { } cout< cout< 2、 #include \#include float x,y; //定义x,y cout<<\请输入x:\ cin>>x; if( x>=0 ) y=(sin(x)+cos(x))/2; else y=(sin(x)-cos(x))/2; cout<<\ return; } 3、 #include \#include float p0=1.03e9,pn; //定义人口基数p0和现在人口数量pn float r=0.01; //增长率r int n; //增长年份n for(n=1,pn=p0;pn<1.5e9;n++) //当人口多于15亿时停止循环 { pn=pn*(1+r); } n=n+1982; cout< return; } 4、 #include \#include char str[256]; //存放输入的字符串 int nLength=0; //存放统计的长度结果 int n[4]={0,0,0,0}; //记录各种字符个数 cout<<\:\ //显示输入提示信息 cin.get(str,256); // 使用cin流对象的输入方法,等价cin>>str ; while (str[nLength] != '\\0') nLength++; for(int i=0;i n[0]++; else if('0'<=str[i]&&str[i]<='9') n[1]++; else if('A'<=str[i]&&str[i]<='z') n[2]++; else n[3]++; }; cout<<\空格字符个数为:\ <<\数字的个数为:\ <<\英文字母个数为:\ <<\其它字符个数为:\ return; } 5、 #include \#include for(i=1;i<=9;i++) for(j=0;j<=9;j++) for(k=0;k<=9;k++) { //个十百位依次进行循环 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C++第一至第八章课后习题答案(2)在线全文阅读。
相关推荐: