使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是判定x的所有的约数,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。 例如:x=10的约数为1,2,5,10。

admin2018-10-23  26

问题 使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是判定x的所有的约数,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。
    例如:x=10的约数为1,2,5,10。
    注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
1  #include<iostream>
2  #include<fstream>
3  #include<cmath>
4  using namespace std;
5  void WriteFile(int c)
6  {
7   ofstream out1;
8  out1.open(’’modi2.txt’’,ios_base::binary|ios_base::app);
9   out1<<c<<’  ’;
10    out1.close();
11  }
12  void fun(int x)
13  {
14
15  }
15  void ClearFile()
17  {
18  ofstream out1;
19    out1.open(’’modi2.txt’’);
20  out1.close();
21  }
22  int main()
23  {
24    ClearFile();
25    fun(10);
26    return 0;
27  }

选项

答案1 for(int i=1;i<=x;i++) 2 { 3 if(x%i==0) //如果x被i整除,那么i为x的约数 4 { 5 WriteFile(i); 6 //将约数i存入文件 7 } 8 }

解析 (1)本题中函数的功能是求出约数。x的约数就是能整除其的所有整数。可以从1开始到x,计算取余。如果整除该数为x的约数。
    (2)从已给部分源程序的main主函数开始入手,核心函数void fun(int x)中的x参数为要计算约数的整数。
    (3)由1到X,循环判断其中是否有x的约数。
    (4)如果x被i整除,那么i为x的约数。
    (5)最后调用WriteFile函数,将约数i存入文件。
转载请注明原文地址:https://jikaoti.com/ti/qPt0FFFM
0

最新回复(0)