一.本周作业头
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | 作业链接 |
我在这个课程的目标是 | 掌握和熟悉C语言的各种结构和语句 |
这个作业在那个具体方面帮助我实现目标 | 学会continue和break语句,和嵌套循环 |
参考文献 | C语言程序设计,PTA |
二.本周作业
1.PTA实验作业
1.1 打印九九口诀表
1.1.1数据处理
- 数据表达:用到的变量有i,j,n;且变量均为整型;
数据处理:
include<stdio.h>
int main(void)
{
int i, j, n;//定义变量i为行数,j为列数,n为输入一个数为行数
scanf("%d", &n);//输入n
for(i = 1; i <= n; i++) //循环,i的初始量为1,循环条件是i小于等于输入的数n,循环一次i加一
{
for(j = 1; j <= i; j++)//循环,j的初始量为1,循环条件是j小于等于i,循环一次j加一
{
printf("%d%d=%-4d",j,i,ij);//输出数字,j,i,和二者的乘积
}
printf("\n");
}
return 0;
}
1.1.2实验代码截图
1.1.3 造测试数据
1.1.4 PTA提交列表及说明
- 编译错误:for语句中的分号又打成了逗号;
- 编译错误:printf语句中的逗号误打成了.但是知道;%d也打错了;
- 编译错误:开头没打输入变量;
- 多种错误:没有注意输出格式;
- 部分错误:将变量i,j的位置写反,
1.2 题目 换硬币
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
1.2.1 数据处理
- 数据表达:用到的变量有x,fen5,fen2,fen1,total,count,且变量均为整型;
数据处理:
include<stdio.h>
int main()
{
int x,fen5,fen2,fen1,total,count=0;//定义变量x为零钱数,total为fen5,fen2和fen1的和个数,count为换法的个数
scanf("%d",&x);//输入零钱数
for(fen5=x/5;fen5>0;fen5--)//循环,fen5的个数
{
for(fen2=(x-fen55)/2;fen2>0;fen2--)//循环,fen2的个数
{
for(fen1=(x-fen55-fen22);fen1>0;fen1--)//循环,fen1的个数
{
if(fen55+fen22+fen11==x)//如果个数乘以零线的面值之和等于x
{
count++;//换法个数加一
total=fen5+fen2+fen1;
printf("fen5:%d, fen2:%d, fen1:%d, total:%d",fen5,fen2,fen1,total);//输出fen5,fen2,fen1的数量,总数量
printf("\n”)
}
}
}
}
printf("count = %d",count);//输出换法个数
return 0;
}
1.2.2 实验代码截图
1.2.3 造测试数据
1.2.4 PTA提交列表及说明
- 编译错误:逻辑语句中的==少打了一个等号;
- 答案错误:count没有定义为0;
格式错误:输出格式没注意,没有打空格。
2.代码互评
同学代码
我的代码
1.第一位同学可不定义变量total,后面他直接用的加法表示,我定义total之后在前写明total为三者之和;然后这位同学的循环初始量和我不一样,他的三者数量都是由零钱数除以零钱面值得到,我后两者是剩下的零钱数除以面值得到。
2.第二位同学只用了两个for语句,最后fen1的数量没有用循环语句,而是用总零钱数减去前两个面值所换的零钱数来得到。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/9--10/12 | 三天 | 75+ | 编写分支结构if-else语句,浮点型数据类型和scanf语句函数 | 平方根函数和幂函数的使用,双精度浮点型数据类型的使用 |
第四周/10-16到10-18 | 一天 | 100+ | “for”循环结构语句,累加求和 | 分母的累加不熟练,有正负交替的求和不怎么会 |
第五周/10-23—10-25 | 一天 | 90 | 调用函数先定义在调用 | 定义函数与调用函数的格式不熟练,主调函数与被调函数不清楚 |
第六周/10-30--11-2 | 一天 | 120 | 字符型数据的输入和输出,逻辑表达式 | 不熟悉逻辑运算符和逻辑表达式 |
第七周/11-6——11-8 | 一天 | 90 | switch语句,case后必须为常量表达式 | switch后的表达式是否有要求 |
第八周/11-13——11-15 | 一天 | 75 | 循环结构,for语句,while语句和do-while语句,及其三者的区别适用情况 | 不知道关于二进制和十进制的知识 |
第九周/11-20——11-22 | 一天 | 110 | continue和break语句,嵌套循环 | 不熟悉continue和break语句的区别 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
这周学习了continue和break语句,嵌套语句,写作业的时候很多的问题就出现了,出现了很多的编译错误,对基本结构不熟悉,然后这周的PTA写的不太顺利,经过几次的作业发现读不懂题目,希望在考试之前把不懂得知识点都搞懂吧!