• 第14,15周作业


    要求二

    题目7-1数组中偶数的和

    #include <stdio.h>
    int main()
    {
        int a[10];
        int i,s=0;
        for(i=0;i<10;i++)
        {
            scanf("%d",&a[i]);
            if (a[i]%2==0)
            {
               s=a[i]+s;
            }    
        }
        printf("s=%d",s);
        return 0;
     } 

    2.设计思路

    (1)题目算法

    第一步:定义数组a[10],循环变量i,总和s。

    第二步:定义变量初始值s=0;

    第三步:找到循环体s=s+a[i],i++;

    第四步:输出s。

    (2)流程图

    3.本题调试过程及解决方法

    错误截图

    遇到问题:打不出正确结果。

    解决方法:自己仔细琢么反复实验,最后败在了没有给s定义初始值上。

    题目7-3将数组中的数逆序存放

    1.实验代码

    #include<stdio.h>
    int main()
    {
        int n;
        scanf("%d",&n);
        int i,a[n];
        for(i=0;i<n;i++)
            scanf("%d",&a[i]);
        for(i=n-1;i>0;i--)
            printf("%d ",a[i]);
        printf("%d",a[0]);
        return 0;
    }

    2.设计思路

    (1)题目算法

    第一步:定义变量n,i,a[n];

    第二步:输入循环结构(i=0,i<n;i++),并输入a[i];

    第三步:输入另一个循环使程序逆向运行。(i=n-1;i<n;i--)

    第四步:输出a[i]以及a[0];

    (2)流程图

    3遇到的问题及解决方法

    错误截图

     

    遇到的问题:没有完全理解提意。

    解决方法:仔细阅读题目,询问了同学(他和我说直接定义一个i,后面的循环体需要换成(i=n-1,i<n;i--)),最后成功编译出正确结果.

      7-5冒泡法排序

    1实验代码

    #include <stdio.h>  
    int main()  
    {             
      int N,K,i,j,x,t;      

    scanf("%d %d",&N,&K);
    int a[N];                     
      for(i=0;i<N;i++) 
      {              
        scanf("%d",&a[i]);
      }                                            
       for(i=0;i<N;i++)
       {          
          for(j=0;j<N-i-1;j++)
          {                                      
            if(a[j+1] <a[j])
            {                      
              t=a[j];                      
              a[j]=a[j+1];                      
              a[j+1]=t;
            }  
          }            
        x++;          
        if(x==K)              
        break; 
        }               
        for(i=0;i<N;i++)
        {         
            if(i<N-1)              
            {
            printf("%d ",a[i]);  
            }       
            else              
            {
              printf("%d",a[i]);
            }
        }    
    return 0;
    }

     2 设计思路

    (1)题目算法

    第一步:定义循环变量i,j以及循环次数k,N,常变量t,数组a[N];

    第二步:在(i=0;i<N;i++)的条件下输入a[i];

    第三步:比较a[0]与a[1];如果a[0]>a[1]则交换,否则不交换,以此类推直到把最大值放到最后;

    第四步:在依次进行第二趟排序最大值放到第n-1个位置,共进行n-1趟排序。

    第五步:输出a[i];

    (2)流程图

    3遇到的问题及解决方法

    错误截图

    遇到的问题:不知道如何才能出现第几次排序出现的结果

    解决方法:增加一个变量x,在循环之后输入,如果x=k,则直接跳出;

    7-3 求矩阵的局部极大值

    1.实验代码

    #include <stdio.h>
    int main()
    {
        int M;
        int N;
        scanf("%d %d",&M,&N);
        int a[M][N];
        int i,j,m,n,flag=0;
        for(i=0;i<M;i++)
        {
            for(j=0;j<N;j++)
            {
                scanf("%d",&a[i][j]);
             } 
        }
        for(i=1;i<M-1;i++)
        {
            for(j=1;j<N-1;j++)
            {
                if(a[i][j]>a[i-1][j]&&a[i][j]>a[i][j-1]&&a[i][j]>a[i][j+1]&&a[i][j]>a[i+1][j])
                {
                    m=i+1;
                    n=j+1;
                    printf("%d %d %d
    ",a[i][j],m,n);
                    flag = 1;
                }
            }
        }
        if(flag == 0)
        {
            printf("None %d %d",M,N);
        }
        return 0;
     } 

    2.设计思路

    (1)题目算法

    第一步:定义变量i,j,m,n,,M,N,t,flag=0;

    第二步:输入M,N,输入a[i][j];

    第三步:把满足的条件放在循环中(中间数大于四周上下左右的数);

    第四步:如果flag=0则输出“None M N”否则输出“a[i][j],m,n."

    (2)流程图

    3.遇到问题及解决方法

    错误截图

     遇到的问题

    输出结果串码打出

    解决问题方法

    把scanf()放到a[M][[N]前面就可以了。

    要求三

    git地址

    项目截图

     

    要求四

    个人总结

    (1)本周你学习了哪些内容?

    一维数组

    二维数组

    收获了什么?

    懂得如何定义数组初始化。

    (2)那些是难点?

    冒泡排序和选择排序就是难点,很难理解,最后只能靠背。

    哪些知识点还不明白?

    不懂冒泡排序第二层循环的意义;

    选择排序也看不太明白

    这两个排序的流程图不太会画。

    要求五 

    1.我评论的博客

    王佳乐

    姚爽

    孙娜

    2.表格及折线图

    折线图

    表格

  • 相关阅读:
    VisualStudioAddIn2017.vsix的下载安装和使用
    数独计算程序的比较
    Ajax
    VSTO作品:OutlookMailViewer的下载和使用
    VB6实现Excel多工作簿数据合并
    组件中 data 为什么是一个函数?
    谈谈你对 keep-alive 的了解?
    父组件可以监听到子组件的生命周期吗?
    Vue 的父组件和子组件生命周期钩子函数执行顺序?
    谈谈你对 Vue 生命周期的理解?
  • 原文地址:https://www.cnblogs.com/hezongyan/p/7877705.html
Copyright © 2020-2023  润新知