C博客作业01--分支、顺序结构
1.展示PTA总分
顺序结构:
分支结构:
2.这两章的学习总结
2.1 学习内容总结
1.常量,变量和数据类型
C语言中最常用的数据类型包括int(整型)、char(字符型)、float(单精度浮点数)、double(双精度浮点数),其中double和float都是浮点型(实型),区别在于double型数据占用空间更大,精度更高,取值范围更大。另外整型中还有短整型short、长整型long,无特殊要求一般使用int和double。
2.算术运算和赋值运算
需要注意的是:对两个整型数据作除法运算其结果一定是整数(可用于取各个位上的数),取余运算不能用于实型数据的运算。
3.格式化输入和输出
-1. 格式化输出函数printf(): 该函数在系统文件stdio.h中声明,一般格式为: printf("格式控制字符串", 参数),在输出格式控制说明中,可以加宽度限制词,制定数据的输出宽度,如%5d、%.2f、%02d。需要注意的是输出参数必须和格式化控制字符串一一对应。
-2. 格式化输入函数scanf(): 该函数在系统文件stdio.h中声明,一般格式为:scanf("格式控制字符串“,&参数),注意数据输入无法控制小数的位数,double型数据使用%lf,函数的输入参数必须和格式化控制字符串一一对应,还有普通字符要原样输入。
4.if-else语句
其一般形式:
if(表达式)
{
语句1;
}
else
{
语句2;
}
5.for循环语句
其一般形式:
for( 表达式1;表达式2;表达式3)
{
循环体语句;
}
for语句的执行流程是:先计算表达式1,再判断表达式2,若为“真”,则执行循环体语句,并接着计算表达式3,然后继续循环,若值为“假”,则结束循环,继续执行for的下一条语句。
6.多分支结构
else-if语句:
if (表达式1)
{
语句1;
}
…
else if (表达式n-1)
{
语句n - 1;
}
else
{
语句n;
}
执行流程为:首先求解表达式1,如果表达式1的值为“真”,则执行语句1,并结束整个if语句的执行,否则,求解表达式2······条件都不满足执行else。
switch语句:
一般形式:
switch (表达式)
{
case 常量表达式1:
语句段1; break;
…
case 常量表达式n:
语句段n;break;
default:语句段n+1;break;
}
执行流程为:首先求解表达式,如果表达式的值与某个常量表达式的值相等(只判断一次),则执行该常量表达式后的相应语句段,如果表达式的值与任何一个常量表达式都不相等,则执行default后的语句,最后执行break语句,跳出switch语句。
2.2这两章的学习体会
-1.课前真的需要非常认真地预习,不然会跟不上节奏,光是上课听讲还不够,应该课后多打代码多实践,还有要再训练一下自己的逻辑能力和转化问题的能力,基本可以适应老师的风格。
-2.第一周代码量:434行,第二周代码量:620行。
3.PTA实验作业
2.1题目名:三个数由小到大输出
2.1.1数据处理
- 数据表达:定义3个整型变量用来储存输入的三个数,再定义一个整型变量来暂时储存大的数。
- 数据处理:先进行两个数的比较,把最大的给暂存变量,再拿剩下的与最大的比较。
2.1.2代码截图
2.1.3扩展
将大于号改成小于号可从大到小输出
2.1.4PTA提交列表
2.2题目名:计算天数
2.2.1数据处理
- 数据表达:定义三个整型变量year,month,day读进输入的三个年月日数据,定义整形数据sum存放累加和,定义leap作为辅助变量用于判断是否为闰年的情况
- 数据处理:先判断year是否为闰年,改变leap的值,将前n月一般的天数累加起来,储存于每一个case后的sum中,再根据leap判断sum是否加1。
2.2.2代码截图
2.2.3本题可扩展功能
想不到了
2.2.4PTA提交列表及说明
- 第一次尝试用数组,定义出错(第一次用。。)而且没有把闰年和非闰年区别清楚
- 后来在同学的帮助下用switch-case,刚开始还加错,后来在VS上慢慢调试找到错误,及时改对。
2.3题目名:判断一个三位数是否为水仙花数
2.3.1数据处理
- 数据表达:定义一个整型变量来储存读入的数据
- 数据处理:利用整型除法取出百位数字,用整形除法和取余取出十位和个位数字,判断百位数字的3方,十位数字的3方,个位数字的3方之和是否等于读入的数本身。
2.3.2代码截图
2.3.3PTA提交列表及说明
4.阅读代码
定义整型变量x,y,i,j,num,flag,flag作为辅助变量同时作为进入第一个for循环的条件,进入后执行第二个for循环,素数定义:只有1和它本身两个因数的自然数 (除了1和它本身以外不能被别的数整除),这个嵌套循环不太懂。。。