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

    判断上三角矩阵(15 分) 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。
    代码:

    include<stdio.h>

    int main()
    {
    int T;
    scanf("%d ",&T);
    int i,j,t,flag;
    int a[10][10],Tab[100];
    for(t=1;t<=T;t++){
    flag=1;
    scanf("%d ",&Tab[t]);
    for(i=0;i<Tab[t];i++)
    {
    for(j=0;j<Tab[t];j++)
    {
    scanf("%d",&a[i][j]);
    if(i>j)
    {
    if(a[i][j]!=0)
    {
    flag=0;
    }
    }
    }
    }
    if(flag)
    printf("YES ");
    else
    printf("NO ");
    }
    return 0;
    }
    问题:
    开始也搞不懂为什么数组a后面要两个【10】,还有scanf里面数组a是【i】与【j】一起取地址。
    后来听说是跟直角坐标轴一样,数组里面取值取两个,每个都可以从十个中取一个,所以要两个数组。
    设计思路:
    结果:

    基础作业
    :给定一个整数数组(包含正负数),找到一个具有最大和的子数组,返回其最大的子数组的和。
    例如:[1, -2, 3, 10, -4, 7, 2, -5]的最大子数组为[3, 10, -4, 7, 2]
    输入:
    请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。
    输出
    在不删除原有文件内容的情况下,将最大子数组以及子数组的和写入文件。
    代码:

    include<stdio.h>

    include<stdlib.h>

    int main(void)
    {
    FILE*fp;
    if((fp=fopen("E:新建文件夹wuao","a+"))NULL)
    {
    printf("File open error! ");
    exit (0);
    }
    int sum=0;
    int maxsum=0;
    int i,m=1;
    int *a=new int[m];
    cout <<"请输入数组个数 ";
    cin>>m;
    cout<<"输入一个整数数组,包含正负数 ";
    for (i=0;i<m;i++)
    {
    cin>>a[i];
    }
    for(i=0;i<m;i++)
    {
    sum+=a[i];
    if(sim<0)
    {
    sum=0;
    }
    if(sum>maxsum)
    {
    maxsum=sum;
    }
    }
    if(maxsum
    0)
    {
    maxsum=a[0];
    for(i=1;i<m;i++)
    {
    if(a[i]>maxsum)
    {
    maxsum=a[i];
    }
    }
    }
    cout<<"最大和="<<maxsum;
    }
    设计思路:

    问题:一开始不知道做,网上搜了搜,这种方法第一次见,但是也还是能看懂的,cout《那个差不多跟printf差不多,所以用了这种方式,相比博客上面同学写的,这个我能看懂大部分。

  • 相关阅读:
    linux下配置php的一些信息
    前端学习
    Verilog笔记.3.有限状态机
    Verilog笔记.2.数字逻辑电路
    Verilog笔记.1.基本语法
    python3爬虫.4.下载煎蛋网妹子图
    python3爬虫.3.下载网页图片
    python3爬虫.2.伪装浏览器
    python3爬虫.1.简单的网页爬虫
    python3学习笔记.3.条件控制与循环
  • 原文地址:https://www.cnblogs.com/xzsx/p/10539636.html
Copyright © 2011-2022 走看看