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
2、D) 0.0
5.设变量int a = 5; 以下哪个表达 式打算 后,使得变量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 3、
缘故:C++的逻辑揣摸 结果为整型值
7.以下C++代码中,不克不迭 精确 对字符串s1置串值的代码是:
(A) char *s1=new char[20]; cin>>s1;
(B) char s1=〞name〞; //s1是字符变量,不克不迭 赋给串值
(C) char s1[5]=〞name〞; (D) char s1[]={〞name〞};
8.一个存在 6个整型指针元素的一维数组的正判定 义是:
(A) int **p[6] (B) int (*p)[6]
(C) int *p[6] (D) *(*(p)[6])
试比较以下几多 种说明 4、办法 :
int * p; // p是指向整型变量的指针〔p是关系 典范 为整型的指针〕
int *pa[10]; // pa是数组,元素典范 是整型指针
int (*pb)[10]; // pb是指针,指向〔关系 典范 〕长度为10的整型数组
int * f(); // f是前去 整型指针的函数名
int (*f)(); // f是指针,指向〔关系 典范 〕是前去 整型值的无参函数
例:有声明
int (*f)(int int); int max(int,int); int min(int, int);
那么:f=max; f 5、a,b); //等价于 (*f)(a,b); max(a,b);
f=min; f(a,b); //等价于 (*f)(a,b); min(a,b);
9.实行 语句 x=1; while(x++<7)cout<<’*’; 后输出结果是:
(A) ** (B) **** (C) ****** (D) *******
(x++<7) ① x<7 ② x=x+1
10.假设 用一维数组名作为调用 函数时的实参,那么转达 给形参的是:
(A) 数组首元素的所在 (B) 数组首元素的值
(C) 数组元素的个数 (D) 数组 6、中全部 元素的值
二.简答题〔每题2分,共20分〕
1.设整型变量x为任何一个整数,表达 式 –2 7、3; fun3(a3); //引用参数,传名
以上参数用于把持 数据东西
void fun4(int * &x4); int *a4; fun3(a4); //指针引用参数,传名
以上参数用于把持 指针东西
3.设有变量定义 char *s[]={“Beijing〞,〞Shanghai〞,〞Guangzhou〞}; 实行 语句cout<<*(s+1)+1; 输出是? hanghai
s是字符指针数组
S[0]
S[1]
S[2]
Beijing\0
Shanghai\0
Guangzhou\0
s+1 == &s[1] //s是二级指针
* 8、s+1) == &s[1][0]
*(s+1)+1 == &s[1][1] // 一级指针
输出字符指针是输出所指串值
s
s+1
*(s+1)+1
4.表述“变量x的值等于 3”跟 “变量y的值等于 5”其中 有且只需一种情况成破 的表达 式是? x==3&&y!=5||x!=3&&y==5 或 (x==3)!=(y==5)
5.设有变量定义 int a[4][3],*p=a[2]; 表达 式 p+2 指向的元素是? a[2][2]
a[0][0] a[0][1] a[0][2] 9、
a[1][0] a[1][1] a[1][2]
a[2][0] a[2][1] a[2][2]
a[3][0] a[3][1] a[3][2]
p p+2
6.将字符串str2拷贝到字符数组str1[]中,应调用 函数? strcpy(str1,str2)
7.说明语句 char *w(); 的含义 是? 函数原型。w是函数名,前去 字符型指针
8.表达 式new int[10] 的含义 是?分配 长度为10的整型数组 10、堆内存,前去 首所在
分配 堆要用指针记录 所在
int *p=new int[10], *q;
*p = 10; p[1] = 20; //对静态数组的两种访征询 办法
*q = 10; q[0]=12; //差错 ,指针不 关系 东西
9.设有函数调用 语句 Count(a ,num,max,min,average); 功能 是由参数max, min, average前去 整型数组a前num个元素中的最大年夜 值,最小值跟 平均值。对应的函数原型是?
void Count(int[], int, int &,int &, double &); 11、
假设 调用 语句为 Count(a ,num, &max, &min, &average);
那么函数原型为 void Count(int[], int , int* , int* , double * );
10.有说明 struct link{ int code; link *next; }; link *head,*p;已经清楚 head为单链表的头结点,在*head之后拔出*p结点把持 的语句是?
p->next=head->next; head->next=p; // p->next == (*p).next
^
head 12、 *head q
②
①
p *p
思索:
(1) 结点插在表头怎么样 把持 ? p->next=head; head=p;
(2) 结点插在表尾怎么样 把持 ?
q=head; while(q->next)q=q->next; q->next=p; p->next=NULL;
(3) 遍历链表,输出结 13、点值:
q=head; while(q->next){cout< 14、
int i,s=0,count=0;
for(i=0;i<10;i++)
if(a[i]>0) s+=a[i],count++;
else continue;
cout<<"s="< 23、) { print_figure(5,'*');}
2. 编写一个次序 ,实现 如下功能 :
〔1〕输出k〔<100〕个整数到数组x[100]中;
〔2〕打算 k个数的平均值及大年夜 于平均值的元素个数。
答案 :
#include 24、 //求平均值
n=0;
for(i=0;i 25、
#include
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818