[计算机类试卷]国家二级C++机试(操作题)模拟试卷16及答案与解析.doc

上传人:towelfact221 文档编号:497232 上传时间:2018-11-28 格式:DOC 页数:6 大小:30.50KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(操作题)模拟试卷16及答案与解析.doc_第1页
第1页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷16及答案与解析.doc_第2页
第2页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷16及答案与解析.doc_第3页
第3页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷16及答案与解析.doc_第4页
第4页 / 共6页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷16及答案与解析.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、国家二级 C+机试(操作题)模拟试卷 16及答案与解析 一、基本操作题 1 使用 VC+6 0打开考生文件夹下的源程序文件 1 cpp,该程序运行时有错,请改正程序中的错误,使程序输出的结果为 150 200 注意:错误的语句在 *error*的下面,修改该语句即可。 提示:定义 Numl为一个整型数据位长的变量。 试题程序: #include *error* struct *error* int Num1: 1; int Num2: MyStruct; void main() MyStruct mstr; mstr Num1=150: mstr Num2=15; *error* int*pt

2、r=&mstr Num1; cout #include(cmath) int fun(int n) int main() int i=1 357; cout #include(cmath) using namespace std; class TC1 * * * * * * * * 1 * * * * * * * * public: * * * * * * * * 2 * * * * * * * * X=a; Y=b: * * * * * * * * 3 * * * * * * * * X=a: Y=0; void print() cout ; 程序当中定义结构体名放在后面, MyStruct

3、为结构体变量类型,相当于 typedef为已有的类型定义一个新的类型,第 1处应改为 “typedef struct”。第 2处是定义Num1为一个整型数据变量,整型数据位数为 32(4字节 ),因此第 2处应改成“intNum1: 32; ”或 “int Num1; ”。 ptr为整型数据指针, mstr为 MyStruct类型结构变量,两者类型不一致应该做强制类型转换,第 3处应改成“int*ptr=(int*)&mstr; ”,表示将 mstr的地址给 ptr, ptr指向 MyStruct的第一个域 Numl, Numl也是整形,类型一致,故可通过 ptr指针来改变 Num1的值。 二

4、、简单应用题 2 【正确答案】 int i, a4, t; a0=n 10; 取整型 n的第 1位数字 a1=n 100 10; 取整型 n的第 2位数字 a2=n 1000 100; 取整型 n的第 3位数字 a3=n 1000; 取整型 n的第 4位数字 for(i=0; i=3; i+) 每位数字加 3,取余 ai+=3; ai =9; t=a0; 根据加密算法交换 a0=a3; a3=t; t=a1; a1=a2; a2=t; return a3*1000+a2*100-1-a1*10+a0; 重组,返回加密数字 【试题解析】 本题首先取得要加密整数的每一位数字,并存入数组。根据加密算

5、法,利用循环实现每位数字加 3,再除以 9取余。根据加密算法进行数字交换,最后重组,返回密码。 三、综合应用题 3 【正确答案】 (1)应添加 “friend class TC2; ”。 (2)应添加 “TC1(float a, float b)”。 (3)应添加 “TC1(float a)”。 (4)应添加 “result=sqrt(p X-q X)*(p X-q X)+(P Y-q Y)*(p Y-q Y); ”。 【试题解析】 本题中第 1处要求 “声明 TC2类为 TC1类的友元类 ”。 C+4-中声明友元类的一般形式为 “friend类名; ”,所以这里补全 “friend clas

6、s TC2; ”。 第 2处要求 “完成类的构造函数,分别对成员变量赋值 ”。程序中 TC1类的构造函数缺少定义,构造函数首部的一般格式为构造函数名 (类型 1形参 1,类型 2形参 2, ) ,所以在第 2处补全 “TC1(float a, float b)”。 第 3处要求 “完成类的构造函数,分别对成员变量赋值 ”。同理,第 3个标识下补全 “TC1(float a)”。 第 4处要求 “完成计算平面上两点之间的距离函数 JuL”。题目中已经给出了计算方法, X坐标之差的平方与 Y坐标之差的平方之和的开方。利用 C+中的开方函数 sqrt补全函数中的两点之间的距离。即 “result=sqrt(p X-q X)*(p X-q X)+(p Y-q Y)*(p Y-q Y); ”。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1