第二次作业

---恢复内容开始---

一、作业要求博客链接

【https://edu.cnblogs.com/campus/hljkj/Cprogramming_2018Autumn_CST2018_4/homework/2502】

二、PTA作业

1.函数6-3数字金字塔

1)实验代码

#include <stdio.h>
void pyramid( int n );
int main()
{    
    int n;
    scanf("%d", &n);
    pyramid(n);
    return 0;
}
void pyramid (int n)                   
{        
    int i,j,k,m;
    m=n;
    for(i=1;i<=n;i++,m--)
    {
        j=m;
        for(j=m-1;j>0;j--)
        printf(" ");
        for(k=i;k>0;k--)
        printf("%d ",i);
        printf("\n");
    }
}

2)解题思路

A: 第一步:理解好题目中的变量 与函数的意义,正确运用函数;

    第二步:输入整数n ,初次使用  定义函数 n;

    第三步:调用函数,输入变量,利用for语句,运行函数;

    第四步:输出结果 要求 每个数字之间留有空格。

B.流程图

3)本题调试过程碰到问题及解决办法

 

a.存在的编译错误,未能完全理解题目

b.调试断点中,最后输出结果应留有空格,在最后一步的 printf("%d",i)改为printf("%d ",i);

2.数组1.7-4最大值与次大值

1)实验代码

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

2)解题思路

A.第一步:输入整数i,最大值表达函数max,次大值函数cmax,数组个数a[10];

   第二步:设置循环变量,利用if语句进行循环;

   第三步:确定好最大值 与 次大值的函数表达方式,输出结果。

B.流程图

3)本题调试过程碰到问题及解决办法

a.在输出部分未留有空格,应在scanf("%d ")留有空格

b.在尝试断点时 ,无空格无错误,可以输出。

3.数组2.7-1插入排序

1)实验代码

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

2)解题思路

A.第一步:输入函数变量n,i,j,x,以及数组个数a[10];

   第二步:定义数组,开始让i=0,利用while语句进行循环;

   第三步:在while语句中增加for语句,进行二次循环:

   第四步:最后输出结果a[i].

B.流程图

3)本题调试过程碰到问题及解决办法

 

a.编译错误,由于一些字母未能定义,出现了新的字母,定义新的字母意义;

b.断点调试中,出现字母不匹配,更改字母表达含义;

c.显示scanf未留有空格,加空格。

三、个人总结

A.1.这几周主要认识到数组的含义,与运用,但是由于没有理解完全,致使一些知识点不能更好地运用 出现错误;

    2.除于课上,自己在社团中还接触到python,数据库等的学习。

B.1课上学到的 最难点我认为就是数组的认识,在困难的代码中 不知在哪里入手。

    2.在以后的学习中更好的去理解,去网上寻找资源,查看课本,去图书馆借阅书籍等。

四、互评与学习进度

1.点评   

李靖同学   

初可欣同学          袁于纯同学

2.折线图 

表格

 

posted on 2018-12-22 11:53  墨墨沫沫  阅读(168)  评论(6编辑  收藏  举报

导航