作者smalldulan (妈妈咪阿)
站内Examination
标题[课业] 一些程式语言的观念问题
时间Tue Dec 25 22:12:43 2012
小弟最近在准备资讯类的国考,因为不算本科系出身,所以观念很薄弱,
最近有些程式语言的观念问题搞不太清楚,想请问版上各位大大,问题如下:
Q1: 有一浮点数float(如47.75)依照IEEE754的格式储存,转成正规化
1.0111111 * 2^5,那他存入栏位应该是下面哪个呢?
正负 指数 小数
(A) 0 10000100 00000000000000010111111
(B) 0 10000100 00000000000000000111111
(C) 0 10000100 01111110000000000000000
(D) 0 10000100 10111111000000000000000
老师上课的时候讲的是(A),可是我GOOGLE有人答案跟老师的不太一样
他答案是(C)
他小数栏位只存小数点以下部份,而且是从小数栏位最前面开始存
而老师上课是讲连小数点前的1也存,而且从小数栏位最後面开始存
参考:1.
http://jmiiv.blogspot.tw/2008/08/ieee-754.html
2.
http://babbage.cs.qc.cuny.edu/IEEE-754/index.xhtml
那到底哪个答案才是正确的呢?要是考试要我写出来我该用哪种表示呢?
Q2: 超载(overload)是在同一层中名称相同的函式,但参数的型态或数量不同,
呼叫时以实际参数来决定呼叫的参数。
例如:
class a{
..........................
public:
void foo(){.....};
void foo(int a){.....};
void foo(int a,int b){.....};
void foo(double a){.....};
..........................
..........................
};
以上4个函式属於overload
但是如果同一层中函式名称相同,回传型态不同,
参数的型态或数量不同,这样算是overload吗?
例如:
class a{
..........................
..........................
public:
void foo(){.....};
int foo(int a){.....};
double foo(double a){.....};
..........................
..........................
};
这样以上三个函式算是overload吗?
Q3: 要是有类别b继承类别a,在b类别中有和a类别名称相同,
参数的型态和数量不同,那他和类别a中的函式算overload吗?
例如:
class a{
..........................
public:
void foo(){.....};
void foo(int a){.....};
void foo(int a,int b){.....};
void foo(double a){.....};
..........................
..........................
};
class b:public a{
..........................
..........................
public:
void foo(double a,double b){.......};
};
这样类别b中的函式算overload吗?
希望版上各位高手大大能帮小弟解除脑中的困惑,厘清一下观念,
谢谢各位!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.242.191.82
1F:→ bornagain06:放进去的位数不够 尾数补零阿 所以C阿 12/25 23:39