1.1选择题
1. 在下列运算符中,( d )优先级最高。
(a) <= (b)*= (c)+ (d)*
2. 在下列运算符中,( d )优先级最低。
(a) ! (b)&& (c)!= (d)?:
3.设i=1,j=2,则表达式i+++j的值为( c )。
(a) 1 (b)2 (c)3 (d)4
4.设i=1,j=2,则表达式 ++i+j的值为( d )。
(a)1 (b)2 (c)3 (d)4
5.在下列表达式选项中,( c )是正确。
(a)++(a++) (b)a++b (c)a+++b (d)a++++b
6.已知i=0,j=1,k=2,则逻辑表达式 ++i||--j&&++k的值为( b )。
(a) 0 (b)1 (c)2 (d)3
7. 执行下列语句后,x的值是( d ),y的值是( c )。
int x , y ;
x = y = 1; ++ x || ++ y ;
(a) 不确定 (b) 0 (c) 1 (d) 2
8.设X为整型变量,能正确表达数学关系1< X < 5的C++逻辑表达式是( bcd )。
(a) 1(c) 1=5)9. 已知x=5,则执行语句
x += x -= x*x ;
后,x的值为( c )。
(a)25 (b)40 (c)-40 (d)20
10. 设a=1,b=2,c=3,d=4,则条件表达式a(a) 1 (b)2 (c)3 (d)4
11. 逗号表达式“(x=4*5,x*5),x+25的值为( d )。
(a) 25 (b)20 (c)100 (d)45
1.2把下列数学表达式写成c++算术表达式
11111xy1. 答案:1/(1+1/(1+1/(x+y)))
2.
12cos48 答案:sqrt(1+3.14159/2*cos(48*3.14159/180))
1.3 阅读下列程序,写出执行结果
1.#include void main()
{
int a = 1, b = 2, x, y;
cout << a++ + ++b << endl;
cout << a % b << endl;
x = !a>b; y = x-- && b;
cout << x << endl;
cout << y << endl;
}
答案:4
2
-1
0
2.#include void main()
{
int x,y,z,f;
x = y = z = 1;
f = --x || y-- && z++;
cout << \"x =\" << x << endl;
cout << \"y =\" << y << endl;
cout << \"z =\" << z << endl;
cout << \"f =\" << f << endl;
}
答案:
x = 0
y = 0
z = 2
f = 1
1.4编程题
1.输入一个三位整数,将它反向输出。
答案:
#include void main()
{ int a, b, c, t;
cout << \"a, b, c=\";
cin >> a >> b >> c;
if( a>b ) { t = a; a = b; b = t; }
if( a>c ) { t = a; a = c; c = t; }
if( b>c ) { t = b; b = c; c = t; }
cout << a << '\ '<< b << '\' << c << endl;
}
#include using namespace std;
void main()
{ int x,i,j,k;
cout << \"please input x:\";
cin >> x;
i = x/100;
j = ( x - i*100 ) / 10;
k = x - i*100 - j*10;
cout << k << j << i << endl;
}