8.cpp

来自「最优分解试验」· C++ 代码 · 共 87 行

CPP
87
字号
#include <stdio.h>
#include <stdlib.h>

int MAX(int n)
{
	int sum=0;

    int i,d;

    for(i=2;;++i)

    {

        sum+=i;

        d=sum-n;

        if(d>=0) break;

    }

	int result=1; 

    if(d==1) 

    {

        for(int j=3;j<i;++j)
			
			result*=j;
		++i;

        result*=i;

    }

    else 

    {

        for(int j=2;j<=i;++j)

        {

            if(j==d) continue;

            result*=j;

        }

    }
return result;
}                              //计算最大乘积


void main()

{

    int n,Max;

	FILE *fp,*fw;

    if((fp=fopen("input.txt","r"))==NULL)
	{ 	
		printf("Cann't open this file!\n");	
		exit(0);
	}

   fscanf(fp,"%d",&n);
   printf("input.txt文件中的数据为:");
   printf("%d\n",n);
   printf("\n");

   Max=MAX(n);
   printf("最大乘积=");
   printf("%d\n",Max);

   fw=fopen("output.txt","w");   //按要求输出到文件数据
    fprintf(fw,"%d\n",Max);
	printf("\n");

    printf("实验结果已写入到文件output.txt中,请查收!");
	printf("\n");

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?