C博客作业04--数组

1. 本章学习总结

1.1 思维导图

1.2 本章学习体会及代码量学习体会

1.2.1 学习体会

这几周学习了数组,一维数组,二维数组,字符数组,前一个题集还没做完,后一个题集就又发布了,当场去世,可能因为题目难度也在增加,然后有些懒,题目一直放着没有好好去做,都是等老师讲完有了思路,再根据老师的思路把代码打一遍。这一点自我检讨一下。学习了数组,并且学了几种排序方法,之前的一些题目也可以改用数组的方法来做。感觉数组有些题目有思路做起来,也有点懵懵的,不能一遍过,都需要调试一下才知道自己的问题出在哪。数组这块的内容还是很重要的,所以我应该要把知识盲区都弄懂,并且累计一些做题思路。而且题集也不能一拖再拖了,遇到难题也不应该是躲避了,希望在接下去的时间里,我可以把它们全解决掉。

1.2.2 代码累计

2. PTA总分

2.1 截图PTA中数组题目集的排名得分

2.2 我的总分:

3. PTA实验作业

3.1 PTA题目1

数组循环左移 
本题要求实现一个对数组进行循环左移的简单函数:
一个数组a中存有n(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向左移m(≥0)个位置

3.1.1 算法分析

定义i,j,n,m,temp
输入n,m
输入n个数存入数组a
for i=0 to m do
    temp=a[0]
    for j=0 to n-1 do
        a[j]=a[j+1]
    a[n-1]=temp
    end for
end for
按照要求格式输出

3.1.2 代码截图

#include<stdio.h>
int main()
{
    int n,m,i,j,temp;
    scanf("%d%d",&n,&m);
    int a[n];
    for(i=0;i<n;i++)
        scanf("%d",&a[i]);
    for(i=0;i<m;i++)//左移次数
    {
        temp=a[0];//先用temp储存a[0]
        for(j=0;j<n-1;j++)
            a[j]=a[j+1];//各数往前移
      a[n-1]=temp;//将a[0]放到最后一位
    }
    for(i=0;i<n;i++)
    {
        if(i<n-1)
            printf("%d ",a[i]);
        else
            printf("%d",a[i]);
    }
    return 0;
}

3.1.3 测试数据

3.1.4 PTA提交列表及说明

Q1:刚开始做,挺有思路的但是感觉代码质量很差,而且有一两个点一直过不了
A1:后来老师在课上讲了这题,瞬间有种顿悟的感觉,好方法就要累积下来

3.2 PTA题目2

3.2.1 算法分析

3.2.2 代码

3.2.3 测试数据

3.2.4 PTA提交列表及说明

Q1:
A1:
A2:

3.3 PTA题目3

3.3.1 算法分析

3.3.2 代码

3.3.3 测试数据

3.3.4 PTA提交列表及说明

Q1:
A1:
A2:

4. 代码互评

4.1 代码截图

同学代码

我的代码

4.2 两者的不同

1.整体思路不同:
2.关系式不同:
3.

猜你喜欢

转载自www.cnblogs.com/hyj-/p/10085785.html