C语言第一阶段总结---条件与循环

一.pta易错题

  1. 实验一的分支结构
关于分支,以下是我整理正确率在百分之50左右的题
注意1.有无花括号,2.嵌套关系
3.else 总是与其前面最近的尚未配对的if结合
题型大概两种//多做就行,理论看着烦
一、连续只使用if,最后用一个else(或者没有else)
二、if else 里面嵌套。if后的范围不成立,else后嵌套一次if-else,就可以分离一次else所表示的范围,最终将区间分成一段一段,适用于分段函数类型的编程

在这里插入图片描述

测试用例就是测试程序不同性能的测试数据
该题测试用例为 op='+',op='-',op='*',
op='/'且除数等于0,op='/'且除数不等于0,
op=其他

在这里插入图片描述

在这里插入图片描述

当输入为38时,进入if(younumber==mynumber)输出“Right”;
程序走到判断是否大于mynumber时进入else语句输出“Small”;
if,if型不管第一个if是否成立都会判断第二个if的条件
而 if else if 只有if的条件不成立,才会判断else if里的条件

else只和最近一个if配对

在这里插入图片描述

a>0的值为1,
所以进入case 1,b<0为假(即值为0),没有相应case配对,程序走出switch(b<0);
由于case 1后没有break语句,所以程序会继续往下执行,走到case 0;
c==5为真,进入case 1输出“#”,遇到break跳出里面的switch;
由于 case 0后也没有break语句,继续往下执行输出“&”;至此走完外层switch语句
所以结果是“#&”,
此类题重点掌握switch语法,注意case 语句有没有break.

  1. 循环结构程序(全为编程题)
关于循环结构体,主要注意  跳出循环的条件 以及
语句顺序不同导致跳出循环时变量结果的不同
此类题,就谨慎些吧,然后多做,卡住了就一定要问问别人
可以利用下题体会下语句顺序不同导致跳出循环时变量结果的不同

在这里插入图片描述

程序A最后是先加item再跳出循环
程序B是先跳出循环,最后一个item没有加上,所以跳出循环后要再加一下
如果还不理解可以手写一下步骤

3.4-1课前自测
在这里插入图片描述

该题集理论题整体正确率都比较低,建议把这几份课前自测多做几遍
填空题和程序填空题整体正确率在百分之50(原因可能是做的人还比较少)

在这里插入图片描述

注意while后面的分号;类似都是考察语法点,所以一定一定要细心呀

4.4-2课前自测
在这里插入图片描述

该题集正确率在百分之五十以上,问题还是在填空题
该题集的程序填空题的程序段比较典型,求整数的位数个数及每个位数之和,但要小心程序段是从哪个位数开始算起

在这里插入图片描述
在这里插入图片描述

该题从十位开始加各位只和;
二、同学问的问题

1.语法问题居多:
每年都会出现的关于浮点数与整形的精度问题:
比如这道计算油费问题(题目链接戳我

这是错误的,原因就是把 s和p定义为float型,保留小数时出现精度错误,
应该定义为double型,在pta上,为了防止类似的精度错误,
我们一般都是定义为double

在这里插入图片描述

下面同为float型,只是输出不一样在pta能全部通过测试点,这是为什么呢?有兴趣可以查查

在这里插入图片描述

2.逻辑问题
暂无,后续会慢慢补充

如有错误请同学指出斧正~~
或者有其他想要知道的题目也可以说
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值