A. 55
B. 66
C. 1515
D. 1010
5. 下面程序输出结果是( ):
void main(){
int y=18,i=0,j,a[8]; do
{ a[i]=y%2;i++; y=y/2; }while(y>=1);
for(j=i-1;j>=0;j--)cout<
A. 10000
B. 10010
C. 0010
D. 10100
7. t为int型变量,进入下面的循环之前,t的值为0, while(t=1) { ...... }
则以下叙述中正确的是( ) A. 循环控制表达式的值为0
B. 循环控制表达式的值为1 C. 循环控制表达式不合法 D. 以上说法都不对 8. 有以下程序 void main(){
char a[]={'a','b','c','d','e','f','g','h','\\0'}; i=sizeof(a); }
程序运行后的输出结果是( )。 9. 设有函数定义: int f(char *s){ char *p=s;
while(*p!='\\0')p++; return (p-s); }
void main(){
cout
06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第2 页 (共 8 页)
int i,j;
j=strlen(a);
cout<
A. 9,9
B. 8,9
C. 1,8
D. 9,8
A. 3 B. 7 C. 8 D. 0
10. 下面程序的输出结果是( )。
void main(){ int k=2,m=1,n; n=fun3(k); n=fun3(m); cout
B. 4
C. 6
D. 9
二、写结果题(每题5分,共20分, 将结果写在每题右方)
1. [ZZ]设有以下程序: void main(){ int a,b,k=4,m=6; int *p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; cout<
执行该程序后,a的值为___________, b的值为___________ 2. 写出下列程序的运行结果: #include \void main(){ int x,y,z; x=1; y=1; z=1; x=x||y&&z;
cout<3. 写出下列各题最后一个表达式的值: (1)
int i=6,j=30;
if(i=j)i++; if(ifloat x=2.5, y=4.7;
int a=7;
x+a%3*(int)(x+y)%2/4;
06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第3 页 (共 8 页)
(3) #define v i+j
int i=4,j=15; i+=v/3;
4. 写出下列程序的运行结果: #include \void main(){
for(int i=1;i<6;i++) { } }
for(int j=0;j
三、程序填空(每题5分,共30分, 将答案填入空格中)
1. [NC]以下程序片段的功能是先从键盘输入一个数N,然后输入N个整数,接着求出这N个数的最小值并显示结果。请根据题意填空。
void main(){ int N;
cin>> N; //读入数N
int *p= ①____________________; //申请内存,以存放N个整数 int i,min;
for(i=0; icin>> ②________________;
min=p[0];
for(i=0; iif(min ③________________)
min= ④____________________;
cout
2. [ZZ,HS,DG]以下程序调用invert函数按逆序重新放置a数组中元素的值。a数组中的值在main函数中读入。
#include \#define N 10
void invert(int *s,int i,int j)//i,j为要逆序排列的元素最小下标及最大下标
06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第4 页 (共 8 页)
{ int t;
if(ivoid main() {
int a[N],i; for(i=0;icin>> ④______________; //读入N个数到数组中
invert(a,0,N-1); for(i=0;i3. [SZ,HS]以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最大值,请填空。
#define N 3 #define M 4
void LineMax(int x[N][M]) { int i,j,p;
for(i=0;i< ①____________;i++) { } }
void main() {
06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第5 页 (共 8 页)
t= ①_____________; *(s+i)=*(s+j); ②_______________=t; invert(s, ③__________,j-1);
cout<< ⑤_____________;<