C语言博客作业01--分支、顺序结构

| 这个作业属于哪个班级 | C语言--网络2011/2012 |
| ---- | ---- | ---- |
| 这个作业的地址 | C博客作业01--分支、顺序结构 |
| 这个作业的目标 | 初步认识C语法,掌握数据表达、printf、scanf语法及分支结构内容 |

0.展示PTA总分

1.本章学习总结

1.1 学习内容总结

1.1.1两大结构(具体模板上一次博客已列举)

分支结构:

简单的if结构
if-else级联结构(多分支出口)
if-else嵌套结构(单分支出口)
switch-case分支(case语句后面跟上常量,使用break跳出分支,多个case可同时一个break跳出)

循环结构

for循环(适用于有具体循环次数)
while循环(需包含跳出循环的内容)
do-while循环(保证执行一次循环,while语句后要使用分号)

1.1.2 字符型数据理解

 char x  ;  //字符变量的定义
 getchar() ;  //用于读取一个字符
 putchar() ;  //用于输出一个字符
 scanf("%c",&x) ; //对于字符的读取输出使用%c
 printf("%c",x) ; //对于字符输出同样使用%c

| 字符 | 含义 |
| ---- | ---- | ---- |
| \n | 换行 |
| \r | 回车 |
| \ \ | 反斜线 |
| \ " | 双引号 |
| \ ' | 单引号 |
| \? | 问号 |

1.1.3 几大新学的函数与和头文件(放在随机种子中说明)

| 函数类别 | 使用方法 |
| ---- | ---- | ---- |
| 幂函数pow | pow(x,n) |
| 绝对值fabs | fabs(x) |
| 平方根sqrt | sqrt(x) |
注:fabs用于求取浮点数的绝对值,abs函数用于求取int类型的绝对值。

1.2 编程技巧总结

1.2.1 取某数(a)的某位数的做法

规律总结:个位数通过对10取余(%d)即可。
/10可以消除尾数(最后一位数)。
求取高位数有多种思路。
最高位数:原数/(10的n-1次方)
以1668(四位数为例)
对于百位(n),
n=1668%1000/100;
n=1668/100%10;

1.2.2 随机数种子的使用(用于产生随机数)

   #include <stdio.h>
   #include <stdlib.h>  // C语言标准库函数调用
   #include <time.h>    // 时间函数原型库文件调用
   int main()
   {
   int num;           
   srand( time(0)  );
   num=rand()%100 ;//%d 可表示调整生成随机数的范围
   printf("%d",num);
   return 0 ;
   }

1.3 本章学习体会

疑难:对于for循环的龟兔赛跑问题,理解不是很透彻。
在考虑具体问题时,纠结使用哪一类循环结构去更方便的解决。
代码:这两周每天的平均代码量2题,但是时间分配不均,存在一天刷一个题库,几天不刷题的情况。
这个问题应当注意,每天刷题保持状态,避免以懒惰为借口而不刷题。

2.PTA实验作业

2.1 前天是哪天

 //个人认为这是一道很经典的题目,可以认真仔细研究,对于顺序结构的理解有重要意义。
 //林学长提供的思路非常有启发作用,switch-case的逆向理解十分新奇。

题目截图

2.1.1 数据处理

数据表达:整形变量yea,mon,day。
数据处理:使用分支结构if语句判断,是否为闰年,是否为2月,大小月判断。

2.1.2 代码截图

2.1.3 PTA提交列表及说明

看起来是一次过,实际上是在vs上跑了很久,考虑了先判断月份是分开判断,还是用一个语句(大小月来分开判断),感谢伟神的思路帮助。
这里的思路是先考虑 是否跨月,然后 是否出现跨年,接着再 思考2月闰年继续思考),并行 思考大月和小月的情况。

2.2 自选一题,字符型数据处理题

题目如图所示

2.2.1 数据处理

数据表达:用于计数的letter,blank,digit,other。字符变量char。
数据处理:for循环对字符输入进行依次输入,if多分支语句进行不同类别的累加。

2.2.2 代码截图

2.2.3 PTA提交列表及说明


这个思路比较清晰,注意getchar读入循环进入的字符,注意怎么用if语句判断为整数,字母。

2.3 自选一题,介绍单步调试如何检查错误

题目如图所示

2.3.1 单步调试截图

正常输入
第一次

使用调试

发现sum不等于153,b的值错误


发现是取余和整除混淆

修改后

2.3.2 代码截图

2.3.3 PTA提交列表及说明!


要时刻注意整除和取余。

posted @ 2020-11-08 22:59  落叶满长安  阅读(179)  评论(0编辑  收藏  举报