一、PTA实验作业

题目1:7-1 计算分段函数[2]

1.实验代码

  double x,y;

  scanf("%lf",&x);

  if (x>=0) {
y=sqrt(x);
}
else {
y=pow(x+1,2)+2*x+1/x;
} printf("f(%.2f) = %.2f",x,y);

2 设计思路

  • 1、定义x,y为浮点型变量
  • 2、输入x
  • 3、如果x大于等于0,y=x的平方根,否则y=(x+1.2)的平方+2x+1/x
  • 4、输出f(x)=y的值

3.本题调试过程碰到问题及解决办法

  • 此题较简单,但发生了点小错误,主要是输入语句中把“%lf”打成了“%d”,还有x前忘了加“&”,在dev调试中发现了问题并改正

4.本题PTA提交列表

题目2:7-4 输出三角形面积和周长

1.实验代码

    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.0;
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");

2 设计思路

  • 1、定义三角形三条边abc为整型变量
  • 2、定义area为面积,perimeter为周长,s为公式的中间量
  • 3、输入abc
  • 4、如果三条边满足任意两边之和大于第三边,则以次计算s,area,perimeter,并输出面积和周长,否则输出"These sides do not correspond to a valid triangle"

3.本题调试过程碰到问题及解决办法

  • 1、s为浮点型变量,但除以2导致结果总为整数,使得后续的面积错误,在dev调试找到错误并改正
  • 2、也发生了一些小错误,比如scanf里的%d之间用逗号隔开,也是通过dev发现错误并改正的

4.本题PTA提交列表

题目3:7-6 出租车计价

1.实验代码

double distance;
int time;
double fare = 0;
scanf("%lf%d", &distance, &time);
if(time >= 5)
fare = (time / 5) * 2;
if(distance <= 3) {
fare =fare+ 10;
}
else if(distance > 10) fare =fare+ 10 + 7 * 2 + (distance - 10) * 3;
else if(distance<10 && distance >=3)
fare=fare+ 10 + (distance - 3) * 2; else {
fare =fare+ 10 + 7 * 2 + (distance - 10) * 3;
}
printf("%d\n", (int)(fare + 0.5));

2 设计思路

  • 1、定义distance为行驶里程,time为等待时间,fare为费用
  • 2、输入行驶里程和等待时间
  • 3、如果时间>=5,fare = (time / 5) * 2
  • 4、如果里程数小于等于3,fare =fare+ 10;如果里程数大于10, fare =fare+ 10 + 7 * 2 + (distance - 10) * 3,如果里程数大于等于3小于10fare=fare+ 10 + (distance - 3) * 2:非以上情况则 fare =fare+ 10 10+ 7 * 2 + (distance - 10) * 3
  • 5、输出fare并进行四舍五入

3.本题调试过程碰到问题及解决办法

  • 1、刚开始不知道怎么四舍五入,通过百度知道了四舍五入的代码
  • 2、刚开始10公里以上的答案是错误的,通过Dev的调试后解决了问题
  • 3、还有一些编译的小错误,通过Dev都成功解决了

4.本题PTA提交列表

题目4:7-8 程序设计联考

1.实验代码

int account,first;
scanf ("%6d",&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");
break;

2 设计思路

  • 1、定义account为考生账号,first为账号第一位
  • 2、输入账号
  • 3、通过first=account/100000求得第一位
  • 4、输入第一位,如果第一位为1,输出Hunan Agricultural University;如果第一位为2,输出Jishou University;如果第一位为3,输出Huaihua University;如果第一位为4,输出Aerospace University;如果第一位为5,输出Ocean University;若不是以上数字,则输出Other University

3.本题调试过程碰到问题及解决办法

  • 1、第一次漏了一个分号导致编译错误
  • 2、题目other university没有间隔,答案有间隔,向同学请教才成功解答出来

4.本题PTA提交列表

二、截图本周题目集的PTA最后排名。

三、本周学习总结

1.你学会了什么?

  • 1、学会了if-else语句及其嵌套形式的用法
  • 2、学会了switch语句用法
  • 3、学会了四舍五入的语法
  • 4、学会了Dev的调试

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

  • 1、对于scanf语句,老是忘记加“&”,这一点要多加注意
  • 2、除此之外,一些小失误很多,要想办法解决小失误的发生

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

第一选择是通过Dev调试,如果不行就百度或者问同学,但不论如何,重要的是要理解代码的含义并学会它’

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

  1. C语言--第二周作业

    ****学习内容总结**** 1.Git和编辑器截图 2.MOOC截图 3.阅读<提问的智慧>感想 读完<提问的智慧>之后,我认为在提问时,要根据以下步骤: 谨慎明确的描述症状 ...

  2. C语言——第二次作业(2)

    作业要求一 PTA作业的提交列表 作业要求二 题目1.删除字符串中数字字符(函数题) 1.设计思路 - (1)算法 第一步:调用定义的函数. 第二步:定义i=0.j=0,i为原字符数组角标,j为删除后 ...

  3. C语言第二次作业 ,

    一:修改错题 1输出带框文字:在屏幕上输出以下3行信息. 将源代码输入编译器 运行程序发现错误 错误信息1: 错误原因:将stido.h拼写错误 改正方法:将stido.h改为stdio.h 错误信息 ...

  4. c++语言第二次作业

    一题目7-1统计学生成绩 1实验代码 #include<stdio.h> int main(void) { int i,n,grade,A,B,C,D,E; A=B=C=D=E=; sca ...

  5. C语言--第二周作业评分和总结(5班)

    作业链接:https://edu.cnblogs.com/campus/hljkj/CS2017-5/homework/1026 一.评分要求 要求1 阅读指定博客+阅读收获+例子.(5分) 要求2 ...

  6. C语言第二次作业-----顺序结构

    一:改错题 (1)输出指定信息: 将给定源代码输入编译器: 执行编译命令,发现编译器报错,错误信息如下: 经检查,发现源程序将"stdio.h"误拼为"stido.h&q ...

  7. c语言第二次作业2

    ---恢复内容开始--- (一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. 源程序 对源程序进行编译 错误信息1: 错误原因:stdio.h输入错误 改正方法:i和d互换位置 错误信息2: ...

  8. 2018C语言第二次作业

    一.学习内容总结 1.指针是一种数据类型,同样占有空间,其存储的是内存地址: 2.定义指针变量要在变量名之前加“*”字符表示: 3.“&”是取地址运算符,“*”是间接运算符: (注:声名和使用 ...

  9. 网络1712--c语言第二次作业总结

    1.作业亮点 1.1在调试问题方面有明显进步,变量声明方面有所改变,没有发现大面积抄袭现象. 1.2 以下几位同学博文写的较为优秀,可作为范例供大家参考 田亚琴--代码格式良好,思路清晰,调试部分图文 ...

随机推荐

  1. Learning part-based templates from large collections of 3D shapse CorrsTmplt Kim 代码调试

    平台: VMware上装的Ubuntu-15.10 环境准备工作:装Fortran, lapack, blas, cblas (理论上装好lapack后面两个应该是自动的),其他的有需要的随时安装就可 ...

  2. iOS - IM 即时通讯

    1.即时通讯技术 即时通讯(IM:Instant Messaging):又称实时通讯,支持用户在线实时交谈,允许两人或多人使用网络实时的传递文字消息.文件.语音与视频交流. 即时通讯在开发中使用的场景 ...

  3. manacher模板(manacher)

    洛谷题目传送门 写完有一段时间了,发现板子忘记存在了这里...... 算法简述 一种字符串算法,\(O(n)\)高效求出以每个字符为对称中心的最长回文串长度. 然后,就可以进一步求出全串中最长回文串的 ...

  4. [POI2007]ATR-Tourist Attractions [TPLY]

    [POI2007]ATR-Tourist Attractions 题目链接(https://www.luogu.org/problemnew/show/P3451) 这种稠密图还是建议你不要跑spfa ...

  5. Luogu3242:[HNOI2015]接水果

    题面 Luogu3242 Sol 考虑每个盘子怎样才能接到一个水果 分两种情况: 盘子的\(x, y\)在一条链上,那么水果的两点就要在这条链之外 不在的话,水果的两点就分别在盘子的两点的子树中 记录 ...

  6. equals与==号的区别?

    equals与 == 的区别 初学Java的人(me),有很长一段时间对equals()这个方法感到很懊恼,实在是弄不明白到底何时比较的是地址,又什么时候比较内容呢?因为要找工作,要面试.本人通过查阅 ...

  7. Oracle定时任务小案例

    需求简述 一个数据表中包含此数据的录入时间,此数据的初始状态是有效,五天后系统自动置该数据的状态为无效. 方案 写一个存储过程,用于更新字段(改状态): 写一个job,用于定时执行存储过程: 方案逻辑 ...

  8. iptables 学习

    本博客是学习慕课网课程 用iptables搭建一套强大的安全防护盾 整理而成 iptables相当于在ip层挂载一个hook point对用户进行控制 组成: 四张表+ 五条链(hook point) ...

  9. PAT乙级-1057. 数零壹(20)

    给定一串长度不超过105的字符串,本题要求你将其中所有英文字母的序号(字母a-z对应序号1-26,不分大小写)相加,得到整数N,然后再分析一下N的二进制表示中有多少0.多少1.例如给定字符串" ...

  10. Could not get dialect instance.

    一般此错误都是和数据库有关,请确认数据库配置文件是否配置正确,或者确认数据库是否连接正常