这个作业属于哪个课程 | https://bbs.csdn.net/forums/csuft_swxy_C?typeId=17321 |
---|---|
这个作业要求在哪里 | https://bbs.csdn.net/topics/603005146 |
这个作业的目标 | 熟练if语句及用相关算法 |
学号 | 202118534 |
一、本周作业(总分40分)
1.1 完成PTA作业,并给出编程题完成截图,截图上有自己的学号及姓名标识(不是截图形式的计0分)(每题5分)
7-1 计算分段函数
本题目要求计算下列分段函数f(x)的值:
注:可在头文件中包含math.h
,并调用sqrt
函数求平方根,调用pow
函数求幂。
输入格式:
输入在一行中给出实数x。
输出格式:
在一行中按“f(x) = result”的格式输出,其中x与result都保留两位小数。
输入样例1:
10
结尾无空行
输出样例1:
f(10.00) = 3.16
结尾无空行
输入样例2:
-0.5
输出样例2:
f(-0.50) = -2.75
数据表达:用浮点类型double定义了变量x.
数据处理:用到了sqrt函数求平方根,调用了pow函数求幂,用到了if判断语句.
格式错误:后面改了下格式,提交显示错误
7-2 判断体质完整版
体质指数( BMI)是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。BMI的计算方法如下: 体质指数(BMI) = 体重(kg)/ 身高( m )的平方。
胖瘦程度 | BMI |
---|---|
偏瘦 | BMI < 18.5 |
正常 | 18.5<=BMI < 24 |
偏胖 | 24<= BMI <28 |
肥胖 | 28<=BMI <40 |
极重度肥胖 | BMI >= 40 |
输入格式:
在一行里输入体重 和 身高的值
输出格式:
根据BMI的值,输出表格中的肥胖程度。
输入样例:
在这里给出一组输入。例如:
62 1.71
结尾无空行
输出样例:
在这里给出相应的输出。例如:
正常
结尾无空行
数据表达:用浮点类型double定义了变量kg,m,BMI.
数据处理:用到了if语句及多重选择else if语句.
部分错误:else if语句括号中写了“<=BMI<"。
答案错误:变量m和变量kg位置不对导致赋值互换了。
7-3 【简单分支】【–月份天数A–】
现在给定某一个月份,然后要求输出该月份的天数,假设年份都是平年。
输入格式:
输入一个正整数M代表月份,M只可能是[1~12]之间的正整数。
输出格式:
输出月份M的天数,输出数据后需要输出回车换行。
输入样例:
在这里给出一组输入。例如:
5
结尾无空行
输出样例:
在这里给出相应的输出。例如:
31
结尾无空行
数据表达:用整数类型int定义了变量M.
数据处理:用到了if语句及多重选择else if语句,并用到了逻辑运算符"||".12个月份分为三种情况:大月31天,小月30天,2月28天。
答案正确
7-4 前天是哪天
给定公元1000年到公元3000年之间的某一天,请你给出该天的前天是哪一天。
输入格式:
输入在一个日期,格式如"yyyy-mm-dd",题目保证所有输入日期为合法日期。
输出格式:
对每一组输入,在一行中输出日期,格式如"yyyy-mm-dd"。
输入样例:
在这里给出一组输入。例如:
2020-3-15
结尾无空行
输出样例:
在这里给出相应的输出。例如:
2020-3-13
结尾无空行
数据表达:int定义a,b,c,m,i,j。
数据处理:变量a为年份,变量b为月份,变量c为日,首先判断年份是闰年还是平年,是闰年的话先赋29给变量i,同
理平年赋28给i,以待后用;接着考虑最简单的情况:判断日是否大于2,大于2的话直接将日减2就可以输出结果,否
则的话再分情况讨论。当月份b=1时,日为12月的31天减2加c的值,同时月份变为12月,年份减一;当月份b=2时,
日等于1月的31天减2加c的值,月份往前推一个月,年份不用变;同理,依次列出其他十个月的情况。
答案正确
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不是正整数,没有任何输出。
输入样例:
18
结尾无空行
输出样例:
3
结尾无空行
数据表达:int类型定义变量A,result。。
数据处理:if语句判断,逻辑运算符"&&"表示两条件都成立时,执行后面的语句。总共三种情况用if判断。
答案正确
7-6 输出闰年
输出21世纪中截止某个年份以来的所有闰年年份。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。
输入格式:
输入在一行中给出21世纪的某个截止年份。
输出格式:
逐行输出满足条件的所有闰年年份,即每个年份占一行。输入若非21世纪的年份则输出"Invalid year!"。若不存在任何闰年,则输出“None”。
输入样例1:
2048
结尾无空行
输出样例1:
2004
2008
2012
2016
2020
2024
2028
2032
2036
2040
2044
2048
结尾无空行
输入样例2:
2000
输出样例2:
Invalid year!
数据表达:int类型定义变量year,外部输入值赋给year。
数据处理:用if语句判断输入的年份符合三种情况的哪种情况,如果存在闰年年份用while循环一一输出所有符合的年份。
部分正确:没有考虑第三种情况“若不存在任何闰年,则输出‘None’”。
1. 2请给出本章学习总结(15分)
1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/11-10/17 | 15hours | 111 | c语言基础 | 无 |
10/18-10/24 | 30hours | 304 | C语言控制语句:分支、跳转和循环 | 不同头文件的用法 |
2 累积代码行和博客字数(5分)
3 学习内容总结和感悟(5分)
总结:
循环是一个强大的编程工具。在创建循环时,要特别注意3个方面:
1.注意循环的测试条件要能使循环结束;
2.确保循环测试中的值在首次使用之前已经初始化;
3.确保循环在每次迭代都更新测试的值。
c通过求值来处理测试条件,结果为0表示甲,非0表示真。带关系运算符的表达式常用于循环测试。如果关系表达式为真,其值为1,;如果为假,其值为0。
if语句使用测试条件控制程序是否执行测试条件后面的一条简单语句或复合语句。如果测试表达式的值是非零值,则执行语句;如果测试表达式的值是零,则不执行语句。if else可用于二选一的情况。在else后面使用另一个if语句形成else if,可构造多选一的结构。
感悟:学C语言的道路任重而道远。