-
C++语言程序设计(下) 中国农业大学 单元测验7-3
2020-05-01 15:10:511.已定义一个圆形类Circle: class Circle { private: double r; public: void SetR(double x) { r = x; } ...使用Circle类来求一个半径为5的圆面积,下列语句中错误的是( )...题目导航
单元测验 单元作业 单元测验7-1 单元测验7-2 单元作业7-2 单元测验7-3 单元作业7-3 单元测验8-1 单元作业8-1 单元测验8-2 单元测验9 单元测验10-1 单元测验10-2 单元作业10-2 期末考试2019春 1.已定义一个圆形类Circle:
class Circle { private: double r; public: void SetR(double x) { r = x; } double GetArea( ) { return 3.14*r*r; } };
使用Circle类来求一个半径为5的圆面积,下列语句中错误的是( )。
编号 选项 A Circle c, *p = &c; p->SetR( 5 ); cout << p->GetArea(); B Circle.SetR( 5 ); cout << Circle.GetArea(); C Circle *p = new Circle( ); p->SetR( 5 ); cout << p->GetArea(); delete p; D Circle c; c.SetR( 5 ); cout << c.GetArea(); 2.已定义一个圆形类Circle:
class Circle { private: double r; public: void SetR(double x) { r = x; } double GetArea( ) { return 3.14*r*r; } };
编写一个显示某个圆面积的函数show,下列函数定义中错误的是( )。
编号 选项 A void show( Circle c ) { cout << “圆面积= ” << c.GetArea() << endl; } B void show( ) { cout << “圆面积= ” << Circle.GetArea() << endl; } C void show( Circle *c ) { cout << “圆面积= ” << c->GetArea() << endl; } D void show( Circle &c ) { cout << “圆面积= ” << c.GetArea() << endl; } 3.已定义一个圆形类Circle:
class Circle { private: double r; public: void SetR(double x) { r = x; } double GetArea( ) { return 3.14*r*r; } };
用Circle类定义一个对象数组:Circle c[3]; 则下列语句中错误的是( )。
编号 选项 A for (int i = 0; i < 3; i++) { c[i].SetR(i*2.5); cout << c[i].GetArea() << endl; } B Circle p = &c[2];for (int i = 2; i >= 0; i–) { p->SetR(i2.5); cout << p->GetArea() << endl; p–; } C for (int i = 3; i >= 0; i++) { c[i].SetR(i*2.5); cout << c[i].GetArea() << endl; } D Circle p = &c;for (int i = 0; i < 3; i++) { p->SetR(i2.5); cout << p->GetArea() << endl; p++; } 4.使用类ABC做如下定义:ABC x, *p, y[3]; 执行该定义语句将自动调用几次类ABC的构造函数?( )
编号 选项 A 0 B 3 C 4 D 5 5.函数间传递对象数据不能采用下列哪种方式?( )
编号 选项 A 值传递 B 被调函数直接访问主调函数中的局部对象 C 引用传递 D 指针传递 6.通过值传递在函数间传递对象数据,形实结合时会自动调用下列哪个构造函数来初始化对象形参?( )
编号 选项 A 拷贝构造函数 B 带形参的构造函数 C 析构函数 D 不带形参的构造函数 7.在类中声明一个常数据成员x,下列哪条语句是正确的?( )
编号 选项 A int x const; B int x; C int const x; D const int x; 8.在类中声明一个常函数成员fun,下列哪条语句是正确的?( )
编号 选项 A const void fun( ); B void fun( ) const; C void const fun( ); D void fun( ); 9.下列关于静态成员的描述中,错误的是( )。
编号 选项 A 静态数据成员要在类外定义和初始化 B 公有静态成员具有文件作用域 C 静态数据成员不属于某个对象,是类的共享成员 D 私有静态成员具有块作用域 10.已定义类A:
class A { public: int x; static int y; }; int A::y = 0;
下列语句中错误的是( )。
编号 选项 A A.x = 1; A.y = 1; B A a; a.x = 1; a.y = 1; C A::y = 1; D A a; a.x = 1; A::y = 1; @Power By Exercises-Manager
-
指针
2009-10-14 18:20:00指针不能持有非地址值例如下面的赋值将导致编译错误// 错误pi 被赋以int 值ivalpi ...那么下列两条语句都会引起编译时刻错误// 都是编译时刻错误// 无效的类型赋值: int* pi = pd;pi = &dval; void*表明相关的值是个地指针不能持有非地址值例如下面的赋值将导致编译错误
// 错误pi 被赋以int 值ival
pi = ival;
指针不能被初始化或赋值为其他类型对象的地址值例如已知如下定义
double dval;
double *pd = &dval;
那么下列两条语句都会引起编译时刻错误
// 都是编译时刻错误
// 无效的类型赋值: int* <== double*
pi = pd;
pi = &dval;void*表明相关的值是个地址但该地址的对象类型不知道
void *pv = pi;
pv = pd;=======================
(1)无论是*p=0还是*p=1,都不是给指针赋值,而是让指针指向的整数的值为0或1。这个指针如果没有初始化的话,直接写这两个语句会出运行时错误。
(2)要让指针的地址值等于一个整数值,如果不用类型转换的话,除了0,其他都是不允许的。C/C++ code
-
p=0; //合法,表示p是空指针 p=20345686;//非法,目的是要使指针ptr指向地址20345686(十进制)
(3)但是加类型转换后,可以直接用整数给指针赋值
C/C++ code -
p = (int*)20345686; //合法
-
int *p=1; //指针p的地址值是1 *p=1; //p所指向的整数的值为1
我们知道当取一个int 型对象的地址时结果是int**——即指向int 指针的指针当我们解引用ppi 时
int *pi = &ival;
结果是int*——即指向int 的指针当我们取指向int 型的指针的地址时
int **ppi = π
int *pi2 = *ppi;string 构造函数的第二种形式定义了一个空字符串例如
string st2; // 空字符串
我们怎样能保证它是空的当然一种办法是测试size()是否为0
if ( ! st.size() )
// ok: 空
更直接的办法是使用empty()操作
if ( st.empty() )
// ok: 空
如果字符串中不含有字符则empty()返回布尔常量true 否则返回false可以将一个C 风格的字符串赋给一个string 对象
string s1;
const char *pc = "a character array";
s1 = pc; // ok
但是反向的转换不能自动执行对隐式地将string 对象转换成C 风格的字符串string
类型没有提供支持例如下面试图用s1 初始化str 就会在编译时刻失败
char *str = s1; // 编译时刻类型错误为实现这种转换必须显式地调用名为c_str()的操作
char *str = s1.c_str(); // 几乎是正确的但是还差一点c_str()返回了一个指向常量数组的指针下一节将解释常量修饰符const
const char*
str 被定义为非常量指针所以这个赋值被标记为类型违例正确的初始化如下
const char *str = s1.c_str(); // okstring st( "The expense of spirit/n" );
st 的长度由size()操作返回不包含终止空字符 -
-
JAVA练习题80819教学教材.doc
2020-09-05 00:26:25Java语言程序设计模拟试题一 说明本试卷共五大题试卷满分100分考试时间120分钟... 下列的变量定义中错误的是 A int 5b; B double d; C float i=100.0f; D int i=100; 3. 使用下面选项的语句中能够引入abc包中所有类的是 -
JAVA学习复习总结计划练练习习题.docx
2020-11-09 11:12:24Java 语言程序设计模拟试题一 说明本试卷共五大题试卷满分 100 分考试时间 120 分钟 一选择题共 20 ... 下列的变量定义中错误的是 A int 5b; B double d; C float i=; D int i=100; 3. 使用下面选项的语句中能够引入 ab -
JAVA复习题及答案
2019-01-12 17:00:219、假设D类有如下定义,设d是D类的一个实例对象,下列语句调用错误的是 ( )。 class D{ int i; static String s; void method1(){} static void method2(){}} A.d.method1(); B.D.method2(); C.D.method1();... -
Java_基础测试
2020-02-13 15:16:28下列哪个声明是错误的?() A. int i=10; B. float f=1.1; C. double d=34.4; D. byte b=127; 变量的定义 数据类型 下面哪个不是java中的关键字?() A. public B. true C. main D. class 关键字 下面程序哪个...单选题:(每道题目2分)
- 下列哪个声明是错误的?()
A. int i=10;
B. float f=1.1;
C. double d=34.4;
D. byte b=127;
变量的定义
数据类型- 下面哪个不是java中的关键字?()
A. public
B. true
C. main
D. class
关键字
- 下面程序哪个语句是正确的
A. byte a=0,b=3; byte c =a+b;
B. short s =23; s=s+12;
C. short s=23; s+=12;
D. float f = 23+23.23;
类型转换
运算符- 下面程序执行的结果是?()
class Test
{
public static void main(String[] args)
{
System.out.println(“”+‘a’+1);
}
}
A. 98
B. a1
C. 971
D. 197
字符串的连接
- 下面程序执行的结果是?()
int i = 100;
while(true)
{
if (i++ > 100)
{
break;
}
System.out.println(i);
}
A. 100
B. 101
C. 102
D. 报错
判断语句
循环语句
控制跳转语句- 下面程序的运行结果是 ( )
int a=3, b=1;
if(a==b)
{
System.out.println(“a=”+a);
}
A. a=1
B. a=3
C. 编译错误
D. 正常运行但没有输出
判断语句
-
下面程序的运行后,结果正确的是:
int a=1,b=2;
int c=(a+b>3?a++:++b); a=1,b=3,c=3
A. a=2,b=3
B. a=1,b=3
C. a=1,b=2
D. c=2 -
下面程序的运行结果
class Demo
{
public static int fun(int c)
{
return c+=2;
}
public static void main(String[] args)
{
int temp = fun(2);
System.out.println(temp);
}
}
A. 2
B. 4
C. 6
D. 8
方法调用
- 下面数组定义错误的是()
A. int [] arr ={23,45,65,78,89};
B. int [] arr=new int[10] ;
C. int [] arr=new int[4]{3,4,5,6};
D. int [] arr={‘a’, 23 , 45 , 6};
数组定义
- 下面程序执行的结果是?( )
int x =1,y=1;
if(x++== 2 & ++y == 2)
{
x=7;
}
System.out.println(“x=”+x+" , y="+y);
A. x=1 y=2
B. x=7 y=1
C. x=7 y=2
D. x=2 y=2
运算符
判断语句- 下面不属于基本数据类型的是()
A. int
B. double
C. long
D. int[]
数据类型
-
下面程序执行的结果是?( )
boolean b=true;
if(b=false)
{
System.out.println(“a”);
}
else if(b)
{
System.out.println(“b”);
}
else if(!b)
{
System.out.println(“c”);
}
else
{
System.out.println(“d”);
}
A. a
B. b
C. c
D. d -
下面程序执行的结果是?()
int x=2,y=3;
switch(x)
{
default:
y++;
case 3:
y++;
case 4:
y++;
}
Sysetem.out.println(“y=”+y);
A. 3
B. 4
C. 5
D. 6
switch的执行流程
- 下面程序执行的结果
for(int i=1;i<=10;i++)
{
if (i%3==0)
{
continue;
}
System.out.println(“java基础班”);
}
在屏幕上打印几次“java基础班”?( )
A. 5
B. 6
C. 7
D. 8
15.阅读下面代码段:
class Demo
{
public static void main (String[] args)
{
int[] arr = new int[10];
System.out.println(arr[1]);
}
}
执行结果正确的说法是( )
A. 编译时将产生错误
B. 编译时正确,运行时将产生错误
C. 输出零
D. 输出空16 .和下面代码能完成相同的选项是()
int i=1;
int sum=0;
while(i<=100)
{
if(i%2==0)
{
sum=sum+i;
}
i++;
}
A. for (int x =1; x<=100;x++){ sum=sum+x;}
B. for (int x =0; x<=100;x+=2){ sum=sum+x;}
C. for (int x =1; x<=100;x+=2){ sum=sum+x;}
D.上述全对- 以下代码输出是( )
int i=0;
int sum=0;
while(i<=10)
{
i++;
if( i%2 !=0 )
continue;
sum+=i;
}
System.out.println(sum);
A. 55
B. 45
C. 35
D. 30- 给出下列代码片段:
if ( x > 0 ) { System.out.println(“Hello”); }
else if ( x >-3 ) { System.out.pirntln ( “I am Tom”); }
else { System.out.println (“How are you?”); }
请问将打印字符串 “How are you ?”的x的范围是( )
A. x>0
B. x > -3
C. x <= -3
D. x <=0 & x >-3
19. 下列代码执行的结果为( )
class Demo
{
public static void main(String[] args)
{
int num = max(43,34);
System.out.println(num);
}public static int max(int a,int b)
{
return a>b?a:b;}
}
A. 43
B. 23
C. 77
D. 920 .下面程序执行的结果是( )
class Demo
{
public static void main(String [] args)
{
int a=10;
if(a++>10)
{
a=20;
}
System.out.println(a);
}
}
A. 11
B. 12
C. 20
D. 21多选题:(每道题目3分)
21. 下面哪些是合法的标志符()
A. 2variable
B. variable2
C. what$
D. 3-
下列函数中能和函数int max(int a, int b, double c)构成重载关系的是( )
A. double max(int a, int b, double c)
B. void max(int a, double c, int b)
C. int max(double a, int b)
D. int max(int x, int y, double z) -
下面的说法正确的是( )
A. byte ,short,char 数据类型可以自动转化为int
B. float 数据类型可以自动转换为long。
C. 在java语言中默认小数为double
D. byte a=23; byte b=12; a+b的结果为byte类型 -
下面关于函数描述正确的是()
A. 函数是对功能代码块的封装
B. 函数没有返回值的时候什么都不用写
C. 没有返回值的函数,不能有return 语句
D. 函数是可以没有形参的 -
下面关于循环描述正确的是()
A. while循环先判断循环条件,后执行循环操作
B. while 至少会执行一次
C. do-while先进行循环条件判断,后执行循环操作
D. do-while循环至少执行一次,后进行循环判断
简答题目:(每道题目5分)
26:JDK,JRE,JVM是什么,有什么用,它们之间又有什么关系?
JDK:开发工具 包括JRE+tools
JRE:运行环境 包括JVM+核心类库
JVM:保证java语言跨平台27:数组是基本类型吗? Java中基本数据类型分类有哪些?
不是。
4类8种。
整数:byte,short,int,long
浮点数:float,double
字符:char
布尔:boolean28:函数是什么?它的运行特点是什么?
完成特定功能的代码块。
不调用不执行。29:数组是什么?我们根据什么可以获取数组中的元素呢?
数组是存储同一种数据类型的多个元素的集合。
索引。30:请说说什么时候使用变量,什么时候使用if语句,什么时候使用循环语句?说的有理即可得分。
如何数据是变化的,就需要使用变量。
如果要进行判断,就使用if语句。
如果要多次做某件事情,可以使用循环。编程题目:(总共20分,分配6,7,7)
注意:命名规范
31:在main方法中写一段代码,实现在控制台输出九九乘法表。
32:请写一个方法sum,实现求两个数之和。要求在main中调用。
33:请写一个方法printArray,实现遍历整数数组。要求在main中调用。 - 下列哪个声明是错误的?()
-
〖程序设计基础〗练习题2及答案
2011-05-30 14:39:3119. 设 i、j、k 为类 x 中定义的 int 型变量名,下列类 x 的构造函数中不正确的是( )。 A) x( int m){ ... } B) void x( int m){ ... } C) x( int m, int n){ ... } D) x( int h,int m,int n){ ... } 20. 下列方法... -
〖程序设计基础〗练习题3及答案
2011-05-30 14:40:552.下列的变量定义中,错误的是( )。 A) int i; B) int i=Integer.MAX_VALUE; C) static int i=100; D) int 123_$; 3.以下的变量定义语句中,合法的是( )。 A) float $_*5= 3.4F; B) byte b1= 15678; C) double a =... -
C++复习资料之系列
2008-12-30 21:35:45后,下面描述错误的是( a )。 (a) p的值为10 (b) p指向整型变量i (c) *p表示变量i的值 (d) p的值是变量i的地址 15.执行语句 int a = 5,b = 10,c;int *p1 = &a, *p2 = &b; 后,下面不正确的赋值语句... -
VC++科学计算器的设计V1_4Beta.rar
2010-03-23 04:54:59例如,如果源输入表达式书写错误,并且这种错误解释器内核不能给出自动的纠正策略,则应该报错而立即终止程序;如果解释器内核可以自动纠正之,则应该继续执行,但最好还是应该附加一个警告信息。 以上所述的某种... -
java经典面试2010集锦100题(不看你后悔)
2011-02-21 12:43:25下列关于构造方法的说法中错误的是:(选择1项) A) 构造方法的可以被重载。 B) 构造方法不可以有返回类型,但是可以有参数。 C) 构造方法的名字必须与类名相同。 D) 构造方法不可以被覆盖。 题目28:c 所有的异常... -
C++程序员面试宝典
2013-04-01 13:36:19面试题61 for循环语句的计算顺序是什么 61 面试题62 while循环与do-while循环有什么区别 62 面试题63 典型循环语句 64 面试题64 break语句与continue语句有什么区别 64 5.3 switch语句 66 面试题65 switch语句的执行... -
SQL语法大全
2014-03-30 11:00:11rs.open SQL语句,conn,3,2 3. SQL常用命令使用方法: (1) 数据记录筛选: sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select * from 数据表 where 字段名 like \'%字段值%\'... -
语言程序设计课后习题答案
2012-12-27 17:02:37const定义的常量是有类型的,所以在使用它们时编译器可以查错;而且,这些变量在调试时仍然是可见的。 2-5 请写出C++语句声明一个常量PI,值为3.1416;再声明一个浮点型变量a,把PI的值赋给a。 解: const float PI... -
JAVA面试题最全集
2010-03-13 13:09:10找出下列代码可能存在的错误,并说明原因: 二、JSP&Servlet技术 1.描述JSP和Servlet的区别、共同点、各自应用的范围 2.在Web开发中需要处理HTML标记时,应做什么样的处理,要筛选那些字符(< > & “”) 3.在... -
十天学会ASP.net--我认为ASP.NET比ASP难很多,希望大家做好准备
2008-12-05 08:41:03另外,如果是ACCESS数据库的话在ASPX文件的开头需要包括下列语句: 如果是SQL SERVER则需要包括以下语句: <%@Import Namespace="System.Data.SqlClient"%> 今天就说到这里,明天开始讲数据库的读取。 十天学会... -
如何编写批处理文件批处理文件批处理文件
2010-04-14 10:36:10@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。) 3.Goto 命令 指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。 ... -
MySQL命令大全
2018-01-15 11:19:17MySql的用户管理是通过User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用户。其中GRANT的常用用法如下: grant all on mydb... -
c++ 面试题 总结
2009-09-16 08:44:406.下面是C语言中两种if语句判断方式。请问哪种写法更好?为什么? int n; if (n == 10) // 第一种判断方式 if (10 == n) // 第二种判断方式 如果少了个=号,编译时就会报错,减少了出错的可能行,可以检测出是否少... -
MYSQL常用命令大全
2011-05-30 13:31:24我现在用的是mysql-3.23.27-beta-win。 二、显示命令 1、显示数据库列表。 show databases; 刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上... -
Java题目求完整解答
2020-12-22 10:16:40错误的选项是______A____。 ; margin-right:0pt">A.Java是面向过程的编程语言 ; margin-right:0pt">B.Java支持分布式计算 ; margin-right:0pt">C.Java是跨平台的编程语言 ; margin-right:0pt">D.Java支持多线程 ...
-
使用_thread多线程模块ping主机代码
-
CCPP电力负荷预测数据.zip
-
Linux系统诊断-内存基础
-
Liunx 优化思路与实操步骤
-
朱老师C++课程第3部分-3.6智能指针与STL查漏补缺
-
Glasterfs 分布式网络文件系统
-
Scrapy的301、302重定向问题原因及解决办法
-
2021年 系统分析师 系列课
-
navicat.zip
-
Visio培训教材.ppt
-
在 Linux 上构建企业级 DNS 域名解析服务
-
react-native-document-picker一个适合react native打开本地文件,上传文件的组件
-
数码大师.rar 影音编辑软件 婚纱影楼级别收费软件 各种活动演出视频轻松搞定
-
从代理HTTP角度看网红直播
-
【硬核】一线Python程序员实战经验分享(1)
-
Samba 服务配置与管理
-
在液体光化聚合混合物中记录相位全息图的机理
-
判断素数
-
“直播系统定制开发怎么样选择专业的软件外包商 “
-
高匿代理帮你解决爬虫问题