C语言I博客作业03

这个作业属于哪个课程https://bbs.csdn.net/forums/csuft_swxy_C?typeId=17327
这个作业要求在哪里https://bbs.csdn.net/topics/603005148
这个作业的目标在题中发现自己的不足,自学不会的知识
学号20218588

1. PTA作业

1.1 7-1 计算分段函数[2]

本题目要求计算下列分段函数f(x)的值:

在这里插入图片描述
注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂。
输入格式:
输入在一行中给出实数x。
输出格式:
在一行中按“f(x) = result”的格式输出,其中x与result都保留两位小数。
1.1.1 代码截图
在这里插入图片描述
1.12 数据处理
数据表达:定义两个float类型的变量x,y。
数据处理:利用if-else语句,对于输入的x分为两种情况进行运算,如果x大于或等于0,y=sqrt(x),如果x小于0,y=pow((x+1),2)+2*x+1/x,最后的输出结果都保留两位小数。
1.1.3 PTA提交列表及说明
在这里插入图片描述
没有注意格式,后改正。

1.2 7-2 判断体质完整版

体质指数( BMI)是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。BMI的计算方法如下: 体质指数(BMI) = 体重(kg)/ 身高( m )的平方。

胖瘦程度BMI
偏瘦BMI < 18.5
正常18.5<=BMI < 24
偏胖24<= BMI <28
肥胖28<=BMI <40
极重度肥胖BMI >= 40

输入格式:
在一行里输入体重 和 身高的值

输出格式:
根据BMI的值,输出表格中的肥胖程度
1.1.1代码截图
在这里插入图片描述
1.2.2数据处理
数据表达:定义三个float类型的变量BMI,weight,height
数据处理:利用公式BMI=weight/pow(height,2)计算出BMI,利用if-else if-…-else的语句,将BMI的值分为五种情况对应相应的肥胖程度。

1.2.3PTA提交列表及说明
在这里插入图片描述
注意到区间问题,题目就变得简单

1.3 7-3 【简单分支】【–月份天数A–】

现在给定某一个月份,然后要求输出该月份的天数,假设年份都是平年。

输入格式:
输入一个正整数M代表月份,M只可能是[1~12]之间的正整数。

输出格式:
输出月份M的天数,输出数据后需要输出回车换行。

1.3.1代码截图
在这里插入图片描述
1.3.2数据处理

数据表达:定义两个int类型的变量month,day
数据处理:利用if-else if-…-else条件语句将月份分为三种情况,输入月份,通过条件判断输出相应的月份

1.3.3PTA列表提交及说明
在这里插入图片描述分清楚不同的月份的天数,即可写出题目

1.4 7-4 前天是哪天

给定公元1000年到公元3000年之间的某一天,请你给出该天的前天是哪一天。

输入格式:
输入在一个日期,格式如"yyyy-mm-dd",题目保证所有输入日期为合法日期。

输出格式:
对每一组输入,在一行中输出日期,格式如"yyyy-mm-dd"。

1.4.1代码截图
在这里插入图片描述
1.4.2数据处理
数据表达:定义三个int类型的变量year,month,day
数据处理:利用if-else将天数小于两天和大于两天分开讨论,天数大于两天的,只需将天数-2,而天数小于两天需要分开四种情况讨论
1.前一个月的天数为三十天,day=30+day-2,月份-1
2.输入的月份为三月,如果是闰年,day=29+day-2,不是闰年,day=28+day-2,月份-1
3.输入的月份是一月,则输出的月份必为12月,年份-1
4.输入的月份的前一个月为三十一天,day=31+day-2,月份-1

1.4.3 PTA提交列表及说明
在这里插入图片描述
在这里插入图片描述
对于闰年的条件一直未说明清楚,导致部分错误,后百度了解闰年的定义后将代码进行改正

1.5 7-5 多分支表达-倍数问题

键盘输入1个正的整数A,如果A是3的倍数但不是5的倍数,则输出A除以5的余数。如果A是5的倍数但是不是3的倍数,则输出A除以3的余数。如果A既不是5的倍数但也不是3的倍数,输出A除以15的余数

输入格式:
1个正整数

输出格式:
如果是3的倍数但不是5的倍数,则输出A除以5的余数。 如果A是5的倍数但是不是3的倍数,则输出A除以3的余数。 如果A既不是5的倍数但也不是3的倍数,输出A除以15的余数。 如果A不是正整数,没有任何输出。

1.5.1代码截图
在这里插入图片描述
1.5.2数据处理
数据表达:定义两int类型的变量N,将0赋值给a
数据处理:用if-else语句判断输入的N是否为正整数且能否被15整除,不然无输出。利用if-else if-else if-else语句按照题目要求输出a

1.5.3ATP提交列表及说明
在这里插入图片描述
在这里插入图片描述

没有考虑到N需要能被15整除的条件,后将代码改正

1.6 7-6 输出闰年

输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。

输入格式:
输入在一行中给出21世纪的某个截止年份。

输出格式:
逐行输出满足条件的所有闰年年份,即每个年份占一行。输入若非21世纪的年份则输出"Invalid year!"。若不存在任何闰年,则输出“None”。
1.6.1代码截图
在这里插入图片描述

1.6.2数据处理
数据表达:定义两个int类型的变量,N,1赋值给flag
数据处理:先用if-else语句判断N是否是二十世纪的年份,不是则输出"Invalid year!",是的话进入for循环语句,i的值进入if-else条件语句,输出是闰年的年份,没有闰年flag=0最后跳出循环,若flag=0则输出None(说明从2000到输入的年份之间没有闰年)

1.6.3PTA提交列表及说明
在这里插入图片描述
没有明白世纪的定义导致认为2100不是二十一世纪的年份,2000年是二十一世纪的年份,后出现语句未加“;”,粗心了

2. 本章学习总结

2.1 学习进度条

周/日期这周所花的时间代码行学习到的知识点简介目前比较迷茫的问题
10/18-10/2427小时600函数,一维数组对于数组的运用,一般不习惯用函数使代码简单化
10/25-10/3125小时600经常用到的头文件,数组排序,判断素数对于数组的调用

2.2 积累代码行和博客字数

在这里插入图片描述

2.3 学习感悟

这两周的学习,我学到了函数,及一维数组,和一些头文件的运用,关于素数问题我能看明白,但是关于数组的排序问题总是会有点迷糊,接下来的时间我会去看一些视频去理解它,尝试自己去打出代码。同时我也想自学一下二维数组,数组真的蛮有趣的。
在做题的时候不断地打错代码,会有挫败感甚至有点想放弃,但是不断尝试不断改进,最后打对代码的感觉更棒!还有如果一段代码反复修改都是错的,不如重新再打。关于C语言的书很好,接下来的日子我想把书认真地看完,并且书上的题目特别经典,我也想尝试去解答。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值