C语言第二周作业----分支结构
一、PTA实验作业
题目1.7-1计算分段函数
本题目要求计算下列分段函数f(x)的值:
注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂。
1.实验代码
int main()
{
float fx, x;
scanf("%f", &x);
if (x >= 0)
fx = sqrt(x);
else
fx = pow(x + 1, 2) + 2*x + 1 / x;
printf("f(%.2f) = %.2f", x, fx);
}
2.设计思路
- 定义float型变量fx和x
- 输入x
- 使用if else语句进行判断并给fx赋值
- 按照格式输出fx
3.本题调试过程中碰到问题及解决办法
没有
4.PTA提交列表
题目2.7-4输出三角形面积和周长
本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式:area=√s(s−a)(s−b)(s−c),其中s=(a+b+c)/2。
1.实验代码
int main()
{
int a,b,c;
float s,area,perimeter;
scanf("%d%d%d", &a, &b, &c);
s = ((float)a + (float)b + (float)c) / 2;
area = sqrt(s*(s - a)*(s - b)*(s - c));
perimeter = a + b + c;
if ((a + b) > c && (b + c) > a && (a + c) > b)
printf("area = %.2f; perimeter = %.2f", area, perimeter);
else
printf("These sides do not correspond to a valid triangle");
}
2.设计思路
- 定义三个整形变量a,b,c来存放三角形的长宽高
- 定义三个浮点型变量 s,area,perimeter来存放海伦公式,面积和周长
- 输出三角形的长宽高
- 计算它的面积和周长,判断三角形是否符合构成条件
- 输出结果
3.本题调试过程中碰到问题及解决办法
应该先判断后计算,而不是先计算后判断,这样会节省一些时间。
4.PTA提交列表
题目3.7-6出租车计价
本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:
起步里程为3公里,起步费10元;
超起步里程后10公里内,每公里2元;
超过10公里以上的部分加收50%的回空补贴费,即每公里3元;
营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。
1.试验代码
int main()
{
int amount,time;
float km;
scanf("%f%d", &km, &time);
if (km <= 3) {
amount = 10 + time / 5 * 2+0.5;
printf("%d", amount);
}
else if (km > 3 && km <= 10)
{
amount = 10 + (km - 3) * 2 + time / 5 * 2+0.5;
printf("%d", amount);
}
else if (km > 10) {
amount = 24 + (km - 10) * 3 + time / 5 *2+0.5;
printf("%d",amount);
}
}
2.设计思路
- 定义两个整形变量amount和time来表示金额和等待时间
- 定义一个浮点型变量来表示公里数
- 输入公里数和时间
- 用if else if语句进行多分支判断
- 经过计算并把结果赋值给amount
- 输出结果
3.本题调试过程中碰到问题及解决办法
刚开始以为不用四舍五入,在看到最后一个样例输出的时候发现需要,然而我不知道如何让整形变量四舍五入,最后选择在所有的计算表达式中+0.5以达到目的
4.PTA提交列表
题目4.7-8程序设计联考
自从湖南农业大学、吉首大学和怀化学院组织程序设计课程联考以后,举办联考的经验越来丰富。尤其是在使用PTA系统作为考试平台之后,联考工作得到了很多学校的认可和支持。所以,现在参与联考的学校比较多。为了便于区分考生,考生账号的第一位是学校代号。1代表Hunan Agricultural University,2代表Jishou University,3代表Huaihua University,4代表Aerospace University,5代表Ocean University。 请编写程序根据考生的账号区分考生的学校。
1.实验代码
int main()
{
int account,first;
scanf("%d", &account);
first = account / 100000;
switch (first) {
case 1:printf("Hunan Agricultural University");
break;
case 2:printf("Jishou University");
break;
case 3:printf("Huaihua University");
break;
case 4:printf("Aerospace University");
break;
case 5:printf("Ocean University");
break;
default:
printf("Other University");
}
return 0;
}
2.设计思路
- 定义整形变量account和first来表示考生号和第一位数字
- 输入考生号
- 经过计算得到考生号第一位数字
- 用switch语句进行分支选择并输出相应结果
3.本题调试过程中碰到问题及解决办法
一开始不知道switch语句中都不满足则输出···的语法不知道后来上网查了下就知道了
4.PTA提交列表
二、截图本周题目集的PTA最后排名
1.PTA排名
三、本周学习总结
1.你学会了什么?
1.通过这周学习,我学会了 if else 语句的使用 和使用if else if语句进行多分支判断
2.学会使用switch语句 并了解了if else if语句和switch语句之间的区别,if else if语句适用于范围的判断,而switch语句适用于离散值判断
2.本周的内容,你还不会什么?
还行 都比较熟练
3.你碰到什么困难,打算如何解决?
有时会忘记类型之间的转换 导致结果有误,应该多多练习代码,可以一眼看出其中的问题,并解决
C语言第二周作业----分支结构的更多相关文章
- C语言第二周作业——分支结构
一.PTA实验作业 题目1.7-1计算分段函数 本题目要求计算下列分段函数f(x)的值: 1实验代码 double x,result; scanf("%lf",&x); i ...
- C语言第二次作业---分支结构
一.PTA实验作业 题目1:计算分段函数[2] 1.实验代码 double x,y; scanf("%lf",&x); if(x>=0){ y=sqrt(x); } ...
- C语言--第二周作业评分和总结(5班)
作业链接:https://edu.cnblogs.com/campus/hljkj/CS2017-5/homework/1026 一.评分要求 要求1 阅读指定博客+阅读收获+例子.(5分) 要求2 ...
- C语言第二周作业
一.PTA实验作业 题目一:7-1 计算分段函数 1.实验代码 double x,y; scanf("%lf", &x); if(x >= 0){ y=pow(x,0 ...
- C语言--第二周作业
****学习内容总结**** 1.Git和编辑器截图 2.MOOC截图 3.阅读<提问的智慧>感想 读完<提问的智慧>之后,我认为在提问时,要根据以下步骤: 谨慎明确的描述症状 ...
- C语言第二次作业-----顺序结构
一:改错题 (1)输出指定信息: 将给定源代码输入编译器: 执行编译命令,发现编译器报错,错误信息如下: 经检查,发现源程序将"stdio.h"误拼为"stido.h&q ...
- C语言第二次作业——顺序结构
一.改错题 1.输出带框文字:在屏幕上输出以下3行信息. (1)源程序 对程序进行编译,发现错误信息1 错误原因:stdio拼写错误 改正方法:将stdio正确拼写 对程序进行编译,发现错误信息2 错 ...
- C语言程序设计第二次作业--顺序结构
C语言程序设计第二次作业--顺序结构 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido ...
- 20169212《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...
随机推荐
- 升级adb注意事项
最近使用adb devices老提示设备offline,百度试了好多方法都不行,后面才发现是因为没有把adb文件的名称中含有adb的所有文件复制到 c:/windows/system目录,复制完后只记 ...
- css3动画结束捕捉事件整理
//捕捉webkitAnimationEnd事件 element.addEventListener('webkitAnimationEnd', end, false); //捕捉webkitTrans ...
- 【BZOJ1969】航线规划(Link-Cut Tree)
[BZOJ1969]航线规划(Link-Cut Tree) 题面 BZOJ 题解 删边操作 套路呀 离线读入倒过来做 变成加边操作 现在考虑怎么确定两点直接的关键路径条数 如果是一棵树,那么每条边都是 ...
- [BZOJ4825][HNOI2017]单旋spaly
BZOJ Luogu 题目太长了,就不放了. 题解 首先声明一点,无论是splay还是spaly,插入一个新的元素,都要rotate到根!所以说题目也算是给了一个错误示范吧. 我们发现把最值旋转到根并 ...
- [BZOJ4195] [NOI2015] 程序自动分析 (并查集)
Description 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3,…代表程序中出现的变量,给定n个形如xi=xj或x ...
- Mybatis【一对多、多对一、多对多】知识要点
Mybatis[多表连接] 我们在学习Hibernate的时候,如果表涉及到两张的话,那么我们是在映射文件中使用<set>..<many-to-one>等标签将其的映射属性关联 ...
- javascript 推箱子游戏介绍及问题
最近没什么事情,我的一个亲戚在学校学习PHP,课程中老师让他们编写一个javascript版本的推箱子小游戏,他没什么头绪,就来问我,我当时很闲,就随口答应他包在我身上.结果真正写的时候还是花了点时间 ...
- FPGA加三移位算法:硬件逻辑实现二进制转BCD码
本文设计方式采用明德扬至简设计法.利用FPGA来完成显示功能不是个很理想的方式,当显示任务比较复杂,要通过各种算法显示波形或者特定图形时,当然要用单片机通过C语言完成这类流程控制复杂,又对时序要求不高 ...
- 11.C++-临时对象分析
首先来参考以下代码: #include <stdio.h> class Test { int mi; public: Test(int i) { mi = i; } Test() { Te ...
- css学习の第二弹—文字格式化排版
1.css格式化排版 >>字体设计: etc:body{font-family:"Microsoft Yahei";} >>字号,颜色: etc:body{ ...