习题 2及其解答
2.1选择题
1.已知 int i=0, x=1, y=0 ; 在下列选项使i的值变成1的语句是( c )。
(a) if( x&&y ) i++ ; (b) if( x==y ) i++ ;
(c) if( x||y ) i++ ; (d) if( !x ) i++ ;
2.设有函数关系为y= ,下面选项中能正确表示上述关系为( c )。
(a) y = 1 ; (b) y = -1 ;
if( x >= 0 ) if( x != 0 )
if( x == 0 ) y = 0 ; if( x > 0 ) y = 1 ;
switch语句表示范围else y = -1; else y = 0;
(c) if( x <= 0 ) (d) y = -1 ;
if( x < 0 ) y = -1 ; if( x <= 0 )
else y = 0 ; if( x < 0 ) y = -1 ;
else y = 1 ; else y = 1 ;
3.假设i=2,执行下列语句后i的值为( b )。
switch( i )
{ case 1 : i ++ ;
case 2 : i -- ;
case 3 : ++ i ; break ;
case 4 : -- i ;
default : i ++ ;
}
(a) 1 (b) 2 (c) 3 (d) 4
4.已知int i=0,x=0; 下面while语句执行时循环次数为( d )。
while( !x && i< 3 ) { x++ ; i++ ; }
(a) 4 (b) 3 (c) 2 (d) 1
5.已知int i=3;下面do_while 语句执行时循环次数为( b )。
do{ i--; cout<<i<<endl;}while( i!= 1 );
(a) 1 (b) 2 (c) 3 (d) 无限
6.下面for语句执行时循环次数为( b )。
int i;
for ( i=0,j=5;i=j; )
{ cout << i << j << endl;
i++; j--;
}
(a) 0 (b) 5 (c) 10 (d) 无限
7.以下死循环的程序段是( b )。
(a) int x; for( int x=0 ; x<3 ; ) { x++ ; } ;
(b) int k = 0; do { ++k ; } while( k>=0 ) ;
(c) int a=5 ; while( a ) { a-- ; } ;
(d) int i=3 ; for( ; i ; i -- ) ;
2.2阅读下列程序,写出执行结果
1.
#include<iostream>
using namespace std;
int main()
{ int a,b,c,d,x;
a = c = 0; b = 1; d = 20;
if( a ) d = d-10;
else if( !b )
if( !c )
x = 15;
else x = 25;
cout << d << endl;
}
【解答】
20
2.
#include<iostream>
using namespace std;
int main()
{ int a = 0, b = 1;
switch( a )
{ case 0: switch( b )
{ case 0 : cout<<"a="<<a<<" b="<<b<<endl; break;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论