《面向对象程序设计》练习题及答案
面向对象程序设计复习试题(答案)

语法扩充1.1选择题在C++中用(D)能够实现将参数值带回。
a)数组b)指针c)引用d)上述ABC都可考虑函数原型voidtest(inta,intb=7,char*ch="*"),下面的函数调用中,属于不合法调用的是:(C)A)test(5)B)test(5,8)C)test(6,"#")D)test(0,0,"*");已知:intm=10;下列表示引用的方法中,正确的是:(C)A)C)在A)对在A)C)A)C)A)intFunc(int,int,int);B)doubleFunc(int,int);C)doubleFunc(double,double);D)doubleFunc(int,double);下面的哪个保留字不能作为函数的返回类型(C)A)voidB)intC)newD)long一个函数功能不太复杂,但要求被频繁调用,选用(A)。
A.内联函数B.重载函数C.递归函数D.嵌套函数已知函数f的原型为:voidf(int&a,char*b);变量s,t的定义是:ints;chart[]="ABCD";把s和t分别作为第一参数和第二参数来调用函数f,正确的调用语句是(C)Af(&s,&t);Bf(&s,t);Cf(s,t);Df(s,&t);若定义cin>>str;当输入MicrosoftVisualStudio6.0!所得结果是str=(B)。
A、MicrosoftVisualStudio6.0!B、MicrosoftC、MicrosoftVisualD、MicrosoftVisualStudio6.0.函数模板(C)。
A、代表某一具体函数B、与模板函数是同一个函数C、与某一个具体的数据类型连用D在ABCDAC1.21。
23int*&p=c;p=&b;4、假设有如下函数定义:voidFun(intx,inty=100);则语旬Fun(5)语句__Fun(5,100)_等价。
面向对象程序设计课后答案(完整版)

面向对象程序设计课后答案(完整版)第二章2-4#includeusing namespace std;Add(int a,int b);int main(){int x,y,sum;cout>x>>y;sum = add(x,y);cout >*p;p++;}p = p-20;for( i=0;i0) countp++;if(*p>age ;try{checkagescore(name,age);}catch( string){cout<<"exception :name is exit"<<endl;continue;}catch(int){cout<<"exception :age is not proper"<<endl;continue;}cout<<"name:"<<name<<" age :"< }return 0;}第三章3-1(1)A (2)C (3)B (4)C (5)C(6)B (7)B (8)C (9)C3-7(1)main()函数中p1.age = 30;语句是错误的。
age 是类的私有成员(2)构造函数应当给常数据成员和引用成员初始化,将构造函数改为:A(int a1,int b1):a(a1),b(b1){}或A(int a1 ):a(a1),b(a){}再将main中的A a(1,2); 改为A a(1);(3)(1)在Test 类中添加语句:void print();void Print(){cout<<x<<"-"<<y<<"="<<x-y<<endl;}改为void Test::Print(){cout<<x<<"-"<<y<<"="<<x-y<<endl;}main函数中Init(38,15);改为:A.Init(38,15);Print();改为:A.Print();3-8(1)Constructing AConstructing BDestructing BDestructing A(2)double a,double bpoint & pp.x3-9class box{int len1,len2,len3;public:box(int l1,int l2,int l3){len1 = l1;len2 = l2; len3 = l3;} long volumn(){return len1*len2*len3;}};3-10class Test{int m1,m2;public:void Init(int a,int b){m1 = a;m2 = b;}void Pring(){cout<<m1<<" "<<m2<<endl;}};3-11略3-12}第四章4-6(1)D (2)D (3)D (4)D (5)B(6)D4-7(1)static int count = 0;这样初始化静态成员值是不对的将其改为static int count;在类外,main函数前加int Sample::count = 0;(2)#include//#includeusing namespace std;class Ctest{private:int x; const int y1;public:const int y2;Ctest(int i1,int i2):y1(i1),y2(i2) {y1 =10;//y1 为常量不能赋值x = y1;}int readme() const;};int Ctest::readme ()const{int i;i = x;x++; //常函数内不能改变成员值return x;}int main(){Ctest c(2,8);int i = c.y2;c.y2 = i;//y2为常量,不能改值i = c.y1;//y1私有,类外不能访问return 0;}将出错语句全部注释4-8(1)题中印刷错误,将class C构造函数改为: C(){cout<<"constructor C:";}运行结果为:constructor Aconstructor Bconstructor C(2)40(3)3434-9#include#includeclass Date{int year;int month;int day;public:Date(int y,int m,int d){year=y;month=m;day=d;}void disp(){cout<<year<<" "<<month<<" "<<day<<endl;}friend int count_day(Date &d,int k);friend int l(int year);friend int h(Date &d1,Date &d2);};int count_day(Date &d,int k){static int day_tab[2][12]={{31,28,31,30,31,30,31,31,30,31,30,3 1},{31,29,31,30,31,30,31,31,30,31,30,31}};// 使用二维数组存放各月天数,第一行对应非闰年,第二行对应闰年int j,i,s;if(l(d.year))j=1;//闰年,取1else j=0;//非闰年,取0if(k)//K非0时{s=d.day;for(i=1;i<d.month;i++)//d.month为输入的月份s+=day_tab[j][i-1];}else//K为0时{s=day_tab[j][d.month]-d.day;for(i=d.month+1; i<=12; i++)s+=day_tab[j][i-1];}return s;//S为相差的天数}int l(int year){if(year%4==0&&year%100!=0||year%400==0) // 是闰年return 1;else // 不是闰年return 0;}int h(Date &d1,Date &d2){int days,day1,day2,y;if(d1.year<d2.year)//第一个日期年份小于第二个日期年份{days=count_day(d1,0);for(y=d1.year+1;y<d2.year;y++)if(l(y))//闰年。
《面向对象程序设计》练习题库-2010版

《面向对象程序设计》练习题库-2010版《面向对象程序设计》练习题库-2010版一、选择题1.假定p所指对象的值为5,p+1所指对象的值为8,则执行“(*p)++;”语句后,p所指对象的值为()A.5B.9C.6D.82.下面关于对象的描述中,不正确的是()A.对象是一种数据类型B.对象可大可小C.对象具有属性和行为两个要素D.对象是一种客观存在3.面向对象的程序是()的组合.A.数据结构+算法 B.对象+方法C.对象+消息D.对象+算法4.以下不属于面向对象的程序设计语言的是()A.C#B.C++C.JavaD.C5.下面关于构造函数的说法,不正确的是()A.构造函数没有返回值B.构造函数不能重载C.构造函数名称一定要和类名一致D.构造函数的参数可以缺省6.下面有关内置函数说法不正确的是()A.提高执行效率B.增加目标代码长度C.与带参宏定义效果一样D.用于规模小且使用频繁场合7.以下不属于C++关键字的是()A.mutableB.classC.endlD.static8.下列关于类和对象的叙述中,错误的是()A.可以用一个类定义多个对象B.类比对象大,包含对象C.类是对某一类对象的抽象D.对象是类的具体实例9.下面关于常变量的描述中,不正确的是()A.用const定义常变量B.指向常变量的指针即是常指针C.常变量是不能改变值的变量D.常成员函数不能修改数据成员10.假定A为一个类,a为该类私有的数据成员,Get()为该类公有的函数成员,它返回a的值。
现有如下语句A t,*p=&t;,则得到t对象中数据成员a的语句为()A.p.Get();B.t.a;C.p->Get();D.t->a;11.自减运算符的重载中,函数形参是int,意味着()A.编译不通过B.后置自减C.前置自减D.2个参数12.下列语句中,不能定义一个常量的是()A.#define double PI=3.1414926B.const double PI=3.1415926;C.#define PI 3.1415926D.const static double PI=3.1415926;13.如果一个类没有定义任何构造函数,下列描述正确的是()A.该类也就不定义析构函数B.编译器创建一个不带参数的构造函数C.该类不能通过编译D.编译器创建一个带参数的构造函数14.对于语句 cout << a;,下列描述中不正确的是()A.“cout”是一个输出流对象B.该语句输出了a的值C.“<< ”称作提取运算符D.该语句需要头文件iostream15.C++中,下面对结构体和类之间关系的描述中,正确的是()A.类中的默认权限是私有的,而结构体中默认权限是公有的B.类有函数成员,而结构体没有C.类有构造函数,而结构体没有D.类的成员可以定义为私有权限,而结构体成员不能定义为私有权限16.下面关于友元的说法,不正确的是()A.友元函数可以是成员函数B.友元类的函数均是友元函数C.友元不具备传递性D.友元的关系是双向的17.下面有关内置函数说法不正确的是()A.提高执行效率B.增加目标代码长度C.与带参宏定义效果一样D.用于规模小且使用频繁场合18.下面那个描述常成员函数的定义是正确的()A.const int show()B.int const show()C.int show()constD.int show(const)19.已有定义virtual int area()=0;下面关于该函数的解释中正确的是()A.该函数是纯虚函数B.该函数返回值为0C.该函数通常在派生函数中声明D.该函数的入口地址为020.下面哪个特性是C++相对于C所特有的()A.使用了引用的定义B.使用static关键字C.使用const关键字D.使用了指针的定义21.下列关于C++中运算符重载的描述中,错误的是()A.运算符重载可以对所有的运算符进行重载B.重载的运算符,其运算对象可以是自定义的数据类型C.运算符重载不能改变运算符的优先级D.运算符的重载实质上是函数的重载22.通过()方法可以在现有类基础上得到新的类。
JAVA面向对象程序设计练习题参考答案

《JAVA语言程序设计》练习题1一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. .javaB. .classC. .htmlD. .exe2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( )。
A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是( )。
A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )5、给定java 代码如下,编译运行后,输出结果是( )(选择一项)。
public class test {static int i;public int aMethod() {i++;return i;}public static void main (String args[]) {Test test=new Test() ;() ;} }a) 0 b) 1 c) 2 d) 3二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。
3、设 x = 2 ,则表达式 ( x + + )/3 的值是0 。
4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。
(完整版)《面向对象程序设计》答案

实验一熟悉VC++IDE开发环境一、实验目的1、熟悉VC++6.0集成开发环境,熟练掌握VC++6.0项目工作区、各种编辑器、菜单栏和工具栏的使用。
2、掌握如何编辑、编译、连接和运行一个C++程序。
3、通过运行简单的C++程序,初步了解C++源程序的结构和特点。
二、实验要求1、分析下列程序运行的结果。
程序一:#include <iostream.h>int add(int x,int y=8);void main(){ int x=4;cout<<add(x)<<",";cout<<add(x,add(add(x,add(x))))<<endl;}int add(int x,int y){ return x+y;}//12,28程序二:#include <iostream.h>void main(){ int *p,i;i=5;p=&i;i=*p+10;cout<<"i="<<i<<endl;}//i=15程序三:#include <iostream.h>void main(void){ int i=10;int &r=i;r++;cout<<"i="<<i<<", r="<<r<<'\n';i=88;cout<<"i="<<i<<", r="<<r<<'\n';}//i=11,r=11i=88,r=88程序四:#include <iostream.h>int f(int i){ static int k=1;for(;i>0;i--)k +=i;return k;}void main(){ int i;for(i=0;i<5;i++)cout<<f(i)<<" ";}// 1 2 5 11 21程序五:#include <iostream.h>void func();int n=1;void main(){ static int a;int b= -9;cout <<"a:"<<a<<" b:"<<b<<" n:" <<n<<endl;b+=4;func();cout <<"a:"<<a<<" b:"<<b<<" n:"<<n<<endl;n+=10;func();}void func(){ static int a=2; int b=5;a+=2;n+=12;b+=5;cout <<"a:" <<a<<" b:" <<b<<" n:" <<n <<endl;}// a:0 b:-9 n:1a:4 b:10 n:13a:0 b:-5 n:13a:6 b:10 n:35实验二C++对C的扩充一、实验目的1、了解在面向对象程序设计过程中C++对C功能的扩充与增强,并善于在编写程序的过程中应用这些新功能。
《面向对象程序设计》答案

0837一、BCABB DDCBA二、1、答:程序运行的输出结果是:1 2 6 24 1202、3、问题(1):Test3是SuperTest的子类(或SuperTest是Test3的父类,或继承关系)。
问题(2):super指对象的父类(或超类);this指使用它的对象本身(或对对象自己的引用)。
问题(3):程序的输出是:<\ p="">Hi, I am OliveNice to meet you!Age is 7My age is 7My parent"s age is 35<\ p="">4、答:问题(1):new FileOutputStream(“out.txt”)dout.writeInt( ‘0’ + i);dout.close( );new FileInputStream(“out.txt”)din.readInt( )din.close( );问题(2):常被用于读取与存储(读写或输入/输出)基本数据类型的数据。
问题(3):文件out.txt的内容是:0 1 2 3 4 5 6 7 8 9程序在控制台窗口输出:0,1,2,3,4,5,6,7,8,9,三、import java.io.DataOutputStream;import java.io.FileOutputStream;import java.io.IOException;public class TestSort {public static int MAXSIZE = 61;public static void sortInt(int[] arr) { // 采用选择法对一维数组进行排序for (int i = 0; i < arr.length - 1; i++) {int k = i;for (int j = i + 1; j < arr.length; j++)if (arr[j] < arr[k])k = j; // 用k记录最小值的下标if (k > i) { // 在外循环中实施交换arr[i] = arr[i] + arr[k];arr[k] = arr[i] - arr[k];arr[i] = arr[i] - arr[k];}}}public static void main(String args[]) {int score[] = new int[MAXSIZE];try {for (int i = 0; i < MAXSIZE; i++)score[i] = (int) (Math.random() * 100 + 0.5);sortInt(score);DataOutputStream dout = new DataOutputStream(new FileOutputStream(\"score.txt\"));for (int i = 0; i < MAXSIZE; i++) {dout.writeInt(score[i]);System.out.println(score[i]);}dout.close();// 结果保存到文件} catch (IOException e) {System.err.println(\"发生异常:\" + e);e.printStackTrace();}// try-catch结构处理异常}}。
C-面向对象程序设计习题解答(全)Word版

《C++面向对象程序设计》习题解答陈腊梅目录第一章面向对象程序设计概述.............................................................. 错误!未定义书签。
第二章对C语言的基础扩充................................................................... 错误!未定义书签。
第三章类和对象的初步探讨 ................................................................. 错误!未定义书签。
第四章类和对象的进一步解析.............................................................. 错误!未定义书签。
第五章在对象中使用运算符—运算符重载.......................................... 错误!未定义书签。
第六章继承与派生 (2)第七章多态性与虚函数 (2)第一章面向对象程序设计概述一、选择题二、填空题1、多态性2、成员函数3、抽象4、处理这些数据的操作或处理这些数据的函数5、面向对象分析、面向对象分析、面向对象编程、对象对象测试、面向对象维护第二章对C语言的基础扩充二、程序阅读题1答案a=639,b=78,c=122答案a=5,b=8a=8,b=53答案104答案x=20.6 y=5 z=Ax=216.34 y=5 z=Ax=216.34 y=2 z=Ax=216.34 y=2 z=E5答案ic=11fc=7.82ic=5fc=2.15第三章类和对象的初步探讨一、选择题二、填空题1 数据成员、成员函数2 private 、protected 、public3 指向对象的指针、对象的引用4 属性、行为、属性、行为5 对象、属性和操作这些属性的操作、对外隐藏四、程序改错题#include <iostream>using namespace std;class Clock{//public:void set_clock(void);void show_clock(void);//private:int hour;int minute;int second;};Clock clock;int main( ){clock.set_clock( );clock.show_clock ( );//return 0 ;}void Clock::set_clock(void){cin>>hour;cin>>minute;cin>>second;}void Clock::show_clock(void){cout<<hour<<":"<<minute<<":"<<second<<endl;}第四章类和对象的进一步解析二、填空题1 this2所有成员3友元类、友元函数4 friend5 程序编译、程序结束三、程序阅读题1答案Default constructor called.constructor called.0,06,86,8Destructor called.0,0Destructor called.2答案x!=y3答案Initalizing defaultInitalizing default0 0Destructor is activeDestructor is active4答案n=2,sum=2n=3,sum=5n=5,sum=105答案x=36答案x=1,y=2x=30,y=407答案1 2 3 4 4exit main3 2 1 08答案n=1009答案the student is:Li Huthe teacher is:Wang Ping10答案211答案1035,789.50412答案13答案constructing object:x=1第五章在对象中使用运算符—运算符重载二、程序完善题1(1)A A::operator+(A &b)(2){ A temp;temp.i = i+b.i;return temp; }三、程序阅读题1.答案n=4n=3232.答案c1=10 c2=20c1=100 c2=200c1=11 c2=21c1=100 c2=2003.答案1 2 4 7 11 16第六章派生与继承1 继承2 具体化、抽象3 公有继承、保护继承、私有继承4 子对象5 public(共有的)、protected(保护的)、不可访问6 protected(保护的)、protected(保护的)、不可访问的7 private(私有的)、private(私有的)、不可访问的8 二义性1.C++语言中,既允许单继承,又允许多继承。
java面向对象程序设计 习题答案

java面向对象程序设计习题答案《Java面向对象程序设计习题答案》在Java编程语言中,面向对象程序设计是一种重要的编程范式,它通过将现实世界中的事物抽象成对象和类的形式,来实现程序的设计和开发。
为了帮助大家更好地理解和掌握面向对象程序设计的知识,下面我们将通过一些习题来讲解相关的答案。
1. 什么是面向对象程序设计?面向对象程序设计是一种以对象为基础的程序设计方法,它将程序中的数据和操作封装在对象中,通过对象之间的交互来实现程序的功能。
面向对象程序设计具有封装、继承和多态等特性,能够提高程序的可维护性和扩展性。
2. 什么是类和对象?类是一种用来描述对象的模板,它定义了对象的属性和行为。
而对象则是类的实例,它具体描述了类的属性和行为。
在Java中,通过关键字“class”来定义类,通过关键字“new”来创建对象。
3. 什么是封装?封装是面向对象程序设计的一个重要特性,它指的是将数据和操作封装在对象内部,对外部隐藏对象的内部实现细节。
通过封装,可以保护对象的数据不被外部直接访问和修改。
4. 什么是继承?继承是面向对象程序设计的另一个重要特性,它指的是一个类可以派生出子类,子类可以继承父类的属性和行为。
通过继承,可以实现代码的重用和扩展。
5. 什么是多态?多态是面向对象程序设计的另一个重要特性,它指的是同一个操作对不同对象有不同的行为。
通过多态,可以实现接口的统一和灵活的程序设计。
通过以上习题的答案,我们可以更好地理解和掌握面向对象程序设计的知识。
希望大家在学习Java编程语言的过程中,能够加强对面向对象程序设计的理解和应用,提高自己的编程能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计》练习题及答案1. 单选题
1. 数组的大小在创建以后( )。
A. 可以改变
B. 不能改变
C. 使用new方法可以改变
D. 有些可以改变
正确答案:B
2. 已知如下代码:boolean m = true;if ( m = false ) System.out.println("False");else System.out.println("True");执行结果是( )
A. False
B. True
C. None
D. 出错
正确答案:B
3. 下列代码中,将引起一个编译错误的行是( ) 1)public class Test{ 2) int m,n; 3) public Test(){} 4) public Test(int a){m=a;} 5) public static void main(String args[]){ 6) Test t1,t2; 7) int j,k; 8) j=0;k=0; 9) t1=new Test(); 10) t2=new Test(j,k); 11) }
12) }
A. 第3行
B. 第5行
C. 第6行
D. 第10行
正确答案:D
4. 如果类中的成员变量可以被同一包访问,则使用如下哪个约束符( )。
A. private
B. public
C. protected
D. no modifier
正确答案:D
5. 下列哪个类声明是正确的( )
A. abstract final class Hl{…}
B. abstract private move(){…}
C. protected private number
D. public abstract class Car{…}
正确答案:D
6. 下列构造方法的调用方式中,正确的是( )。
A. 按照一般方法调用
B. 由用户直接调用
C. 只能通过new 自动调用
D. 被系统调用
正确答案:C
7. 以下有关构造方法的说法,正确的是( )
A. 一个类的构造方法可以有多个
B. 构造方法在类定义时被调用
C. 构造方法只能由对象中的其它方法调用
D. 构造方法可以和类同名,也可以和类名不同
正确答案:A
8. 设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )
A. 3
B. 3.5
C. 4
D. 5
正确答案:A
9. 下面的表达式哪个是正确的( )
A. String s="你好";int i=3; s+=i;
B. String s="你好";int i=3; if(i==s){ s+=i};
C. String s="你好";int i=3; s=i+s;
D. String s="你好";int i=3; s=i+;
正确答案:A
10. 下列正确的句子是( )。
A. float 3.14
B. byte i=225
C. k=33L
D. int p[][];
正确答案:D
11. 设i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( )
A. i = i + 2
B. a[0] = 7;
C. i++ - --j;
D. a(0) = 66;
正确答案:B
12. 在Java 中,用package 语句说明一个包时,该包的层次结构必须是( )
A. 与文件的结构相同
B. 与文件目录的层次相同
C. 与文件类型相同
D. 与文件大小相同
正确答案:B
13. 在对String类进行查找比较操作时,字符串的长度( )。
A. 不变
B. 变长
C. 变短
D. 不一定
正确答案:A
14. 下列程序段执行后的结果是( )。
String s=new String("abcdefg"); for(int i=0;i<s.length();i+=2){ System.out.print(s.charAt(i)); }
A. aceg
B. ACEG
C. abcdefg
D. abcd
正确答案:A
15. 设有定义float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是( )
A. x > y || x > z
B. x != y
C. z > ( y + x
D. x < y & ! ( x < z )
正确答案:B
2. 多选题
16. 定义变量如下: char c=‘w‘; int i=8; long L=15; float f=8.9f; 以下赋值语句正确的是( )
A. i=c+i;
B. c=c+i;
C. L=f+L;
D. f=i+L+f;
正确答案:AD
17. 数组与向量的区别是( )。
A. 数组的长度固定
B. 数组元素的数据类型相同,可以是普通数据类型
C. 向量长度可变
D. 类型可不同,只能是对象的引用
正确答案:ABCD
18. 如下哪些是Java中有效的关键字( )
A. Const
B. NULL
C. false
D. this
E. native
正确答案:ACDE
19. 说明下列创建数组的方法那些是正确的( )。
A. int twoDim[][] = new int[4][];
B. int twoDim[][] = new int[][4];
C. int twoDim[][] = new int[4][5];
D. char a[] = {‘A’, ‘B’};
正确答案:ACD
20. 已知如下定义:String s = "story"; 下面哪个表达式是合法的( )
A. s += "books"
B. char c = s[1]
C. int len = s.length
D. String t = s.toLowerCase()
正确答案:AD
3. 判断题
21. 抽象类里一定要包含抽象方法,但含抽象方法的类未必是抽象类( )。
A. 错误
B. 正确
正确答案:A
22. 当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。
( )
A. 错误
B. 正确
正确答案:B
23. 即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参函数,函数体为空( )。
A. 错误
B. 正确
正确答案:B
24. Java的类不允许多重继承,但接口支持多重继承( )。
A. 错误
B. 正确
正确答案:B
25. Java的字符类型采用的是Unicode编码,但所占字节由具体软硬件环境决定( )
A. 错误
B. 正确
正确答案:A。