zoukankan      html  css  js  c++  java
  • 第三周作业

    本周请大家完成上周挑战作业的第一部分:给定一个整数数组(包含正负数),找到一个具有最大和的子数组,返回其最大的子数组的和。
    例如:[1, -2, 3, 10, -4, 7, 2, -5]的最大子数组为[3, 10, -4, 7, 2]

    输入:

    请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。

    输出

    在不删除原有文件内容的情况下,将最大子数组以及子数组的和写入文件。

     实验代码

     #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    int main()
     {
       FILE *fp;
       int i,j,n=8,b,c,max,sum;
       int a[8];
       if((fp=fopen("F:\C\liujin.txt","w+"))==NULL)
       {
        printf("File open error! ");
        exit(0);
       }
       for(i=0;i<8;i++)
           {
        scanf("%d",&a[i]);
       }

           for(i=0;i<n;i++)
          {
          sum=0;
          for(j=i;j<n;j++)
          {
            sum+=a[j];
            if(max<sum)
                {
            max=sum;
        }
       }
      for(i=0;i<n;i++)
      {
        sum=0;
        for(j=i;j<n;j++)
        {
            sum+=a[j];
            if(sum==max)
            {
                b=i;
                c=j;
                break;
            }
        }
       } 
       for(i=b;i<=c;i++)
       {
        fprintf(fp,"%d ",a[i]);
        printf("%d ",a[i]);
       }
      fprintf(fp," %d",max);
      printf(" %d",max);
      if(fclose(fp))
      {
        printf("Can not close the file! ");
        exit(0);
       } 
       return 0;
           }
       }
    设计思路
      

    3,遇到的问题及解决办法

    在将数据写入文件时,尝试将数组整体输入失败如:fprintf(FP,"%d,",Array[e]);、、、fputs(Array,FP);

    4,运行结果截图

     
  • 相关阅读:
    mysql性能优化
    jdbc connectoin timeout
    java thread dump
    sso实现原理
    api的防重放机制
    java各版本新特性总结
    sql区分大小写的查询
    按分数排名
    MySql常用语句
    mysql之explain用法
  • 原文地址:https://www.cnblogs.com/liu99/p/10540880.html
Copyright © 2011-2022 走看看