2016年計算機二級C語言上機考試試題及答案
一、程序改錯題
使用VC++6.0打開考生文件夾下的源程序文件,該程序運行時有錯,請改正程序中的錯誤,使程序輸出的結果為
150
200
注意:錯誤的語句在//******error******的下面,修改該語句即可。
提示:定義Numl為一個整型數據位長的變量。
試題程序:
#include
//******error******
struct
{
//******error******
intNuml:1;
intNum2;
}
MyStruct;
voidmain()
{
MyStructmstr;
1=150;
2=15;
//******error******
int*ptr=&;
cout<<*ptr< *ptr=200;
cout<<*ptr< } (1)“typedefstruct”。
(2)“intNuml:32;”或“intNuml;”。
(3)“int*ptr=(int*)&mstr;”。
【解析】第1處是定義結構體,結構體定義的'一般形式為
struct(結構體名>
{
<成員列表>
}
(變量名列表);
程序當中定義結構體名放在後面,MyStruct為結構體變量類型,相當於typedef為已有的類型定義一個新的類型,第1處應改為“typedefstruct”。第2處是定義Numl為一個整型數據變量,整型數據位數為32(4字節),因此第2處應改成“intNuml:32;”或“intNuml;”。ptr為整型數據指針,mstr為MyStruct類型結構變量,兩者類型不一致應該做強制類型轉換,第3處應改成“int*ptr=(int*)&mstr;”,表示將mstr的地址給ptr,ptr指向MyStruct的第一個域Numl,Numl也是整型,類型一致,故可通過ptr指針來改變Numl的值。
二、綜合應用題
使用VC++6.0打開考生文件夾下的源程序文件,其中定義了用於表示日期的類Date,但類Date的定義並不完整,按要求完成下列操作,將類的定義補充完整。
(1)定義私有成員變量year、month、day,分別表示年、月、日,類型為int。請在註釋1後添加適當的語句。
(2)完成構造函數,分別給year、month、day賦值,請在註釋2後添加適當的語句。
(3)完成重載符號“+=”的定義,請在註釋3後添加適當的語句。
(4)完成函數print打印函數,如2005年1月5日到屏幕和文件格式相同,請在註釋4後添加適當的語句。
注意:增加代碼,或者修改代碼的位置已經用符號表示出來。請不要修改其他的程序代碼。
試題程序:
#include
#include
#include
#include
usingnamespacestd;
voidWriteFile(intc)
{
ofstreamout1;
("",ios_base::app);out1< e();
}
voidWriteFile(char*str)
{
ofstreamout1;
("",ios_base::app);out1< e();
}
voidClearFile()
{
ofstreamout1;
(""):
e();
}
classDate
{
public:
Date(inty,intm,intd)
{
//********1*********}
voidprint();
//********2********
{
month+=m:
inti=month/12;
intj=month%12;
if(j==0)
{
year+=(i-1):
month=12;
}
else
{
year+=i:
month=j;
}
return*this:
}
private:
//********3********
};
voidDate::print()
{
//********4********
WriteFile(year);
WriteFile("年");
WriteFile(month);
WriteFile("月");
WriteFile(day);
WriteFile("日");
}
intmain()
{
ClearFile();
DateNationa1_day(2004,10,5);
National_day+=3;
National_t();
return0;
} (1)應添加“year=y;month=m;day=d;”。
(2)應添加“Date&operator+=(intm)”。
(3)應添加“intyear,month,day;”。
(4)應添加“cout<
【解析】本題要求私有成員變量year、month、day為整形表示方法,所以註釋3應添加“intyear,month,day;”;註釋1要求分別給year、month、day賦值,根據上下文提意,所以應添加“year=y;month=m;day=d;”;註釋2是對“+=”運算符的重栽,Date&operator4+=(intm);第4處打印輸出年、月、日,C++語言中,輸出使用cout。
-
最新計算機二級考試《VFP》鞏固習題
俗話説:勤能補倔。以下是應屆畢業生小編提供給大家的計算機二級考試《VFP》鞏固習題,祝願大家一次通過計算機二級考試。1[簡答題](1)建立項目xm。(2)將數據庫產品添加到項目中。(3)將數據庫產品中的數據庫表零件從數據庫中移去(注意:不是刪除)。(4)將考生文件夾中...
-
2017年9月全國計算機等級二級公共基礎知識訓練試題
2017計算機二級考試將要到來,不放過每一個知識點,尤其對容易混淆的東西要下更大工夫搞清楚,基礎要牢固。下面是小編分享的2017年9月全國計算機等級二級公共基礎知識訓練試題,大家快來練習下!(1)在下列選項中,哪個不是一個算法一般應該具有的基本特徵______。(C)A.確...
-
計算機二級考試MySQL模擬試題
2016年計算機等級考試前兩天就已經結束了,下面是本站小編為大家搜索整理的關於計算機二級考試MySQL模擬試題,歡迎參考練習,希望對大家有所幫助!想了解更多相關信息請持續關注我們應屆畢業生考試網!練習題一單項選擇題1、SELECT*FROMcitylimit5,10描述正確的是()A....
-
2022年計算機二級《VB》命題試卷
在各個領域,只要有考核要求,就會有試卷,試卷是課程考核統計分析工作的重要組成部分,它包括試卷的信度、效度、區分度、難度四個方面。什麼樣的試卷才能有效幫助到我們呢?下面是小編整理的2022年計算機二級《VB》命題試卷,歡迎大家分享。計算機二級《VB》命題試卷1一...