1、《高级语言程序设计(C++I)》题库 一.单项选择题(每小题2分,共20分) 1.下列字符列中,合法的浮点型常量是: (A) 457 (B) 6e5.3 (C) e7 (D) 123e6 2.字符串常量 ”w\x42\\\nx\103y” 的长度是: (A) 7 (B) 11 (C) 15 (D) 16 3.以下运算符中,自右向左结合的运算符是: (A) [] (B) <= (C) *= (D) << 4.表达式4/8*100/2.0的值是: (A) 25 (B) 25.0 (C) 0 (D) 0.0 5.设变量int a = 5; 下列哪
2、个表达式计算后,使得变量b的值不为2 ? (A) b=a/2 (B) b=6-(--a) (C) b=a%2 (D) b=a<3?3:2 6.设a是整型变量,不能表达数学关系式1111&&a<15 (B) a==12||a==13||a==14 (C) !(a<=11)&&!(a>=15) (D) 11>s1; (B) char *s1,*s2=”name”; s1=s2; (C) char s1[5]=”nam
3、e”; (D) char s1[5]={”name”}; 8.一个具有6个整型指针元素的一维数组的正确定义是: (A) int **p[6] (B) int *(p)[6] (C) int *p[6] (D) *(*(p)[6]) 9.执行语句 x=1; while(x++<7)cout<<’*’; 后输出结果是: (A) ** (B) **** (C) ****** (D) ******* 10.若用一维数组名作为调用函数时的实参,则传递给形参的是: (A) 数组首元素的地址 (B) 数组首元素的值 (C) 数组元素的个数 (D) 数组中
4、全部元素的值
二.简答题(每小题2分,共20分)
1.设整型变量x为任何一个整数,表达式 –2 5、调用函数?
7.说明语句 char *w(); 的含义是?
8.表达式 new int[10] 的含义是?
9.设有函数调用语句 Count(a ,num,max,min,average); 功能是由参max, min, average返回整型数组a前num个元素中的最大值,最小值和平均值。对应的函数原型是?
10.有说明 struct link{ int code; link *next; }; link *head,*p;已知head为单链表的头结点,在*head之后插入*p结点操作的语句是?
三.分析程序,写输出结果(每小题5分,共20分)
1. #include 6、ostream.h>
void main()
{ int a[10]={2,4,0,-5,10,6,-8,9,6,7};
int i,s=0,count=0;
for(i=0;i<10;i++)
if(a[i]>0) s+=a[i],count++;
else continue;
cout<<"s="< 26、"< 27、
}
void fun()
{static int a; int b=2;
cout<<(a+=3,a+b)<<'\t';
} 5 8 11 14
3.求最小公倍数
#include 28、3,7)<<'\t'< 29、 }
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
四.根据程序功能填空。(每空2分,共20分)
1.本程序按以下公式计算e的值,精度为1e-6。
#include 30、2.本程序由主函数输入一字符串,调用函数,把该字符串中的数字0~9转换成小写字母a~j;所有小写字母转换成大写字符。然后在主函数输出转换后的字符串。
#include 31、5)_____) *s1
{if(*s1>='0'&&*s1<='9')
*s2=_____(6)_____; *s1 + 'a' -' 0'
else *s2=toupper(*s1);
_____(7)_____ s1++ ; s2++;
}
*s2='\0';
}
3.函数create从键盘输入整数序列,以输入0为结束。按输入逆序建立一个以head为表头的单向链表。例如,输入序列为1 2 3 4 5 0,建立的链表是5 4 3 2 1。
struct node{int data; node * next;};
voi 32、d create(node * &head)
{node *p;
_____(8)_____; p = new node
cin>>p->data;
while(p->data!=0)
{if(head==NULL)
{ head=p; head->next=NULL; }
else
{ _____(9)_____ p->next = head;
_____(10)_____ head = p;
}
p=new node;
cin>>p->data;
}
}
五.程序设计(第1小题6分,第2、3小题各7分,共20分) 33、
4. 编写函数输出以下形状的图形,其中构成图形的符号和输出的行数通过参数传送。
#
# #
# #
# #
# # # # # # # # #
答案:
#include 34、 35、 sum=0.0,ave;
cout<<"How many Data ?\n";
cin>>k;
for(i=0;i 36、如下功能:
(1)从键盘输入a op b。其中a, b为数值;op为字符,限制为+、-、*、/ 。
(2)调用函数count(op,a,b),计算表达式a op b的值。由主函数输出结果。
答案:
#include 37、t<<"input error,please again:\n";
else break;
}while(1);
cout<






