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,运行结果截图

     
  • 相关阅读:
    spring cloud alibaba +seata 实战中Error processing condition on io.seata.spring.boot.autoconfigure.问题总结
    Docker部署Elasticsearch及安装后自动关闭的问题
    SpringBoot10:Web开发静态资源处理
    SpringBoot09:整合MyBatis
    SpringBoot08:整合Druid
    SpringBoot07:整合JDBC
    SpringBoot06:自定义starter
    SpringBoot05:自动配置原理
    SpringBoot04:JSR303数据校验及多环境切换
    SpringBoot03:yaml配置注入
  • 原文地址:https://www.cnblogs.com/liu99/p/10540880.html
Copyright © 2011-2022 走看看