首页 > 全部 > 二级C++ > 国家二级C++机试(操作题)模拟试卷444

国家二级C++机试(操作题)模拟试卷444

本单篇文档共4463字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 章节练习 6467人下载
价格: 1.00 原价:¥7.00
收藏

国家二级C++机试(操作题)模拟试卷444

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:

150

200

注意:错误的语句在//*****error******的下面,修改该语句即可。

提示:定义Number1为一个整型数据位长的变量。

#include

//*****error******

struct

{

//*****error******

int Number1:1;

int Number2;

}MyStruct;

void main()

{

MyStruct mstr;

mstr.Number1=150;

mstr.Number2=15;

//*****error******

int *ptr=&mstr.Number1;

cout<<*ptr<<end1;

*ptr=200;

cout<<*ptr<<endl;

}

(1)typedef struct

(2)int Number1:32; 或int Number1;

(3)int* ptr=(int*)&mstr;

解析:(1)第1标识下是定义结构体,结构体定义的一般形式为:

struct

{

};

程序当中定义结构体名放在后面,MyStruct为结构体变量类型,相当于typedef为已有的类型定义一个新的类型,第1个标识下应改为“typedef struct”。

(2)第2标识下是定义Number1为一个整型数据 变量,整型数据位数为32(4字节),因此第2个标识下应改成“int Number1:32;”或“int Number1;”。

(3)ptr为整型数据指针,mstr为MyStruct类型结构变量,两者类型不一致应该做强制类型转换,第3个标识下应改成“int*ptr=(int*)&mstr;”,表示将mstr的地址给ptr,ptr指向MyStruct的第一个域Number1,Number1也是整形,类型一致,故可通过ptr指针来改变Number1的值。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数IsPalindromes(cha*string)实现的功能是判定给定的字符串是否构成回文字符串,如果是则返回1,否则返回0。

如:1234554321或者1234321都认为是回文字符串。

如果串为空或一个字母时,均认为是回文字符串。

注意:不能修改程序的其他部分,只能补充

IsPalindromes()函数。

#include

#define MAXLEN 1024

bool IsPalindromes(char*string)

{

}

void main()

{

char Str[MAXLEN];

cout<<\\

int len=0;

for(;string[len]!=NULL;len++)

//获取字符串的长度

len–; //下标从0开始到len-1

for(int i=0;i<len;i++,len–)

//第一个和最后一个比较,第二个和倒数第二个比较

{

if( string[i] != string

[len])//不等说明不同,返回0

return 0;

}

return 1;

解析:(1)由于字符串的长度是未知的,先利用循环求出字符串的长度,循环变量从0开始,直到数组的结束,string[len]=NUL为循环结束条件,如此便得到了数组的长度len。

(2)知道长度后就可以判断对称位置的元素是否相同,比如第一个元素和最后一个元素,第二个元素和倒数第二个元素,如此比较下去直到到了最中间的元素为止。

(3)可以利用循环来比较是否对称,设置另一个循环变量i,i从0开始表示从数组的头开始读数,len从数组的尾部开始读数,如果string[i]!=string[len],则跳出循环返回0,如果循环结束还没发现不同则返回1。

综合应用题

3.使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示人基本信息的类CHumanlnfo,但类CHumanlnfo的定义并不完整。请按要求完成下列操作,将类CHumanlnfo的定义补充完成:

(1)定义私有数据成员bloodType用于表示血型,血型为char型的数据。请在注释“//********1********”之后添加适当的语句。

(2)完成构造函数的定义,要求具有缺省值,缺省值为身高175,体重70,血型A。请在注释“//********2********”之后添加适当的语句。

(3)完成类外CHumanInfo成员函数Setlnfo的定义。请在注释“//********3********”之后添加适当的语句。

(4)在主函数中调用成员函数SetInfo,把对象d2的三个私有数据成员分别设定为身高170,体重64,血型为B。请在注释“//********4********”之后添加适当的语句。

注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。

#include

class CHumanInfo

{

private:

int height;

int weight;

//********1********

public:

//********2********

:height(ht),weight(wt),bloodType(bt){};

CHumanInfo(CHumanInfo &h1):height(h1.height),

weight(h1.weight),bloodType(h1.bloodType){};

int GetHeight()

{

return height;

}

int GetWeight()

{

return weight;

}

int GetBloodType()

{

return bloodType;

}

void SetInfo(int ht,int wt,char bt);

void Display();

};

//***

本文档预览:3600字符,共4463字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C++机试(操作题)模拟试卷444

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号