C++程序设计基础课后答案 第二章

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.1 阅读下列程序,写出执行结果

1. #include

void 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;

}

2.#include

void main()

{ int a = 0, b = 1;

switch( a )

{ case 0: switch( b )

{ case 0 : cout << "a=" << a << " b=" << b << endl; break;

case 1 : cout << "a=" << a << " b=" << b << endl; break;

}

case 1: a++; b++; cout << "a=" << a << " b=" << b << endl;

}

}

3. #include

void main()

{ int i = 1;

while( i<=10 )

if( ++i % 3 != 1 )

continue;

else cout << i << endl;

}

4. #include

void main()

{ int i = 0 , j = 5;

do

{ i++; j--;

if ( i>3 ) break;

} while ( j>0 );

cout << "i=" << i << '\t '<< "j=" << j << endl;

}

5.#include

void main()

{ int i,j;

for( i=1, j=5; i

{ j--; }

cout << i << ′\t′<< j << endl;

}

6. #include

void main()

{ int i, s = 0;

for( i=0; i<5; i++ )

switch( i )

{ case 0: s += i; break;

case 1: s += i; break;

case 2: s += i; break;

default: s += 2;

}

cout << "s=" << s <

}

7. #include

void main()

{ int i, j, x = 0;

for( i=0; i<=3; i++ )

{ x++;

for( j=0; j<=3; j++ )

{ if( j % 2 ) continue;

x++;

}

x++;

}

cout << "x=" << x << endl;

}

2.2 思考题

1. C++中有什么形式的选择控制语句?归纳它们语法形式、应用场合。根据一个实际问题使用不同的条件语句编程。

2. 什么叫循环控制?归纳比较C++中各种循环控制语句的语法、循环条件和循环结束条件的表示形式及执行流程。

3. 根据一个实际问题,用不同的循环语句编程,分析其优缺点。

4. 用if语句和goto语句组织循环,改写思考题2.3第3小题编写的程序。分析在什么情况下可以适当使用goto语句。

1. C++中有什么形式的选择控制语句?归纳它们语法形式、应用场合。根据一个实际问题使用不同的条件语句编程。

【答案】

语句使用方式使用场合if语句if(表达式)语句1; ·需要对给定的条件进行判断,并根据判断

演示程序:

(1)以下程序用if输出等级对应的分数段

//A->=90,B-(90,80],C-(80,70] ,D-(70,60],,E-<60

#include

using namespace std;

int main()

{ char gd;

cout<<"Enter the grade:";

cin>>gd;

//直到输入有效等级,否则程序不继续运行

while(!((gd>='A' && gd<='E')||(gd>='a' && gd<='e'))) { cout<<"Invalid grade! Please retry:";

cin>>gd;

}

if(gd=='A'||gd=='a') cout<<"\nScored 90-100!\n";

else if(gd=='B'||gd=='b') cout<<"\nScored 80-89!\n";

else if(gd=='C'||gd=='c') cout<<"\nScored 70-79!\n";

else if(gd=='D'||gd=='d') cout<<"\nScored 60-69!\n";

else if(gd=='E'||gd=='e') cout<<"\nScore under 60!\n";

else cout<<"Unexpect error!\n"; //防止意外错误}

(2)此程序用switch输出等级对应的分数段

//A->=90,B-(90,80],C-(80,70] ,D-(70,60],,E-<60

#include

using namespace std;

int main()

{ char gd;

cout<<"Enter the grade:";

cin>>gd;

//直到输入有效等级,否则程序不继续运行

while(!((gd>='A' && gd<='E')||(gd>='a' && gd<='e')))

{ cout<<"Invalid grade! Please retry:";

cin>>gd;

}

switch(gd)

{ case 'A':

case 'a': cout<<"\nScored 90-100!\n";break;

case 'B':

case 'b': cout<<"\nScored 80-89!\n";break;

相关文档
最新文档