C++模拟题5

C++模拟题5
C++模拟题5

C++程序设计模拟试卷(五)

一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1. 静态成员函数没有(B)

A. 返回值

B. this指针

C. 指针参数

D. 返回类型

2. 在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管

理操作的函数是(C)

A. 友元函数

B. 虚函数

C. 构造函数

D. 析构函数

3. 所有在函数中定义的变量,都是(B)

A. 全局变量

B. 局部变量

C. 静态变量

D. 寄存器变量

4. 假定AB为一个类,则执行“AB a(2), b[3],*p[4];”语句时调用该类构造函数的次数

为(B)

A. 3

B. 4

C. 5

D. 9

5. 如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则

可表示为(B)

A. a.operator++(1)

B. operator++(a)

C. operator++(a,1)

D. a.operator++()

6. 已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明(C)

A. f1和f2都是静态函数

B. f1不是静态函数,f2是静态函数

C. f1是静态函数,f2不是静态函数

D. f1和f2都不是静态函数

7. 一个函数功能不太复杂,但要求被频繁调用,则应把它定义为(A)

A. 内联函数

C. 递归函数

D. 嵌套函数

8. 解决定义二义性问题的方法有(B)

A. 只能使用作用域分辨运算符

B. 使用作用域分辨运算符或成员名限定

C. 使用作用域分辨运算符或虚基类

D. 使用成员名限定或赋值兼容规则

9. 在main函数中可以用p.a的形式访问派生类对象p的基类成员a,其中a是(D)

A. 私有继承的公有成员

B. 公有继承的私有成员

C. 公有继承的保护成员

D. 公有继承的公有成员

10. 在C++中不返回任何类型的函数应该说明为(C)

A. int

B. char

C. void

D. double

11. 若Sample类中的一个成员函数说明如下:

void set(Sample& a),则Sample& a的含义是(B)

A. 指向类Sample的名为a的指针

B. a是类Sample的对象引用,用来作函数Set()的形参

C. 将a的地址赋给变量Set

D. 变量Sample与a按位与的结果作为函数Set的参数

12. 要实现动态联编必须(B)

A. 通过成员名限定来调用虚函数

B. 通过对象名来调用虚函数

C. 通过派生类对象来调用虚函数

D. 通过对象指针或引用来调用虚函数

13. 在派生类中定义虚函数时,可以与基类中相应的虚函数不同的是(B)

A. 参数类型

B. 参数个数

C. 函数名称

D. 函数体

14. 实现两个相同类型数加法的函数模板的声明是(D)

A. add(T x,T y)

B. T add(x,y)

C. T add(T x,y)

D. T add(T x,T y)

15. 下列不是描述类的成员函数的是(C)

A. 构造函数

B. 析构函数

D. 拷贝构造函数

16. 继承机制的作用是(C)

A. 信息隐藏

B. 数据封装

C. 定义新类

D. 数据抽象

17. 已知:p是一个指向类A数据成员m的指针,A1是类A的一个对象。如果要给m赋值为5,正确

的是(C)

A. A1.p=5;

B. A1->p=5;

C. A1.*p=5;

D. *A1.p=5;

18. 如果采用动态多态性,要调用虚函数的是()

A. 基类对象指针

B. 对象名

C. 基类对象

D. 派生类名

19. 若有以下定义,则说法错误的是(B)

int a=100,*p=&a;

A. 声明变量p,其中*表示p是一个指针变量

B. 变量p经初始化,获得变量a的地址

C. 变量p只可以指向一个整型变量

D. 变量p的值为100

20. C++语言建立类族是通过(B)

A. 类的嵌套

B. 类的继承

C. 虚函数

D. 抽象类

二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。

1. 假设int a=1,b=2;则表达式(++a/b)*b--的值为_2__。

2. 复制构造函数使用_构造函数__作为形式参数。

3. 通过C++语言中的__继承_机制,可以从现存类中构建其子类。

4. 静态成员函数、友元函数、构造函数和析构函数中,不属于成员函数的是__友元函数_。

5. 在下面的类定义中,私有成员有_X,Y_ length,height;_。

class Location

{int X,Y;

protected:

int zeroX,zerxY;

int SetZero(intzeroX, intzeroY);

private:

int length,height;

public:

void init(int initX,int initY);

int GetX();

int GetY();

};

6. 在C++程序设计中,建立继承关系倒挂的树应使用__单继承_继承。

7. C++支持的两种多态性分别是_静态_多态性和运行多态性。

8. C++中语句const char * const p=“hello”;所定义的指针p和它所指的内容都不能被__赋值_。

9. 在C++中,定义虚函数的关键字是_virteor__。

10. 采用私有派生方式,基类的public成员在私有派生类中是_私有__成员。

11. 对赋值运算符进行重载时,应声明为_inline__函数。

12. 在C++中有两种参数传递方式即值传递和_引用__传递。

13. 预处理命令以_#define__符号开头。

14. 在构造函数和析构函数中调用虚函数时采用_构造函数__。

15. C++是通过引用运算符___来定义一个引用的。

16. 如果要把类B的成员函数void fun()说明为类A的友元函数,则应在类A中加入语句_friend void B ::fun();__。

17. 如果要把PI声明为值为3.14159类型为双精度实数的符号常量,该声明语句是_const double PI 3.14159__。

18. 在C++四个流对象中,_cout__用于标准屏幕输出。

19. 执行下列代码

int a=32;

double c=32;

cout.setf(ios::hex);

cout<<"hex:a="<

cout.unsetf(ios::hex);

程序的输出结果为_ hex:a=20_,c=30_。

20. 已知有20个元素int类型向量V1,若用V1初始化为V2向量,语句是

vetiror(20)___。

三、改错题(本大题共5小题,每小题4分,共20分)

1. #include

class A

{ private: public

int x;

public:

A(int i){x=i;}

A(){x=0;}

friend int min(A&,A&);

};

int min(A & a,A &b)

{ return (a.x>b.x)?a.x:b.x;

}

void main()

{ A a(3),b(5);

cout<

}

2. #include

class shape

{public:

virtual int area(){return 0;}

};

class rectangle:public shape

{public:

int a, b;

void setLength (int x, int y) {a=x;b=y;}

int area() {return a*b;}

};

void main()

{rectangle r;

r.setLength(3,5);

shape s1,*s2=&r;

cout <

s2=s1;

cout <

}

3. 下面的类定义中有一处错误,请用下横线标出错误所在行并给出修改意见。#include

template

class A

{private:

T x,y,s;

public:

A(T a,T b)

{x=a,y=b;s=x+y;}

void show()

{cout<<"x+y="<

}

};

void main()

{ A add(10,100);

add.show();

}

4. 生成具有n个元素的动态数组。

#include

void main()

{int n;

cin>>n;

int a[n];

a[0]=2;

cout<

}

5. #include

class A

{int i;

public:

virtual void fun()=0;

A(int a)

{i=a;}

};

class B:public A

{int j;

public:

void fun()

{cout<<"B::fun()\n"; }

B(int m,int n=0):A(m),j(n){}

};

void main()

{A *pa;

B b(7);

pa=&b;

}

四、完成程序题(本大题共5小题,每小题4分,共20分)

1. 在下面程序横线处填上适当字句,以使该程序执行结果为:50 4 34 21 10

0 7.1 8.1 9.1 10.1 11.1

#include

template

void f (___Ta[],_int_n_____)

{__________;

for (int i=0;i

t=a[i], a[i]=a[n-1-i], a[n-1-i]=t;

}

void main ()

{int a[5]={10,21,34,4,50};

double d[6]={11.1,10.1,9.1,8.1,7.1};

f(a,5);f(d,6);

for (int i=0;i<5;i++)

cout <

cout <

for (i=0;i<6;i++)

cout << d[i] << "";

cout << endl;

}

2. 完成下面类中成员函数的定义。#include

#include

class Arr

{protected:

float *p;

int n;//数组大小(元素个数)public:

Arr(int sz=10)

{ n=sz;

p=new float[n];

}

~Arr(void)

{

____delete[]p;_____

}

int Getn(void) const

{

return n;

}

float & operator[](int i) {

________

}

void Print();

};

void Arr::Print()

{int i;

for(i=0;i< this->Getn();i++) {if (i%10==0)

cout << endl;

cout<

}

cout<

}

void main()

{Arr a(20);

for (int i=0;i

a[i]=i* 2;

a.Print();

}

3. 下面是一个输入半径,输出其面积和周长的C++程序,在下划线处填上正确的语句。

#include

__using namespace std;_______;

__const double pi 3.14159_______;

void main()

{double rad;

cout<<"rad=";

cin>>rad;

double l=2.0*pi*rad;

double s=pi*rad*rad;

cout<<"\n The long is:"<

cout<<"The area is:"<

4. 在下划线处填上缺少的部分。

#include

class Samp

{public:

void Setij(int a,int b){i=a,j=b;}

~Samp()

{cout<<"Destroying.."<

int GetMuti(){return i*j;}

protected:

int i;

int j;

};

int main()

{Samp *p;

p=new Samp[5];

if(!p)

{cout<<"Allocation error\n";

return 1;

}

for(int j=0;j<5;j++)

p[j].Setij(j,j);

for(int k=0;k<5;k++)

cout<<"Muti["<

___p. GetMuti();_______

return 0;

}

5. 请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为: 11,10

13,12

#include

class A

{int a;

public:

A(int i=0){a=i;}

int Geta(){return a;}

void show(){cout<

};

class B

{A a;

int b;

public:

B(int i,int j)__:A_(int i=0)______

{}

void show(){cout<

};

void main()

{B b[2]={B(10,11),B(12,13)};

for(int i=0;i<2;i++)

__b.show();________

}

五、程序分析题(本大题共2小题,每小题5分,共10分)

1. 给出下面程序输出结果。

#include

class Base

{private:

int Y;

public:

Base(int y=0) {Y=y;cout<<"Base("<

~Base() {cout<<"~Base()\n";}

void print() {cout <

};

class Derived:public Base

{private:

int Z;

public:

Derived (int y, int z):Base(y)

{Z=z;

cout<<"Derived("<

}

~Derived() {cout<<"~Derived()\n";}

void print()

{Base::print();

cout<

}

};

void main()

{Derived d(10,20);

d.print();

}

2. 给出下面程序输出结果。

#include

class test

{int x;

public:

test(int i=0):x(i){}

virtual void fun1()

{cout << "test::x"<

};

class ft:public test

{int y;

public:

void fun1(){cout <<"ft::y="<

ft(int i=2):test(i),y(i){}

};

void main()

{ ft ft1(3);

void (test::*p)();

p=test::fun1;

(ft1.*p)();

}

六、程序设计题(本大题共1小题,共10分)

1. 求n(n=3)个学生的最高分和最低分及姓名,已有student类声明和main函数,完成

student类的实现部分。

#include

#include

class student

{char name[10];

int deg;

public:

student(char na[]="",int d=0);

char * getname();

friend int compare(student &s1,student &s2);

int getdeg();

};

void main()

{student st[]={student("王强",74),student("李刚",68),student("张雪",84)};

int i=0,min=0,max=0;

for(i=1;i<3;i++)

{if(compare(st[max],st[i])==-1)

max=i;

if(compare(st[min],st[i])==1)

min=i;

}

cout<<"最高分:"<

[max].getname()<

}

最新C语言程序设计模拟试题5(附答案)

《C语言程序设计》模拟试题五 一、填空题(40分) 1.计算机软件分为和;C语言适合编 写 . 2.十进制数35=( ) 2 =( ) 8 =( ) 16 3.已知一个数[X]补=11111001,求[X] 原 = 及 X= . 4.设x=2.5,a=7,y=4.7.求下列算术表达式的值. x+a%3*(int)(x+y)%2/3= . 5.将算式|3-e x ln(1+Y)|写成C语言表达 式. 6.设a=5,b=9.则printf(“a=%d,b=%4d”,a,b)输出为: . 7.用C语句写出累加器、累乘 器、计数器. 8.上机操作时,CTRL+F9键的功能是 ,F2键的功能 是ALT+F5键的功能是 . 9.下列程序段对应的数学表达式 是 int t,n,s=0; scanf(“%d”,&n); for(i=1;i<=n;i++) { t=1; for(j=1;j<=i;j++) t=t*j; s=s+t;} 10.以下程序用“顺序查找法”查找数组a中是否存在某一关键字. 请填空. main() {int a[10]={25,57,48,38,12,92,88,48,16,25}; int i,x; scanf(“%d”,&X); for(i=0;i<10;i++) if (x==a[i]) {printf(“Found!The index:%d\n”a[i]);(1) ;} if (2) printf(“Can not found!”); }

二、单选题(15分) 1.一个C程序的执行是从 . A.本程序的main()函数开始,到main函数结束. B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束. C.本程序的main()函数开始,到本程序文件的最后一个函数结束. D.本程序文件的第一个函数开始,到本程序main函数结束. 2.根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式 为 . main() { int a,b,c; 输入语句; printf(“%c%c%c”,a,b,c); } 输入形式:A B C 输出形式:ABC A.scanf(“%c%c%c”,&a,&b,&c); B.scanf(“%c,%c,%c”,&a,&b,&c); C.scanf(“%c %c %c”,&a,&b,&c); D.scanf(“%c%c”,&a,&b); 3.给出下列程序的运行结果 . main() {int i,j,k,x=0; for(i=2;i<=5;i++) for(j=7;j>=3;j-=2) for(k=4;k<=11;k+=4) x++; printf(“x=%d”,x);} A.x=64 B. x=36 C.x=60 D. x=24 4.若x,i,j和k都是int型变量,则表达式计算下面表达式后,x的值 为 . x=(i=4,j=16,k=32) A. 4 B. 16 C.32 D.52 5.以下不正确if语句形式是 . A.if ( x>y && x!=y ); B.if ( x = = y ) x + = y; C. if ( x != y ) scanf(“%d”,&x) else scanf(“%d”,&y);

C语言模拟试卷A

安徽农业大学经济技术学院 《C 语言程序设计》模拟试卷(A) 所有答案写在答题卡上,否则不得分 一、单项选择题(每题1分,共30分) 1.以下选项中叙述正确的是________。 A )C 语言程序总是从第一个定义的函数开执行 B )在 C 语言程序中,被调用的函数必须在main()函数中声明 C )C 语言程序总是从main()函数开始执行 D )C 语言程序中的main()函数必须放在程序的开始部分 2.C 语言程序的三种基本结构是顺序结构、选择结构和________结构。 A )循环 B )递归 C )转移 D )嵌套 3以下选项中不属于C 语言的基本数据类型的是________。 A )int B )double C )char D )bool 4.以下选项中正确的C 语言标示符是________。 A)2b B )x_1 C )a@b D)3#h 5.设C 语言中,一个int 型数据在内存中占2个字节,则unsigned int 型数据的取值范围为________。 A )0~255 B )0~32767 C )0~65535 D )0~2147483647 6.以下选项中,和语句k=n++;等价的是________。 A )k=n,n=n+1; B )n=n+1,k=n; C )k=++n; D )k=n+1; 7.已知:int i=3,j=2;,则执行语句j*=i+2;printf("%d",j);后,输出结果是________。 A )8 B )10 C )12 D )14 8.已知:int a=2,b=3,c;,执行语句c=(a=2,b=2);后,c 的值是________。 A )2 B )3 C )4 D )5 9.已知:int x,y;float z;,若要给变量x,y,z 输入数据,以下正确的输入语句是________。 A )scanf("%d,%d,%d",x,y,z); B )scanf("%d,%d,%f",&x;&y;&z); C )scanf("%d,%d,%f",&x,&y,&z ); D )scanf("%2d,%2d,%3.2d",x;y;z ); 10.华氏温度f 和摄氏温度c 的关系是)32(9 5-= f c 。已知:float c,f;,由华氏温度f 求摄氏温度c 的不正确的赋值表达式是________。 A )c=5/9(f-32) B )c=5.0/9*(f-32) C )c=5*(f-32)/9 D )c=(float)5/9*(f-32) 11.一个C 程序中要调用sqrt()函数时,应在程序中包含的头文件是________。 A )stdio.h B )math.h C )string.h D )stdlib.h 12.已知:char c='a';,则执行语句printf("%c",c-32);后输出结果是________。 A )A B )65 C )97 D )出错 13.能正确表示逻辑关系“a ≥5或a ≤-1”的C 语言表达式是________。 A )a>=5.or.a<=-1 B) a>=5.and.a<=-1 C) a>=5&&a<=-1 D )a>=5‖a<=-1

《逻辑学》模拟试题及参考答案(A)

《逻辑学》模拟试题及参考答案(A) 1、思维的形式结构由 和 构成。 2、表示对象不具有某种本质属性的概念,称为 。 3、由“q p ?→”为假,可知p 为 ,q 为 。 4、对一真值形式的判定,就是确定它属于 、 还是 。 5、直言命题的 和 通称为词项。 6、一个直言命题的谓项周延,其质是 。 7、如果把“新闻系毕业的学生不都当记者”整理成I 命题,则其谓项是 。 8、如果SOP 为假,则S 与P 的外延间具有 关系和 关系。 9、“地球磁场发生磁暴的周期性经常与太阳黑子的周期性一致。随着太阳上黑子数目的 增加,磁暴的强烈程度也增高。当太阳黑子数目减少时,磁暴的强烈程度也随之降 低。所以,太阳黑子的出现可能是磁暴的原因。”这是运用了求因果联系的逻辑方 法中的 。 10、证明是根据已知为 的命题,来确定某一命题 的思维形式。 1、“q p ∧”与“s r ∨”这两个命题形式含有 ( ) A 、相同的逻辑常项,相同的变项 B 、不同的逻辑常项,不同的变项 C 、不同的逻辑常项,相同的变项 D 、相同的逻辑常项,不同的变项 2、在下列语句中,在集合意义下使用语词“人”的是 ( ) A 、人是有思维能力的 B 、人非圣贤,孰能无过 C 、人贵有自知之明 D 、人是世间万物中第一个可宝贵的 3、下列语句作为划分,正确的是 ( ) A 、战争分为常规战争和世界大战 B 、一年可以分为春、夏、秋、冬四季 C 、这个班的学生,除了七名女学生外,其余都是男生 D 、概念分为普遍概念、单独概念和正概念 4、正确表示 “中国”、“亚洲国家”、“发展中国家”三个概念外延间关系的图形是 ( ) A 、 B 、 C 、 D 、 5、当p 真、q ?也真时,下列为真的公式是 ( ) A 、q p ∧ B 、q p ∨ C 、q p → D 、q p ? 6、和“并非:这个商店的商品价廉物美”相等值的命题是 ( ) A 、这个商店的商品价不廉,物也不美 B 、这个商店的商品价廉但物不美 C 、这个商店的商品价不廉,或物不美 D 、这个商店的商品物美但价不廉 7、“出席会议的人有大学毕业的”与“出席会议的人有不是大学毕业的” ( ) A 、可同真,可同假 B 、不可同真,不可同假 C 、不可同真,可同假 D 、可同真,不可同假 8、以MAP 为大前提,SIM 为小前提的有效三段论推理,其结论是 ( ) A 、SAP B 、SEP C 、 SIP D 、SOP

《数据结构C》模拟试题

山东科技大学继续教育学院 《数据结构C》模拟试题一 班级姓名学号 一、选择题(20分) 1. 组成数据的基本单位是( )。 (A) 数据项(B)数据类型(C)数据元素(D)数据变量 2. 线性表的链接实现有利于( )运算。 (A) 插入(B)读表元(C)查找(D)定位 3. 串的逻辑结构与( )的逻辑结构不同。 (A) 线性表(B)栈(C)队列(D)树 4. 二叉树第i(i≥1)层最多有( )个结点。 (A) 2i(B)2i (C) 2i-1(D) 2i-1 5. 设单链表中p指向结点A,若要删除A后结点(若存在),则需要修改p的操作为( ) (A) p.Next = p.Next.Next (B)p=p.Next (C)p=p.Next.Next (D)p.Next=p 6. 设一数列的输入顺序为1,2,3,4,5,6,通过栈操作不可能排成的输出序列为( ) (A) 3,2,5,6,4,1 (B) 1,5,4,6,2,3 (C) 2,4,3,5,1,6 (D) 4,5,3,6,2,1 7. 设字符串S1=’ABCDEFG’,S2=’PQRST’,则运算S=CONCAT(SUB(S1,2,LENGTH(S2)),SUB(S1,LENGTH(S2),2))的结果为( ) (A) ‘BCQR’ (B) ‘BCDEF’ (C) ’BCDEFG’ (D) ‘BCDEFEF’ 8. 有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占1个地址空间,则a85地址为( ) (A)13 (B) 33 (C) 18 (D) 40 9. 如果结点A有3个兄弟,而且B为A的双亲,则B的度为( ) (A) 3 (B) 4 (C) 5 (D) 1 10. 线索化二叉树中某结点D没有左孩子的必要条件是( ) (A) D.Lchild=null (B) D.ltag=1 (C) D.Rchild=null (D) D.ltag=0 二、填空题(20分) 1. 对于一个以顺序实现的循环队列Q[0..m_1],队头、队尾指针分别为f,r,其判空的条件是 ,判满的条件是。 2. 循环链表的主要优点是。 3. 给定一个整数集合{3,5,6,9,12},画出其对应的一棵Huffman树。 4 双向循环链表中,在p所指的结点之后插入f所指的结点,其操作为。 5. 下列为朴素的模式匹配算法,请在算法的处填入正确的子句。

C语言程序设计模拟试题1附答案

《C语言程序设计》模拟试卷一 一、单项选择题(每题2分,共30分) 1、下列有关C语言的叙述中错误的是()。 A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数 C) 复合语句在语法上可被看作一条语句 D) C程序中对数据的任何操作都可由运算符实现 2、以下不能定义为用户标识符的是()。 A) MAIN B) _HJ C) 2ong D) LINE1 3、下列符号中用来表示C语言中的回车换行的是()。 A) \r B) \n C) \b D) \t 4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为()。 A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 1 5、已知ch为字符型变量,下面表达式中正确的是()。 A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ” 6、以下能正确定义一维数组的是()。 A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”; C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5}; 7、以下语句中能正确定义变量并赋初值的是()。 A) char c=65; B) float f=f+1.1; C) double x=12.3e3.6; D) int m=n=2.0; 8、在执行下列程序时输入:1357924,则程序的运行结果为()。 main( ) { int x, y; scanf(“%2d%2d”,&x,&y); printf(“%2d”,x*y); } A) 13 B) 1357 C) 74 D) 741 9、执行下列程序段后输出的结果是()。

c语言模拟试题

试卷编号:8156 所属语言:C语言 试卷方案:C语言201006模拟 试卷总分:100分 共有题型:5种 ━━━━━━━━━━━━━━━ 一、判断共10题(共计20分) ━━━━━━━━━━━━━━━ 第1题(2.0分)题号:1225 在给变量命名时,C语言区分大小写字母,即认为Name和name不是同一个变量. 答案:Y 第2题(2.0分)题号:1279 循环结构while、do while、for不可以互相嵌套. 答案:N 第3题(2.0分)题号:1140 链表中的任何一个结点,必然要包括一个指针域. 答案:Y 第4题(2.0分)题号:1265 在书写C程序时,一行内只能写一条语句,一条语句也不能写在多行上. 答案:N 第5题(2.0分)题号:1280 C语言程序中用到的所有变量必须在使用之前进行定义. 答案:Y 第6题(2.0分)题号:1269 若定义int a[4]={1,2,3,4};若超界引用a[4]则编译时不报错. 答案:Y 第7题(2.0分)题号:19 C语言本身不提供输入输出语句,输入和输出操作是由函数来 实现的。 答案:Y 第8题(2.0分)题号:11 通过return语句,函数可以带回一个或一个以上的返回值。 答案:N 第9题(2.0分)题号:24

对于数值型数组,C语言中只能逐个引用数组元素而不能一次引用整个数组。答案:Y 第10题(2.0分)题号:33 int i,*p=&i;是正确的C说明。 答案:Y ━━━━━━━━━━━━━━━━━ 二、单项选择共15题(共计30分) ━━━━━━━━━━━━━━━━━ 第1题(2.0分)题号:87 C语言源程序的基本单位是()。 A:过程 B:函数 C:子程序 D:标识符 答案:B 第2题(2.0分)题号:110 C语言中,char类型数据占()。 A:1个字节 B:2个字节 C:4个字节 D:8个字节 答案:A 第3题(2.0分)题号:112 下列程序的输出结果是()。 main() {char c1=97,c2=98; printf("%d %c",c1,c2); } A:97 98 B:97 b C:a 98 D:a b 答案:B 第4题(2.0分)题号:170 关于return语句,下列正确的说法是()。

c模拟试题 (3)

1,下列描述中不正确的是__C____。 A.可以对字符型数组进行整体输入、输出 B.字符型数组中可以存放字符串 C.可以对整型数组进行整体输入、输出 D.不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值 2,以下程序的输出结果是___C___。 main() { int i,a[10]; for(i=9;i>=0;i--) a[i]=10-i; printf("%d%d%d",a[2],a[5],a[8]); } A.369 B.741 C.852 D.253 3,若变量已正确定义并赋值,下面符合C语言的表达式是__B____ A.a=a+7=c+b B.a=b=c+2 C.int 18.5%3 D,a:=b+1 4.以下选项中合法的字符常量是_D_____。 A."B" B,D C,68 D,'\010' 5,有以下程序 struct S{int n; int a[20];}; void f(struct S *p) { int i,j,t; for(i=0;in-1;i++) for(j=i+1;jn;j++) if(p->a[i]>p->a[j]) { t=p->a[i]; p->a[i]=p->a[j]; p->a[j]=t;} } main() { int i; struct S s={10,{2,3,1,6,8,7,5,4,10,9}}; f(&s); for(i=0;i

C语言程序设计模拟试题2(附答案)

《C语言程序设计》模拟试卷二 一、填空题。(每空2分,共30分) 1.设有变量说明语句 int x=1,y=2; 则执行下述printf语句的输出结果是___1.000000___ _____。 printf("%f\n",1.0+x/y); 2.执行下述程序 #include main() { int x,y; scanf("%2d%*2s%1d",&x,&y); printf("%d\n",x+y); } 若从键盘输入 12345671 则程序的输出结果是__17______。 3.以下程序的功能是:从键盘上输入若干名学生的成绩(百分制,可带小数,以输入负数或0为结束标志),统计并输出最高成绩和最低成绩。请填空。 #include main() {

float x,amax,amin; scanf("%f",&x); amax=x; amin=x; while ( X>0&&X<=100 ) { if (x>amax) amax=x; else if (x

_k++ _________; d=1.0/(k*(k+1)); } while (k<=n); printf("%f\n",s); 5.执行下述程序的输出结果是_-3 -4 0 4 4 3___ ____。 #inclued main() { int a[6],i; for (i=0;i<6;i++) { a[i]=9*(i-2+4*(i>3))%5; printf("%3d",a[i]); } printf("\n"); } 6.执行下述程序时的输出结果是____6_____ ________。 #include main() { int a[]={2,4,6,},*ptr=&a[0],x=8,y,z; for (y=0;y<3;y++) z=(*(ptr+y)

c 大一模拟试题 带答案

模拟试卷(A卷) 一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在括号内。每小题2分,共15小题,30分) 1. 下列字符串中不能作为C++标识符使用的是()。 A、WHILE B、user C、_lvar D、9stars 2. C++语言规定:在一个源程序中,main函数的位置()。 A、必须在程序的最开始 B、必须在系统调用的库函数的后面 C、可以任意 D、必须在程序的最后 3. 假定int类型变量占用两个字节,其有定义int?x[10]={0,2,4};,则数组x在内存中所占字节数是( )。? A、3 ??? B、6? C、10?? ? D、20? 4. 判断字符型变量ch是否为大写英文字母,应使用表达式()。 A、ch>='A' & ch<='Z' B、ch<='A' ||ch>='Z' C、'A'<=ch<='Z' D、ch>='A' && ch<='Z' 5. 已知下列语句中的x和y都是int型变量,其中错误的语句()。 A、x=y++; B、x=++y; C、(x+y)++; D、++x=y; 6. 有如下程序段: int i=1; while (1) { i++; if(i == 10) break; if(i%2 == 0) cout << '*'; } 执行这个程序段输出字符*的个数是()。 A、10 B、3 C、4 D、5 7.有如下程序 #include using namespace std; int func (int a, int b) { return (a+b); }

int main () { int x=2,y=5,z=8,r; r=func(func(x,y), z); cout<> n; switch(n) { case 1: case 2: cout << '1'; case 3: case 4: cout << '2'; break; default: cout << '3'; } 时,若键盘输入1,则屏幕显示()。 A、1 B、2 C、3 D、12 9.若二维数组a有m列,则在a[i][j]之前的元素个数为()。 A、j*m+i B、i*m+j C、i*m+j-1 D、i*m+j+1 10. 语句的int *p=&k定义于指针P,于这个语句等效的语句序列是()。 A、int *p; p=&k; B、int*p; p=k; C、int*p; *p=&k; D、int*p;*p=k; 11. 已知:int m=10; 在下列定义引用的语句中,正确的是()。 A、int &x=m; B、int y=&m; C、int &z; D、int &t=&m; 12、有如下程序段 int i =0, j=1; int&r=i ; // ① r =j; //② int*p=&i ; //③ *p=&r ; //④

安全员c本模拟试题及参考答案

一、判断题(正确的写A,错误的写B) ( A )0001.依据《安全生产法》的规定,企业与职工订立合同,免除或者减轻其职工因生产安全事故伤亡依法应承担的责任,该合同无效。 ( B )0002.甲公司将其施工项目发包给乙公司,乙公司将其中部分业务分包给丙公司,丙公司又分包给挂靠在丁公司的蔡某,依据《安全生产法》的规定,负责统一协调、管理各个方面的安全生产工作的责任主体是乙公司。 ( B )0003.某厂焊接工张某因生产安全事故受到伤害,依据《安全生产法》的规定,张某只能依法获得工伤社会保险赔偿。 ( A )0004.依据《突发事件应对法》的规定,突发事件预警级别分为一、二、三和四级,分别用红、橙、黄和蓝色表示,一级为最高等级。 ( B )0005.依据《突发事件应对法》的规定,乡级人民政府应当在村民委员会建立专职信息报告员制度。 ( A )0006.依据《行政处罚法》的规定,当事人逾期不缴纳行政罚款的,处罚机关可以采取每日按罚款额百分之三加处罚款。 ( A )0007.依据《行政许可法》的规定,被许可人以欺诈、贿赂等不正当手段取得行政许可的,行政机关除依法给予行政处罚外,如取得的行政许可直接关系公共安全、人身健康、生命财产安全的,则申请人3年内不得再次申请该行政许可。 ( A )0008.某房地产公司安排已怀孕3个月的女职工本周每天加班一小时,此种做法符合《劳动法》规定。 ( A )0009.根据《安全生产法》,从业人员80人的危险化学品使用单位应当设置安全管理机构和专职安全管理人员。 ( A )0010.某煤矿发生透水事故,当场死亡5人,主管安全生产的副总经理李某未向有关部门报告,贻误了事故抢险救援的时机,又导致3人死亡,依据《刑法》及相关规定,对李某应处三年以上七年以下有期徒刑。 ( B )0011.依据《行政处罚法》的规定,地方性法规可以设定限制人身自由、吊销企业营业执照之外的行政处罚。 ( B )0012.某生产经营单位一职工周日加班时发现危化品仓库存在安全隐患,可能引发重大事故。依据《安全生产法》的规定,该职工应向负责人报告隐患。

C语言模拟题

上海师范大学标准试卷 ~ 学年第学期考试日期年月日 (考试时间:90分钟) 科目:C 语言程序设计(模拟卷) 专业本科年级班姓名学号 我承诺,遵守《上海师范大学考场规则》,诚信考试。签名:________________ 一、选择和填空题(本大题满分20分,每题2分。) 1、把a1、a2定义成整型变量,并赋初值1的定义语句是int a1=1,a2=1; 。 2、有以下程序片段,请问执行后的输出结果是 1 。 char a=8,c;c=a>=3;printf("%d\n",c); 3、有以下程序片段,若程序运行时从键盘输入48(字符0的ASCII码),则输 出结果为09 。 char c1,c2; scanf("%d",&c1); c2=c1+9; printf("%c%c\n",c1,c2); 4、有以下程序片段,若程序运行时从键盘输入12,则输出结果为 1217 。 scanf("%d",&x);if(x>15) printf("%d",x-5); if(x>10) printf("%d",x);if(x>5) printf("%d\n",x+5); 5、有以下程序片段,请问执行后的输出结果是0 。 char str[]="ABCD"; printf("%d\n",str[4]); 6、若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句 是 C 。 A) a=a+b, b=a-b, a=a-b; B) t=a, a=b, b=t; C) a=t; t=b; b=a; D) t=b; b=a; a=t; 7、下面程序段中循环体的执行次数是 B 。 int j=0; do{j=j+1; }while(j>2); A) 0次B) 1次C) 2次D) 无限次 8、以下程序的输出结果是 B 。 int fun(int a, int b, int c ) { return c=a*b;} main() { int c=3; fun(2,3,c); printf("%d\n",c); } A) 2 B) 3 C) 6 D) 无定值 9、假设二维数组a有m列,则在元素a[i][j]前的元素个数为 B 。 A) j*m+i B) i*m+j C) i*m+j-1 D) i*m+j+1 10、判断整型变量a的值是否处于区间[5,10]的表达式应写作 5<=a&&a<=10 。

软件工程模拟试题及参考答案(一)-(2)

《软件工程模拟试题及参考答案》(一) 一、单向选择题(四选一、每小题3分,共18分) 1、面向对象(Object Oriented)方法是将现实世界的事物以对象的方式(B )到计算机世界的方法。 对应 映射 反映 反射 2、盒图也称为(D)或Chapin图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。0802 流程图 框图 判定表 N-S图 3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。1001 程序 数据 逻辑 物理 4、人机界面的风格大致经过了(B)代的演变。 三 四 五 六 5、以下不属于白盒测试技术的是(D)1402 逻辑覆盖 基本路径测试 循环覆盖测试 等价类划分 6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。1501 纠错性维护 适应性维护 改善性维护 预防性维护 二、填空题(每空2分,共18分) 1.文档—一种数据媒体和其上所记录的(数据)。0101 2.机器语言、汇编语言:依赖于机器,面向(机器)0101 3.软件有效性,指软件系统的时间和(空间)效率。0103 4.软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。0103 5.软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。0103 6.为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。0402 7.一个软件的深度是指其控制的(层数)。0801 8.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫 (编码)过程。1301 9.软件维护是软件生命周期的(最后)一个阶段。1501 三、判断题(每小题2分,共24分,错误打X、正确打√) 1.缺乏有力的方法学的指导和有效的开发工具的支持,这往往是产生软件危机的原因之一。(√)0102 2.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。(X)0206 3.在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出

C模拟题答案

C模拟题答案 文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)

C++程序设计模拟试卷(二) 一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中 只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无 分。 1. 静态成员函数没有() A. 返回值 B. this指针 C. 指针参数 D. 返回类型 答案:B 解析:(P107)静态成员函数是普通的函数前加入static,它具有函数的所有的特征:返回类型、 形参,所以使用(P107)静态成员函数,指针可以作为形参,也具有返回值。静态成员是类具有的 属性,不是对象的特征,而this表示的是隐藏的对象的指针,因此静态成员函数没有this 指针 。静态成员函数当在类外定义时,要注意不能使用static关键字作为前缀。由于静态成员函数在 类中只有一个拷贝(副本),因此它访问对象的成员时要受到一些限制:静态成员函数可以直接 访问类中说明的静态成员,但不能直接访问类中说明的非静态成员;若要访问非静态成员时,必 须通过参数传递的方式得到相应的对象,再通过对象来访问。 2. 假定AB为一个类,则执行“AB a(2), b[3],*p[4];”语句时调用该类构造函数的次数 为() A. 3 B. 4 C. 5 D. 9 答案:B 解析:(P79)a(2)调用1次带参数的构造函数,b[3]调用3次无参数的构造函数,指针没有给它 分配空间,没有调用构造函数。所以共调用构造函数的次数为4。 3. 有关多态性说法不正确的是() A. C++语言的多态性分为编译时的多态性和运行时的多态性 B. 编译时的多态性可通过函数重载实现 C. 运行时的多态性可通过模板和虚函数实现

C模拟考试题及参考答案(10级)

C语言程序设计模拟试题(10级) 一、单选题(、共30小题,每小题1分,共30分) 1、有如下定义: struct date { int year,month,day; }; struct person { char name[20]; char sex; struct date birthday; } a; 对结构体变量a的出生年份赋值时,下面正确的赋值语句是:()。 A. a.year=2010; B. birthday.year=2010; C. a.birthday.year=2010; D. year=2010; 2、若定义了 struct num { int a;int b; }d[3] ={{1,4},{2,5},{6,7}}; 则执行printf("%d\n",d[2].a* d[2].b/d[1].b);语句的输出结果是:()。 A.2 B.2.5 C.8 D.8.4 3、以下程序的运行结果是:()。 void main(void) { struct num { int x; int y; }cnum[2]={1,3,2,6}; printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].y); } A. 18 B. 12 C. 6 D. 1

4、在VC++6.0中,若有以下说明: struct st { int x; float y; }; 则:sizeof(struct st) 的值为(): A. 6 B. 8 C. 10 D. 12 5、若变量x和y均为整型,且x=y=1,则表达式y+=x+1的值为( )。 A. 3 B. 2 C. 1 D.无正确结果 6、表示关系x<=y<=z的c语言表达式为( )。 A. (X<=Y<=Z) B. (X<=Y)AND(Y<=Z) C. (X<=Y)&&(Y<=Z) D. (X<=Y)&(Y<=Z) 7、x为int型变量,执行以下语句后,x的值为( )。 x=10; x+=x-=x-x; A.10 B.20 C.30 D.40 8、有以下程序: void main( ) { ; ;; } 程序运行后的结果是( ): A.编译时有警告错误 B.编译时有语法错误 C.编译没有错误,但是运行时出错 D.程序正常运行,但是无任何输出 9、若有输入语句"scanf("%d,%d,%d" ,&x,&y,&z) ;",欲使x的值为10,y的值为20,z的

C类人员考试模拟试题

ⅢC类 一、单选题(本题型每题1分,共50分。每题有4个备选答案,其中只有一个答案是正确的,多选,不选、错选均不得分)。 161、施工现场悬挂警示标志的目的( C )。 A、为了装饰 B、上级要求 C、为了引起人们注意,预防事故发生 D、管理科学化的要求 162、建筑施工企业管理人员安全生产考核合格证书有效期为( C )年。 A、1 B、2 C、3 D、4 163、安装、拆卸施工起重机械和整体提升脚手架、模板等自升式架设设施,应当编制拆装方案、制定安全施工措施,并由( A )现场监督。 A、专业技术人员 B、监理人员 C、设计人员 D、建设单位技术人员164、专职安全生产管理人员负责对安全生产进行现场监督检查。发现安全事故隐患,应当及时向( C )和安全生产管理机构报告;对违章指挥、违章操作的,应当立即制止。 A、项目总监 B、监理工程师 C、项目负责人 D、项目技术负责人165、施工单位应当将施工现场的办公、生活区和作业( D );办公、生活区的选址应当符合安全性要求。 A、保持适当距离 B、保持安全距离 C、随意设置并保持安全距离D分开设置并保持安全距离 166、施工单位应当向作业人员提供安全防护用具和安全防护服装,并( B )危险岗位的操作规程和违章操作的危害。 A、口头告知 B、书面告知 C、口头或书面告知 D、电话告知167、国家对严重危及施工安全的工艺、设备、材料实行( C )制度。 A、限地区使用 B、报告 C、淘汰 D、登记备案 168、在( B )内的建设工程,施工单位应当对施工现场实行封闭围挡。 A、城镇 B、城市市区 C、城乡 D、乡村 169、坑壁支撑采用钢筋混凝土灌注桩时,开挖标准是桩身混凝土( A )。 A、达到设计强度后 B、灌注24H后 C、灌注36H后 D、灌注48H 后170、使用顶管法施工时,要按照理信纸计算或经验选定的总顶力的( C )倍配备千斤顶。 A、0.5 B、1 C、1.2 D、2 171、挡土墙沿水平方向每隔10~25M要设置缝宽为( A )的伸缩缝或者沉降缝。 A、10mm B、25mm C、0~30mm D、30mm 172、从安全的角度考虑,模板及支架在安装过程中,必须采取( D )。 A、保证工程质量的措施 B、提高施工速度的措施 C、保证节约材料的计划 D、有效防倾覆的临时固定设施 173、按照《建筑施工模板安全技术规范》的规定,楼层高度大于( C )时,应采用钢管立杆,不得采用木立杆。 A、3m B、4m C、5m D、6m 174、支设高度大于( B )以上的柱模板,四周应设斜撑,并应设立操作平台。A、2m B、3m C、4m D、5m 175、扣件式钢管脚手架必须设置纵横向扫地杆,纵上横下,直角扣件与立杆扣牢,离地面

计算机应用技术基础》模拟题及参考答案C

计算机应用基础》模拟题及参考答案C 一、单选题(每小题1分) 1.微机存储器容量的单位是()。 A.位 B.字节 C.字 D.bit 2.某单位自行开发的工资管理系统,按计算机应用的类型划分,它属于()。 A.科学计算 B.辅助设计 C.数据处理 D.实时控制 3.计算机最主要的工作特点是()。 A.高速度 B.高精度 C.存记忆能力 D.存储程序和程序控制 4.微型计算机中使用的人事档案管理系统,属下列计算机应用中的()。 A.人工智能 B.专家系统 C.信息管理 D.科学计算 5.与十六进制数(AB)等值的二进数是()。 A.10101010 B.10101011 C.10111010 D.10111011 6.和广域网相比,局域网()。 A.有效性好但可靠性差 B.有效性差但可靠性高

C.有效性好可靠性也高 D.有效性差可靠性也差 7.在Excel 中,如果要修改计算的顺序,需把公式首先计算的部分括在()。 A.圆括号内 B.双引号内 C.单引号内 D.中括号内 8.下列四条叙述中,有错误的一条是()。 A.以科学技术领域中的问题为主的数值计算称为科学计算 B.计算机应用可分为数值应用和非数值应用两类 C.计算机各部件之间有两股信息流,即数据流和控制流 D.对信息(即各种形式的数据)进行收集、储存、加工与传输等一系列活动的总称为实时控制 9.调制解调器(Modem)的功能是实现()。 A.模拟信号与数字信号的转换 B.数字信号的编码 C.模拟信号的放大 D.数字信号的整形 10.十进制数(-123)的原码表示为()。 A.11111011 B.10000100 C.1000010 D.01111011 11.局域网组网完成后,决定网络使用性能的关键是()。 A.网络的拓扑结构 B.网络的通信协议 C.网络的传输介质 D.网络的操作系统 12.客户/服务器模式的局域网,其网络硬件主要包括服务器、工作站、网卡和()。 A.网络拓扑结构 B.计算机

C语言模拟题

一.选择题 1、()是不正确的。 A、每条语句最后必须有一个分号; B、C源程序可由一个或多个函数组成; C、注释说明只能位于一条语句的后面; D、C源程序的基本组成单位是函数。 2、()是正确的叙述。 A、强制类型转换运算的优先级高于算术运算; B、表达式“m”+“M”是合法的; C、若变量X,Y为整型,则(a+b)++是合法的; D、表达式‘m’*‘n’是合法的; 3、()为正确的变量名 A. k.jeep B. int C.k_5 D. –k15 4、若有定义int m=4321, n=123, k=21; 语句printf( “%4d+%3d+%2d”,m,n,k); 执行后的输出结果是() A、4321432143211231231232121 B、432+123+021 C、432112321 D、4321+123+21 5、若定义int a= -5 , b= -8, c=21,则表达式a>=b|| b

C语言程序设计模拟试题3(附答案)

《C语言程序设计》模拟试卷三 一、填空题。(每空2分,共16分) 1.在内存中,短整型变量占字节,单精度实型变量占字节,字符型变量占字节。2.一个C语言文件是由若干个组成。 3.设有以下变量定义,并已赋确定的值 char w; int x; float y; double z; 则表达式:w*x+z-y所求得的数据类型为。 4.若x为int类型,请以最简单的形式写出与逻辑表达式!x等价的C语言关系表达式。5.若有如下图所示五个连续的int类型的存储单元并赋值如下图,a[0]的地址小于a[4]的地址。p和s是基类型为int的指针变量。请对以下问题进行填空。 a[0] a[1] a[2] a[3] a[4] (1)若p已指向存储单元a[1]。通过指针p,给s赋值,使s指向最后一个存储单元a[4]的语句是。(2)若指针s指向存储单元a[2],p指向存储单元a[0],表达式s-p的值是。 二、单项选择题。(每题2分,共40分) 1.设有int x=11; 则表达式(x++ * 1/3) 的值是()。 A) 3 B) 4 C) 11 D) 12 2.下列程序的输出结果是()。 A) 3 B) 3.2 C) 0 D) 3.07 main() {double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(“%d \n”, d*y); } 3.下列程序执行后的输出结果是(小数点后只写一位)()。 A) 6 6 6.0 6.0 B) 6 6 6.7 6.7 C) 6 6 6.0 6.7 D) 6 6 6.7 6.0

main() { double d; float f; long l; int i; i=f=l=d=20/3; printf("%d %ld %f %f \n", i,l,f,d); scanf("%d",&d); } 4.下列变量定义中合法的是()。 A) short _a=1-.le-1; B) double b=1+5e2.5; C) long do=0xfdaL; D) float 2_and=1-e-3; 5.设int x=1, y=1; 表达式(!x||y--)的值是()。 A) 0 B) 1 C) 2 D) -1 6.与y=(x>0?1:x<0?-1:0);的功能相同的if语句是()。A) if (x>0) y=1; B) if(x) else if(x<0)y=-1; if(x>0)y=1; else y=0; else if(x<0)y=-1; else y=0; C) y=-1 D) y=0; if(x) if(x>=0) if(x>0)y=1; if(x>0)y=1; else if(x==0)y=0; else y=-1; else y=-1; 7.以下循环体的执行次数是()。 A) 3 B) 2 C) 1 D) 0 main() { int i,j; for(i=0,j=1; i<=j+1; i+=2, j--)printf(“%d \n”,i); } 8.以下叙述正确的是()。 A) do-while语句构成的循环不能用其它语句构成的循环来代替。 B) do-while语句构成的循环只能用break语句退出。

相关文档
最新文档