一、选择题
1.已知a=4,b=6,c=8,d=9,则“(a++,b>a++&&c>d)?++d:a<b” 值为( )。
A.9 B.6 C.8 D.0
2.下列字符串中不能作为C++标识符使用的是( )。
A、WHILE B、user C、_lvar D、9stars
3.执行语句序列
int n;
cin >> n;
switch(n)
{ case 1:
case 2: cout << "1";
case 3:
case 4: cout << "2"; break;
default: cout << "3";
}时,若键盘输入1,则屏幕显示( )
A、1 B、12 C、3 D、123
4.若二维数组a有m列,则在a[i][j]之前的元素个数为( )。
A、j*m+i B、i*m+j C、i*m+j-1 D、 i*m+j+1
5.下面正确的字符常量是( )。
A.“C” B.‘\\’’ C.‘W’ D.‘’
6.已知:int m=10; 在下列定义引用的语句中,正确的是( )。
A、int &x=m; B、int y=&m; C、int &z; D、int &t=&m;
7.语句的int *p=&k定义于指针P,于这个语句等效的语句序列是( )
A、int *p; p=&k; B、int*p; p=k;
C、int*p; *p=&k; D、int*p;*p=k;
8.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c<d)后n的值为( )
A.1 B.2 C.3 D.4
9.在类声明中,紧跟在“public:”后声明的成员的访问权限是( )
A、私有 B、公有 C、保护 D、默认
10.用C++的语言表达式表示 |x^3+log10x|的正确是( )
A.fabs(x*3+log10(x)) B.abs(pow(x,3)+log10(x))
C.fabs(pow(x,3.0)+log10(x)) D.abs(pow(x,3.0)+log10(x))
11.以下不正确的是( )
A.语句for(i=0;;i++)表示无限循环 B.for(;;)表示无限循环
C.for()也表示无限循环 D.while(1)表示无限循环
12.下列程序的功能是( )
#include <iostream>
using namespace std;
int main()
{ char a; int i;
cin>>a;
for(i=1;i<=10;i++)
{ if((a>=’a’)&&(a<=’z’))
a=a-i;
cout<<a;
} }
A.把a中的小写字母变成大写字母 B.把a中的小写字母变成大写字母
C.把a中的所有字母变成小写字母 D.把a中的字母变成它前面i个的字母
二、填空题
1、若有定义int m=5,y=2;则计算表达式y+=y-=m*=y后的y值是【 】。
2、 若s是int型变量,且s=6,则表达式s%2+(s+1)%2的值为【 】。
3、若有定义:char c=‘\010’;则变量c中包含的字符个数为【 】。
4、已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=‘a’+‘8’-‘3’的值为【 】。
4、有定义int a;则“a是偶数”的表达式是【 】 。
三、程序填空题
1.下面程序的功能是用"辗转相除法"求两个正整数的最大公约数。请填空。
#include <iostream>
using namespace std;
main()
{int r,m,n;
cin>>m>>n;
if(m<n)
【 1 】;
r=m%n;
while(r)
{m=n;n=r;【 2 】; }
cout<<n<<endl;
}
答案:【 】【 】
2.输入10个数,使用选择排序,按升序排序。
#include <iostream>
using namespace std;
int main()
{
int a[10];
int i,j,t,k;
cout<<“Input 10 number:”<<endl;
for(i=0;i<10;i++)
【 1 】
for(j=0;j<9;j++) //共进行九轮比较
{
k=j;
for(i=j+1;i<10;i++) //每轮中找出最小值下标
if(a[i]<a[k]);
t=a[j];
【 2 】 //每轮中的最小值与a[j]交换
a[k]=t;
}
cout<<“the sorted numbers:”<<endl;
for(i=0; 【 3 】; i++)
cout<<a[i]<<" ";
cout<<endl;
return 0;
}
答案:【 】 【 】 【 】
四、阅读程序写结果
1.#include <iostream>
using namespace std;
int main()
{
int i=1;
do{
i++;
cout<<++i<<” ”;
if(i==7) break;
}while(i==3);
}
请写出输出结果:
2.#include <iostream>
using namespace std;
int main()
{
int i,n,d[10]={1,2,3,4,5,6,7,8,9,10};
i=n=1;
while(i<10)
{
if(n==1)
i+=4;
else
i-=2;
if(i<10)
cout<<d[i]<<" ";
n=1-n;
}
}
请写出输出结果:
3.#include <iostream>
using namespace std;
int sum(int n)
{int c=0;
do{ c+=n%10; n/=10; } while(n);
return c;
}
main()
{
cout<<sum(1234)<<‘\t’<<sum(4567)<<endl;
}
请写出输出结果:
4.#include
using namespace std;
void main()
{
int x,y,z;
x=2/47;
y=2/47.0;
z=int(2/4.0*7);
cout<<“x=”<<x<<" y=“<<y<<” z="<<z<<endl;
}
请写出输出结果: