zoukankan      html  css  js  c++  java
  • C语言I博客作业07

    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 C语言I作业07
    我在这个课程的目标是 熟悉多分支结构switch语句的使用,更加熟练
    这个作业在那个具体方面帮助我实现目标 switch语句得到训练,锻炼逻辑思维能力
    参考文献 C语言程序设计,百度,搜狗百科

    1.PTA作业

    1.PTA实验作业

    1.1计算天数

    内容:本题要求编写程序计算某年某月某日是该年中的第几天。输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。在一行输出日期是该年中的第几天

    1.1.1数据处理

    数据表达:定义整型变量year,mouth,day,total;year,mouth,day为输入的年月日,total为那一年的第几天
    数据处理:
    int year,mouth,day,total;(定义整型变量)
    输入年月日
    if(闰年判断条件)
    then
    do switch语句
    {case 1:case 2:case 3:case 4:case 5:case 6:
    case 7:case 8:case 9:case 10:case 11:case 12:}(分别是day加前面月份日期和)
    else
    switch语句
    {case 1:case 2: case 3:case 4:case 5:case 6:
    case 7:case 8:case 9:case 10:case 11:case 12:}(分别是day加前面月份日期和)
    输出这一天为该年的第几天;

    1.1.2实验代码截图


    1.1.3造测试数据

    输入数据 输出数据 说明
    输入数据 输出数据 说明
    2003/03/02 61 非闰年跨2月
    2000/03/02 62 被400整除的闰年跨2月
    2004/04/05 96 普通闰年跨2月
    2000/05/14 135 被100整除的非闰年跨4月
    2003/11/17 231 非闰年跨9月
    2004/01/12 12 闰年1月
    2003/01/13 13 非闰年1月

    1.1.4PTA提交列表及说明


    提交列表说明:
    1.编译错误:printf("%d",total)后面的‘;’return 0,} 在devc++上复制过去的时候没有复制到,就少了return 0,} 后来改了
    2.在devc++上没有考虑到被100整除的闰年跨4月的情况,后来问其他人就加上去了

    1.2统计学生成绩

    内容给定 N 个正整数,要求你从中得到下列三种计算结果:
    A1 = 能被 3 整除的最大整数
    A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数
    A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)
    输入首先在第一行给出一个正整数 N,随后一行给出 N 个正整数。所有数字都不超过 100,同行数字以空格分隔。
    在一行中顺序输出 A1、A2、A3的值,其间以 1 个空格分隔。如果某个数字不存在,则对应输出NONE。:

    数据表达:定义整型变量N,i为循环终止条件,remainder为余数,num输入的数,A1,A2;定义浮点型变量A3,average为平均数,total数的和
    数据处理:
    头文件include
    主函数int main()
    {
    N, i, remainder, num, A1 , A2;(定义整型变量)
    A3, average , total ;(浮点型变量)
    输入N;
    for i <--1toN
    do
    输入num
    取num除以3的余数
    switch 语句
    case 0:ifA1 < num ,do num<--A1;
    case 1:A2累加
    case 2:和等于num累加; A3累加
    平均数等于和除以A3;
    if A1=0
    then 输出NONE
    else
    输出A1
    if A2 = 0
    then 输出NONE
    else
    输出A2
    if total = 0与 A3 = 0
    then 输出NONE
    else
    输出average;

    1.2.2实验代码截图


    1.2.3造测试数据

    输入数据 输出数据 说明
    输入数据 输出数据 说明
    8 5 8 7 6 9 1 3 10 9 3 6.5 样例1等价,3种都有
    8 15 18 7 6 9 1 3 10 18 3 NONE 样例2等价,缺第3种
    4 3 6 9 12 12 NONE NONE 全被3整除
    4 4 7 10 13 NONE 4 NONE 全是3K+1型
    4 5 8 11 14 NONE 4 NONE 全是3K+2型
    0 NONE NONE NONE 最小的N

    1.2.4PTA提交列表及说明


    提交列表说明:
    1.格式错误:只有在样例2等价,缺第3种,其他情况都是格式错误,我将NONE后面加了空格,但是还是错误
    2.格式错误:问了同学之后将前两个输出加了空格,而第三种情况的空格删掉

    2.代码互评

    同学的代码


    同学的代码

    自己的代码



    1.第一位徐同学的代码把数字分别加起来,我和杨同学把月份的日期都加起来了
    2.变量不同的有sum,total,date,有相同的year,mouth,day,但是本质不变
    3.我和徐同学的比杨同学要复杂得多,我们的有20多种情况,杨同学只有10多种可以向她学习
    4.杨同学后面加了if语句,能够将另一种情况包括进去
    5.我们都用了((year%40&&year%100!=)||year%4000)来判断闰年

    3.学习总结

    3.1学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第六周 20h 60 用WinGW-w64来编译C程序 文档真的打不开,可能是电脑原因
    第七周 10h 90 关系运算,if-else语句,格式化输入语句scanf()
    第八周 8.5h 80 for的循环语句,指定次数的循环程序设计 不太会文字与数学的转换
    第九周 8h 100 函数的调用和定义的初步认识 自定义函数不熟悉
    第十周 10h 170 多分支结构、字符型数据类型和逻辑运算符 多个数据输出不熟练
    第十一周 11h 220 熟悉多分支结构switch语句的使用 逻辑思维能力差

    3.2累积代码行和博客字数

    3.3学习内容总结和感悟

    3.3.1学习内容总结

    3.3.2学习体会

    1.时间太紧了,熬夜赶作业,主要是自己不怎么会,要不然也没那么累了
    2.需要有较强的逻辑思维能力,我有一点欠缺,难受
    3.每一次写作业都需要翻书,对知识不熟悉
    4.在网上听一些关于C语言的课,还是不太懂
    5.当面对题目时,只是脑袋一片空白,不知道用什么语句

  • 相关阅读:
    面试官:重写 equals 时为什么一定要重写 hashCode?
    MyBatis 中为什么不建议使用 where 1=1?
    面试官:方法重写时需要注意哪些问题?
    Java中List排序的3种方法
    面试官:this和super有什么区别?this能调用到父类吗?
    面试官:int和Integer有什么区别?为什么要有包装类?
    HashMap 中的一个“坑”!
    Java 中接口和抽象类的 7 大区别!
    List 去重的 6 种方法,这个方法最完美!
    面试官:如何实现 List 集合去重?
  • 原文地址:https://www.cnblogs.com/zhangsanri/p/11813472.html
Copyright © 2011-2022 走看看