首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj3,其中使用友元函数访问类的私有数据成员,求出两个数据成员的大于1的最小公因子。请编写友员函数FnFun,使其输出结果为: Common denominator is2 要求:补充编制的内容写在“//********
请打开考生文件夹下的解决方案文件proj3,其中使用友元函数访问类的私有数据成员,求出两个数据成员的大于1的最小公因子。请编写友员函数FnFun,使其输出结果为: Common denominator is2 要求:补充编制的内容写在“//********
admin
2018-07-06
77
问题
请打开考生文件夹下的解决方案文件proj3,其中使用友元函数访问类的私有数据成员,求出两个数据成员的大于1的最小公因子。请编写友员函数FnFun,使其输出结果为:
Common denominator is2
要求:补充编制的内容写在“//********333********”与“//********666********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//proj3.h
class FriFunClass
{
int a,b;
public:
FriFunClass(int i,int j){a=i;b=j;}
friend int FriFun(FriFunClass x);//友元函数
},
void writeToFile(const char*);
//proj3.cpp
#include<iostream>
using namespace std;
#include"prj3.h"
int FriFun(FriFunClass x)
{
//********333********
//由于函数FriFun( )是类FriFunClass的友元函数,所以它可以直接访问a和b
//********666********
}
int main( )
{
FriFunClass n(10,20);
if(FriFun(n))
cout<<"Common denominatoris"<<FriFun(n)<<"\n";
else cout<<"No common denominator.\n";
writeToFile(" ");
return0;
}
选项
答案
int min=x.a<x.b?x.a:x.b;//此处为取出x.a与x.b中的最小值 for(int i=2;i<=min;i++)//从i到min遍历数组 if(x.a%i==0&&x.b%i==0) //如i能同时整除x.a来的x.b,则仅回i return i; return-1;
解析
主要考查考生对友元函数的掌握情况,友元函数可以访问类的私有数据成员,题目要求函数求出两个数据成员的大于1的最小公因子,从2开始往上算,因此要同时可以被两个私有成员整除,这里用取余符号完成,取余为0即为整除。
转载请注明原文地址:https://kaotiyun.com/show/AAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是()。#ificlude<iostream>usingnamespacestd;intmain(){cout.fill(’*’);cout.width(5);cout
数据结构分为逻辑结构和存储结构,循环队列属于______结构。
按照“先进后出”原则组织数据的数据结构是()。
设计程序时,应采纳的原则之一是()。
用链表表示线性表的优点是()。
下列选项中不属于结构化程序设计方法的是()。
以下函数模板max()的功能是返回数组a中最大元素的值。请将横线处缺失部分补充完整。template<typenameT>Tmax(Ta[],intn){Tm=a[0];for(in
对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为()。
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列叙述中错误的是()。
下列字符串中可以用做C++语言标识符的是
随机试题
在货物买卖中,收取佣金的通常是()。
不管过去还是现在以及将来,爱国主义都会具有阶级性。()
左心腔超声造影,用直径小于红细胞的造影剂,下述哪一项是错误的
某行业的龙头企业A公司处于我国华东地区,为了制定自身的发展战略,采用五因素模型对行业的竞争结构进行分析。部分因素分析如下:(1)本行业的新进入者来自国内、国外两个方面。先进技术和研发投资是进入本行业的主要门槛;此行业在政策上受到一定限制;对于国外进入者,
国务院的预算管理职权有()。
下列说法不正确的是()。
45岁的张某在为自己投保某人身保险时,申报的年龄为40岁,保险合同上明确规定年龄需为40岁以下方可承保此保险。根据我国商业保险法律制度的规定,下列选项的表述中,不正确的有()。
—Iwanttobuyapairofshoes.Canyougivemesomeadvice?—Thestoreatthecornerhasanexcellent______forfairdealing.
Somepioneeringworkthatbeganasanattempttodiscoverwaystoincreaseproductionefficiencyledtothefoundingofthehuma
Ahistoricchangeistakingplaceinhighereducation.Professorsarebeingheldresponsibleasneverbeforeforhowwelltheys
最新回复
(
0
)