C语言I博客作业07

C语言I博客作业07
作业头

这个作业属于哪个课程https://bbs.csdn.net/forums/csuft_swxy_C?category=0&typeId=17321
这个作业要求在哪里https://bbs.csdn.net/topics/603526787
这个作业的目标<熟练运用循环>
学号<20218539>

1.PTA作业
1.1韩信点兵
在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:

按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10;
请编写程序计算韩信至少有多少兵。

输入格式:
本题无输入

输出格式:
输出韩信至少拥有的士兵人数。

1.1.1
请添加图片描述
1.1.2
数据表达:int 定义了i
数据处理:类似枚举法 从零开始循环 知道找到同时满足各个条件的最小值时输出
1.1.3
请添加图片描述
编译错误:未设置终止 break
答案错误:少输入一个条件

1.2找出一批学生的最高分
本题要求编写程序,找出最高分。

输入格式:
输入在一行中给出一系列非负整数,其间以空格分隔。当读到负整数时,表示输入结束,该数字不要处理。

输出格式:
在一行中输出最高分。

输入样例:
在这里给出一组输入。例如:

67 88 73 54 0 95 60 -1
结尾无空行
输出样例:
在这里给出相应的输出。例如:

95

1.2.1
请添加图片描述
1.2.2
数据表达:int 定义了 max,fen
数据处理:循环性的输入一个数与上一个数进行比较 大的赋值给max 直至全部数比较完 输出最大数

1.2.3
请添加图片描述
编译错误:fen<0时的情况没考虑清楚
答案错误;答案部分错误 与fen<0情况有关

1.3 购物(二)
用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。

输入格式:
若干个以空格间隔的实数(每个数不超过100000),以-1作为输入结束的标志。

输出格式:
一个实数,表示商品的平均价格,精确到小数点后两位。

输入样例:
890.78 2769.8 12300 3532.2 -1
结尾无空行
输出样例:
4873.19
结尾无空行

1.3.1请添加图片描述
1.3.2
数据表达:int 定义了i m double定义了x,sum,y,n
数据处理:循环性的相加 同时记下商品个数 最后求平均值

1.3.3请添加图片描述
编译没什么大的错误
答案错误:数据类型表达错误 结果未保持两位小数

1.4 循环-古角猜想
日本数学家古角静夫研究自然数时,发现一个有趣现象:“如果是个偶数就除2,如果是奇数就乘以3加1”,经过有限个这样的处理步骤,最后一定能得到1. 任意输入一个自然数,给出得到结果1的运算过程。

输入格式:
输入一个自然数n

输出格式:
输出每次运算步骤,直到结果为1.

输入样例1:
5
结尾无空行
输出样例1:
53+1=16
16/2=8
8/2=4
4/2=2
2/2=1
结尾无空行
输入样例2:
6
结尾无空行
输出样例1:
6/2=3
3
3+1=10
10/2=5
5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1
结尾无空行
1.4.1
请添加图片描述
1.4.2
数据表达:int 定义了x,m
数据处理:while循环 进行判断数字属于基数还是偶数 做相应的计算 同时输出换行 直至最后为一
1.4.3
请添加图片描述
答案错误:表达式出现了点小问题
编译错误:未给m开辟空间

2.学习总结
2.1 学习进度条

周/日期这周所花的时间代码行学到的知识点简介目前比较迷惑的问题
13/ 11.21-276h270分治法 贪心算法 循环头文件

2.2累积代码行和博客数字
请添加图片描述
2.3 学习感悟
本周学习了循环比较法 递归比较法 分治比较法 贪心算法通过本周的四个练习题对循环比较法 递归比较法 分治比较法这几个计算机算法 有了更好的理解 也知道不同的问题用不同的方法会起到很好的效果 不能只局限与一种方法用到底 要掌握更多的方法 多练习 才能在遇到难题时有解题思路 才能找到最优的解决方法

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值