C语言博客作业04--数组

数组

1.本章学习总结

1.1 思维导图

1474675-20181208192249617-300188649.png

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

1.2.1 学习体会

  这两周学了数组,做一维数组时觉得不是太难,而深入到二维数组和字符数组时就感觉到难度了
 经常不知道如何下手,后面通过与同学的交流,以及百度上看别人的思路,慢慢总结出自己的想法

1.2.2 代码累计

1474675-20181208192925410-1984577160.png

2.PTA总分

2.1截图PTA三次题目集:一维数组、二维数组和字符数组共3次题目集的排名得分

1474675-20181208193028682-744915965.png
1474675-20181208193053604-1917537704.png
1474675-20181208193111632-1741179813.png

2.2 我的总分:

总分:455分

3.PTA实验作业

3.1 PTA题目1

以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。”也就是说,直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不相同的年份”这句话。

3.1.1 算法分析

定于开始的年份time,要求require,次数count=0
输入time和require
while(1)
    if(time的不同数等于require)
    break
    else
    年份自增,次数自增
输出年份和次数

3.1.2 代码截图

1474675-20181208195402545-1310262967.png
1474675-20181208195414163-1900206822.png

3.1.3 PTA提交列表及说明

1474675-20181208195708605-1212529770.png

Q1:不知道怎么在少于4位数的年份前补零
A1:后来通过百度,知道输出时%04d这样可以保证年份为四位,并且不够时在前面补零

3.2 PTA题目2

一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。

本题要求编写程序,求一个给定的n阶方阵的鞍点。

3.2.1 算法分析

定义二维数组a[n][n],max,min
输入数组
for  j=0  to  n
    if(max<=a[i][j])//找出每一行的最大值
    max=a[i][j]
        end if
end  for
for    k=0  to n//再判断每一行的最大值是不是这一列的最小值
    if(max>a[k][col])
        flag=0;//作为不是这一列最小值的标志
        break;  
         end if
end for
输出结果

3.2.2 代码

1474675-20181208204839496-1965101642.png
1474675-20181208204854423-1541872033.png

3.2.3 PTA提交列表及说明

1474675-20181208204935796-1757102882.png

Q1:最大规模,有并列极值元素,最后一个是鞍点
A1:在反复查看后,发现这是取等问题

3.3 PTA题目3

一个IP地址是用四个字节(每个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。

3.3.1 算法分析

定义字符数组IP[33]
定义i=0,num=0;
输入数组
for(i=0;IP[i];i++)  
    用num来放IP转化为10进制的值
     if(  i  是否是8的倍数)
        if  (i  是否大于7),输出后加 '.',
            否,直接输出
     并且num=0
      end if
end for

3.3.2 代码

1474675-20181208210758281-320803758.png

3.3.3 PTA提交列表及说明

1474675-20181208210820079-132923496.png

Q1:忘记在循环结束时令num=0
A1:多次实验数据时发现问题所在

4.代码互评

4.1 代码截图

同学:
1474675-20181208211302072-289243996.png
自己:
1474675-20181208211438370-1769264714.png
[](https://img2018.cnblogs.com/blog/1474675/201812/1474675-20181208211451390-71320241.png

首先,我是使用函数,而同学是全部放在main函数中;其次同学的循环用了一个死循环,在循环内部来控制结束
这个是一个比较灵活的做法。

转载于:https://www.cnblogs.com/B-hai/p/10088788.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值