11[填空題]在C++中,三種派生方式的說(shuō)明符號(hào)為( )、( )、( )不加說(shuō)明,則默認(rèn)的派生方式為( )。
參考解析:public 、private 、 protected、private
12[單選題]線性表常采用的兩種存儲(chǔ)結(jié)構(gòu)是( )。
A.順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)
B.散列方法和索引方式
C.鏈表存儲(chǔ)結(jié)構(gòu)和數(shù)組
D.線性存儲(chǔ)結(jié)構(gòu)和非線性存儲(chǔ)結(jié)構(gòu)
參考答案:A
參考解析:線性表的存儲(chǔ)通常要用兩種存儲(chǔ)結(jié)構(gòu):順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
13[單選題]下列程序段執(zhí)行后,j值是( )。
for(int i(0), j(0); i<10; i++)
if(i) j++;
A.0 B.9C.10 D.無(wú)限
參考答案:B
14[單選題]有以下程序,執(zhí)行后輸出結(jié)果是( )。
A.3,4,5 B.5,3,4 C.5,4,3 D.4,3,5
參考答案:D
參考解析:考生根據(jù)分析可以得知f函數(shù)的功能是交換兩個(gè)變量的值。表明看起來(lái),在main函數(shù)中,使用三次f函數(shù)完成三個(gè)變量的交換。真的如此么?只要考生注意到f函數(shù)采用值傳遞,而值傳遞的缺點(diǎn)就是不會(huì)改變形參的值,因此,上述操作根本無(wú)法改變?cè)瓉?lái)三個(gè)變量的值!故三個(gè)變量的值依然保持不變。
15[單選題] 已知類A有公用數(shù)據(jù)成員a,并重載了=運(yùn)算符,且有Aobj2;constA*ptr=newA;,則下列語(yǔ)句錯(cuò)誤的是( )。
A.ptr->a=100;B.ptr=&obj2;C.ptr++;D.obj2=*ptr;
參考答案:A
參考解析:本題考查const修飾符的作用。注意,const位置不同,其修飾的部分也是不同的。本題中const修飾的是ptr所指的對(duì)象本身,所以,ptr可以重新指向新的對(duì)象,而ptr->a則無(wú)法被更新。
16[單選題]下列函數(shù)的運(yùn)行結(jié)果是( )。
A.25B.30C.20D.15
參考答案:A
參考解析:
17[單選題] 對(duì)于循環(huán)隊(duì)列,下列敘述中正確的是( )。
A.隊(duì)頭指針是固定不變的
B.隊(duì)頭指針一定大于隊(duì)尾指針
C.隊(duì)頭指針一定小于隊(duì)尾指針
D.隊(duì)頭指針可以大于隊(duì)尾指針,也可以小于隊(duì)尾指針
參考答案:D
參考解析:所謂循環(huán)隊(duì)列,就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用。在循環(huán)隊(duì)列結(jié)構(gòu)中,當(dāng)存儲(chǔ)空間的最后一個(gè)位置已被使用而再要進(jìn)行入隊(duì)運(yùn)算時(shí),只要存儲(chǔ)空間的第一個(gè)位置空閑,可將元素加入到第一個(gè)位置,即將存儲(chǔ)空閑的第一個(gè)位置作為隊(duì)尾。
18[單選題]以下程序的輸出結(jié)果是( )。
A.1234B.123C.12D.1
參考答案:B
參考解析:本題考察的是循環(huán)次數(shù)的判定。有while后的邏輯表達(dá)式可知,整個(gè)循環(huán)體需要執(zhí)行3次,故可直接選定正確答案為B。
19[填空題]十進(jìn)制28和3.6的類型分別是_______。
參考解析:int和double
【解析】整型和雙精度型。注意除非定義了float變量。實(shí)型常量隱含為 double型。
20[簡(jiǎn)答題]請(qǐng)使用VC6或使用【答題】菜單打開考生文件夾prosS下的工程pr093,其中包含了類TaxCaleulator(“個(gè)稅計(jì)算器”)和主函數(shù)main的定義。創(chuàng)建“個(gè)稅計(jì)算器”需要接收稅率表信息和起征額信息。在main函數(shù)中,通過(guò)兩個(gè)數(shù)組創(chuàng)建了如下的稅率表:
利用這個(gè)稅率表創(chuàng)建“個(gè)稅計(jì)算器”時(shí),假定起征額為2 000元(即不超過(guò)2 000元的所得不征收個(gè)人所得稅)。請(qǐng)補(bǔ)充完成計(jì)算應(yīng)納個(gè)人所得稅額的成員函數(shù)getTaxPayable,其中的參數(shù)income為月收入。此程序的正確輸出結(jié)果應(yīng)為:
月收入為800元時(shí)應(yīng)繳納個(gè)人所得稅0元
月收入為l 800元時(shí)應(yīng)繳納個(gè)人所得稅0元月收入為2 800元時(shí)應(yīng)繳納個(gè)人所得稅 55元 月收入為3 800元時(shí)應(yīng)繳納個(gè)人所得稅l55元
月收入為4 800元時(shí)應(yīng)繳納個(gè)人所得稅295元月收入為5 800元時(shí)應(yīng)繳納個(gè)人所得稅455元
注意:只能在函數(shù)9etTaxPayable中的“//**********333**********”和“//**********666**********”之間
填人若干語(yǔ)句,不要改動(dòng)程序中的其他內(nèi)容。 //Tax Calculator.h #include #include
using flamespace std; class TaxCalculator{ public:
TaxCalculator(double the—limits[],double the_rates[],int the—length,double the_threshold) :lower_limits(new double[the_length]),rates(new double[the—length]),
list_len(the_length),threshold(the—threshold){ for(int i=0;i
lower_limits[i]=the_limits[i]; rates[i]=the_rates[i];
} f
—TaxCalculator(){delete[]lower_limits;delete[]rates;}
double getTaxPayable(double income)eonst;//返回指定月收入的應(yīng)納個(gè)人所得稅額 void showTaxPayable(double income)const;//顯示指定月收入的應(yīng)納個(gè)人所得稅額 private:
double$lower—limits;//適用收入段下限 double *rates; //適用稅率
int list—len;//稅率表項(xiàng)數(shù)
double threshold; //起征額 };
void writeToFile(consl char * path); //TaxCalcnlator.cpp
‘#include”TaxCalculator.h”
double TaxCalculator::getTaxPayable(double income)const{ double taxable=income—threshold;
//應(yīng)納稅工資額
double tax_payable=0.0; //應(yīng)納個(gè)人所得稅額
int i=list_len-1;
//從稅率表的最高適用段開始計(jì)算 while(i>=0){
//**********333**********
//**********666**********
--i; }
return tax_payable;
} void TaxCalculator::showTaxPayable(double income)const{
cout<<”月收入為”<
}
//main.cpp
#include”TaxCalculator.h” int main(){
double limits[]={0.0,500.0,2000.0,5000.0,20000.0,40000.0,60000.0,80000。0,100000.0}; double rates[]={0.05,0.1,0.15,0.2,0.25,0.3,O.35,0.4,0.45};
TaxCaleulator calc(1imits,rates,9,2000.0); calc.showTaxPayable(800.0);
calc.showTaLPayable(1800.0); cale.showTaxPayable(2800.0); calc.showTaxPayable(3800.0); calc.showTaxPayable(4800.0); eaie.showTaxPayable(5800.0); writeToFile(””);
return 0;
}
參考解析:
if f income<=2000)//如果收入小于2000
return tax—payable;
//直接tex—payable(初始代為零)
i“taxable>lower_limits[i]){
//如果taxable(收入超出起征額的部分)大于lower—limits
[i]階段最低限額
tax_payable+=(taxable-lower-limits[i])*
rates[i]:
//把起過(guò)階段最低限額的部分乘以該階段的稅率后,加到tax_payable(個(gè)人所得稅)
taxable=lower_limits[i];
//把fower_limits[i]賦值于taxable
}
相關(guān)推薦:
各地2016年全國(guó)計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間匯總
各地2016年全國(guó)計(jì)算機(jī)等級(jí)考試費(fèi)用匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |