一.PTA实验作业

题目1. 计算分段函数

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

1.本题代码

#include<stdio.h>
#include<math.h>
int main (void)
{
double x,y; scanf("%lf",&x);
if(x>=0){
y=sqrt(x);
}
else{
y=(x+1)*(x+1)+2*x+1/x;
}
printf("f(%.2f) = %.2f\n",x,y);
return 0;
}

2.设计思路

  • 第一步:定义两个浮点型分别代表x,y
  • 第二步:利用if语句判断x所属于的范围,从而判断接下来进行的语句
  • 第三步:利用数学函数进行运算
  • 第四步:根据题目要求,输出保留两位小数的结果

3.本题调试过程中碰到的问题以及解决方案

4.本题PTA实验结果展示

题目2.7-4 输出三角形面积和周长

本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。

三角形面积计算公式:area=√s(s−a)(s−b)(s−c) ,其中s=(a+b+c)/2。

1.本题代码

#include<stdio.h>
#include<math.h>
int main (void) {
int a,b,c;
double area,perimeter,s; scanf("%d%d%d",&a,&b,&c); if((a+b>c)&&(a+c>b)&&(b+c>a)){
s=(a+b+c)/2.00;
area=sqrt(s*(s-a)*(s-b)*(s-c));
perimeter=a+b+c; printf("area = %.2f; perimeter = %.2f",area,perimeter); }
else { printf("These sides do not correspond to a valid triangle");
}
return 0;
}

2.设计思路

  • 第一步:定义三个整型变量代表三角形的三条边,定义两个浮点型变量代表三角形的面积和周长
  • 第二步:判断三条边是否可以构成三角形,从而判断接下来进行的语句
  • 第三步:利用公式计算出周长和面积
  • 第四步:按照题目要求保留两位小数输出结果

3.本题调试过程中碰到的问题以及解决方案

(1)答案错误

  • 错误:题目要求保留两位小数,在计算面积时语句“s=(a+b+c)/2.00”,中的2没有增加小数位数导致结果输出为整数不符合题目输出答案要求。
  • 解决方案:通过问同学,以及自己的多次调试,翻阅课本,找到错误点

4.本题PTA实验结果展示

题目3.7-6 出租车计价

本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:

起步里程为3公里,起步费10元;

超起步里程后10公里内,每公里2元;

超过10公里以上的部分加收50%的回空补贴费,即每公里3元;

营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。

1.本题代码

#include<stdio.h>
int main(void)
{
int time,C;
double mil,cost1,cost2,cost;
scanf("%lf%d",&mil,&time);
if(0 <= mil&&mil <= 3){
cost1=10;
}
else if (3<mil&&mil<=10){
cost1 = (mil-3) * 2+10;
}
else if(10<mil){
cost1=24+(mil-10)*3;
}
if(0<=time&&time<5){
cost2=0;
}
else {
cost2=(time/5)*2;
} cost=cost1+cost2;
C=(int)(cost+0.5) ;
printf("%d",C); return 0; }

2.设计思路

  • 第一步:定义六个变量 mil,cost1,cost2,cost; time,C分别用于存放路程,行驶时的费用,停车时的费用,总费用,四舍五入后的总费用
  • 第二步:输入里程数和停留的时间
  • 第三步:利用if else if语句对mil 和 time的范围进行判断接下来进行的语句,

    如果mil小于3,则cost1=10,

    如果mil大于3小于10,则cost1= (mil-3) * 2+10

    如果mil大于10,则 cost1=24+(mil-10)*3

    如果time小于5,则cost2=0

    如果time大于5,则cost2=(time/5)*2
  • 第四步:cost=cost1+cost2
  • 第五步:对cost进行四舍五入得到C
  • 第六步:输出C

3.本题调试过程中碰到的问题以及解决方案

(1)部分正确

  • 错误:对题目理解有误,以为“超起步里程后10公里内,每公里2元”是指行驶13公里后
  • 解决方案:请教同学,理解题意

(2)答案错误

  • 错误:没有使用四舍五入语句,不会使用四舍五入语句
  • 解决方案:上网百度

4.本题PTA实验结果展示

题目2.7-8 程序设计联考

自从湖南农业大学、吉首大学和怀化学院组织程序设计课程联考以后,举办联考的经验越来丰富。尤其是在使用PTA系统作为考试平台之后,联考工作得到了很多学校的认可和支持。所以,现在参与联考的学校比较多。为了便于区分考生,考生账号的第一位是学校代号。1代表Hunan Agricultural University,2代表Jishou University,3代表Huaihua University,4代表Aerospace University,5代表Ocean University。 请编写程序根据考生的账号区分考生的学校。

1.本题代码


#include<stdio.h>
int main (void)
{
int F,N;
scanf("%d",&N); F=N/100000;
switch(F) {
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");
break;
} return 0; }

2.设计思路

  • 第一步:定义两个整型变量N,F分别用于储存学号和学号的首位数
  • 第二步:利用整型数除以整型得到整型的原理,用N/100000得到学号的首位数即F
  • 第三步:使用用switch语句,当F=1输出“Hunan Agricultural University”,

    当F=2时输出“Jishou University

    当F=3时输出“Huaihua University

    当F=4时输出Aerospace University

    当F=5时输出Ocean University
  • 第四步:如果都没有,就输出Other University

3.本题调试过程中碰到的问题以及解决方案

(1)switch语句使用错误

4.本题PTA实验结果展示

二.截图本周题目集的PTA提交列表及最后排名

三,本周的学习总结

1.你学会了什么?

  • 1,整型的输出格式控制说明%md,指定了数据的输出宽度为m(包括符号位),若输入的实际位数小于m,则左端补空格,若大于m,则按实际位数输出,实型数据的输出格式控制说明%m.nf,指定了输出浮点型数据保留n位小数。
  • 2.for循环语句:for(表达式1;表达式2;表达式3)。
  • 3.多分支结构else-if语句。
  • 4.字符型变量在定义时用类型名char。
  • 5.switch语句中如果不使用break,当表达式的值与之相匹配时,不但执行相应的语句段,还按序执行后面的所有语句段。

2.本周的内容你还不会什么?

  • 1.switch语句和其他语句的配合使用,如与if语句。
  • 2.不会使用dev的调试,或者说还不习惯自我调适寻找到问题。

3.你碰到什么困难,打算如何解决?

  • 1.习惯性得漏掉&符号,直到程序运行显示无法运行时才反应过来

  • 解决方法:在程序运行前再检查一下

  • 2.在做到一些熟悉的题目时会找课本里的例题进行改变,如果没有看书,会漏掉一些细节导致编程错误

  • 解决方案:增加相应题目的练习量,逐渐摆脱课本

C语言的第二次作业的更多相关文章

  1. C语言程序设计第二次作业--顺序结构

    C语言程序设计第二次作业--顺序结构 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido ...

  2. C语言基础第二次作业

    PTA第一次作业 题目7-1  统计学生成绩 1.实验代码 #include<stdio.h> int main(void){ ,B=,C=,D=,E=,f; scanf("%d ...

  3. c语言:第二次作业,循环结构

    1.本章学习总结(2分) 1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 循环相比分支和顺序结构难了许多,相对的来说我的c语言的基础比之前有提高,但是还是很多题想了很久也 ...

  4. C语言程序第二次作业

    (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 include int mian() { printf(&q ...

  5. C 语言学习 第二次作业总结

    本次作业内容,主要有以下几点: 新建 coding 帐号,且使用 coding 上传本次作业的代码 Printf及条件判断语句的使用 作业总结 作业总结: 同学们开始渐入佳境,能够较为流畅的写出合理的 ...

  6. C语言程序设计第二次作业

    一.学习内容 掌握关系运算符.逻辑运算符.条件运算符 掌握常用数学函数的用法 if语句(单分支,双分支和多分支) 用switch语句实现多分支 理解多个if语句,if...else if... 和if ...

  7. C语言程序设计第二次作业——顺序结构

    (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. 错误信息1: 错误原因:i和d位置错误 改正方法:i和d位置互换 错误信息2: 错误原因:\n后缺了一个" 改正方法:\n后加一个 ...

  8. C语言程序设计第二次作业—————顺序结构改

    1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido.h> int mian() { ...

  9. C语言程序设计第二次作业1

    (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 include int mian() { printf(&q ...

随机推荐

  1. 【NFS】nfs安装调优

    nfs [root@flymaster ~]# rpm -qa nfs-utils rpcbindnfs-utils-1.2.3-75.el6.x86_64rpcbind-0.2.0-13.el6_9 ...

  2. 让你的微信小程序具有在线支付功能

    前言 最近需要在微信小程序中用到在线支付功能,于是看了一下官方的文档,发现要在小程序里实现微信支付还是很方便的,如果你以前开发过服务号下的微信支付,那么你会发现其实小程序里的微信支付和服务号里的开发过 ...

  3. C# 图解教程 第五章 方法

    方法的结构方法体内部代码的执行本地变量    类型推断和var关键字    嵌套块中的本地变量本地常量控制流方法调用返回值返回语句和void方法参数    形参    实参值参数引用参数引用类型作为值 ...

  4. 一个小的tab切换插件

    1//使用 var t1=new Tab({ etype:'onmou',//默认点击触发,如果事件写错了,当作单击 autoplay:2000,//有时间值(按照事件自动播放)和false(不自动播 ...

  5. 关于flex的布局理解

    flex布局是一种新的布局方式也就是弹性盒子:在布局上更加方便,但是要注意的是在flex布局中float.position是无效的. 图片来自阮一峰的博客 .下面我们进入正题: flex布局分为分为主 ...

  6. 【BZOJ1901】【Luogu2617】Dynamic Ranking(主席树,树状数组)

    [BZOJ1901][Luogu2617]Dynamic Ranking(主席树,树状数组) 题面 神TM BZOJ权限题 Luogu真良心 题解 如果不考虑修改 很容易的主席树区间第K大 考虑修改 ...

  7. 【BZOJ4538】【HNOI2016】网络(树链剖分,线段树,堆)

    题目链接,我是真的懒得调题目的格式... 题解 树链剖分搞一下LCA 把线段树弄出来 这只是形式上的线段树 本质上是维护一段区间的一个堆 每次把堆插入节点, 询问的时候查询线段树上的堆的最大值就行了 ...

  8. 【SDOI2009】HH去散步(矩阵快速幂)

    题面 题目描述 HH有个一成不变的习惯,喜欢饭后百步走.所谓百步走,就是散步,就是在一定的时间 内,走过一定的距离. 但是同时HH又是个喜欢变化的人,所以他不会立刻沿着刚刚走来的路走回. 又因为HH是 ...

  9. [BZOJ1058][ZJOJ2007]报表统计

    BZOJ Luogu 题目描述 Q的妈妈是一个出纳,经常需要做一些统计报表的工作.今天是妈妈的生日,小Q希望可以帮妈妈分担一些工作,作为她的生日礼物之一. 经过仔细观察,小Q发现统计一张报表实际上是维 ...

  10. 1.3 java与C++有什么异同

    相同点: 都是面向对象的语言,都使用了面向对象的思想(封装,继承,多态等),可重用性 不同点: 1.java没有指针,避免了指针可能引起的系统问题. 2.java不支持多重继承,C++可以.但java ...