Untitled Document

一：选择题
1． 如果变量x,y已经正确定义，下列语句哪一项不能正确将x,y的值进行交换：
a. x=x+y,y=x-y,x=x-y;
b. t=x,x=y;y=t;
c. t=y,y=x,x=t;
d. x=t,t=y,y=x
2． 如要求在if后一对括号中的表达式，表示a不等于0的时候的值为"真"，则能正确表示这一关系的表达式为：
a. a<>0
b. !a
c. a=0
d. a
3． 下面的这个循环的循环次数是：for(int i=0,j=10;i=j=10;i++,j--)
a. 无限次
b. 语法错误，不能执行
c. 10
d. 1
4． 以下哪个不是循环语句：
a. while语句
b. do-while语句
c. for语句
d. if-else语句
5．下列do-while循环的循环次数是：
已知：int i=5;
do{ cout<<i--<<endl;
i--;
}while (i!=0)
a. 0
b. 2
c. 5
d. 无限次
6．下列do-while循环的循环次数是：
for(int i=0,x=0;!x&&i<=5;i++)
a.5
b.6
c.1
d.无限次

二：填空题
1． do-while语句与while语句的主要区别 。
2． x,y,z为int类型的时候，下列语句执行之后，x的值为 , y的值为 ,z的值为 。
x=10;y=20;z=30;
if(x>y) x=y;y=z;z=x;
3． 是构造程序最基本的单位，程序运行的过程就是 的过程。
4． break语句实现的功能是 。
5． continue语句实现的功能是 。

三：编程及简答题
1. 用两次for 循环和求余运算符测试和打印输出（2-100）中为素数的正整数。
2．写一段程序，使用while循环从标准输入设备中读取字符到字符串中，自己确定输入什么字符时退出循环，对每一个读取的字符先用if语句判别是否为数字，然后用switch语句判别是否为字母，并打印输出相应字母为首字母的英文单词到屏幕。退出循环后在屏幕上显示输入的字符串。
3．把下面程序中的if语句换成switch语句。
#include <iostream.h>
void main()
{
char c;
while(true)
{
cout << "MAIN MENU:" << endl;
cout << "l: left, r: right, q: quit -> ";
cin >> c;
if (c == 'q')
break; // while结束
if (c == 'l')
{
cout << "LEFT MENU:" << endl;
cout << "select c or d: ";
cin >> c;
if(c == 'c')
{
cout << "you chose 'c'" << endl;
continue; // 返回主菜单
}
if(c == 'd')
{
cout << "you chose 'd'" << endl;
continue; // 返回主菜单
}
else
{
cout << "you didn't choose c or d!"<< endl;
continue; //返回主菜单
}
}
if (c == 'r')
{
cout << "RIGHT MENU:" << endl;
cout << "select a or b: ";
cin >> c;
if (c == 'a')
{
cout << "you chose 'a'" << endl;
continue; //返回主菜单
}
if (c == 'b')
{
cout << "you chose 'b'" << endl;
continue; //返回主菜单
}
else
{
cout << "you didn't choose c or d!"<< endl;
continue; //返回主菜单
}
}
cout << "you must type l or r or q!" << endl;
}
cout << "quitting menu..." << endl;
}
4．读下段程序，分析其功能是什么？
#include <iostream.h>
void main( )
{
cout<<"please input the b key to hear a bell."<<endl;
char ch;
cin>>ch;
if (ch=='b')
cout <<'\a';
else
if (ch=='\n'
cout <<"what a boring select on..."<<endl;
else
cout <<"bye! \n";
}
5．编写一个程序实现以下功能：从键盘读入3个整数，比较其大小，输出其中的最大数。
6．以下程序中的else应该与哪一个if配对？
1、 if （a==0）
p=0;
if (a<0)
p=-1;
else
p=1;
2、 if （a==0）
{
p=0;
if (a<0)
p=-1;
}
else
p=1;
7．看下面几个循环语句，说明循环的含义。
1、while ((c=getchar( ))!='Y'||c!='y'||c!='N'||c!='n' );
2、 while (thue) {.... }
3、while (i ) {... }
4、int i=1,sum=0; while (i<=100) sum+=i++;
8．编程实现：输入一行字符，求其中字母、数字和其他符号的个数。
9．求满足下式的最小n值，其中的limit由键盘输入。
1+1/2+1/3+……+1/n>limit
10．编写程序输出菲波那切数列的前20项。即前两项为1，以后每一项为前两项之和。
11．编写程序根据学生成绩输出优、良、中、及格和不及格。
12．编程实现如下功能：读入一行字母，求其中元音字母出现的次数。