C语言I博客作业09

半城伤御伤魂 提交于 2019-12-05 06:28:43
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10029
我在这个课程的目标是 熟悉使用for语句的循环嵌套结构,培养逻辑思维能力
这个作业在那个具体方面帮助我实现目标 了解常见的语法错误
参考文献 百度,《PTA系统常见问题及解答》,C Prime Plus,《C语言程序设计》

1.PTA实验截图

1.1打印九九乘法表

1.2数据处理

数据表达:

   1.i,j分别表示行和列,其中j小于i,且i,j都为整型变量;
   2.其中等号右边数字占4位、左对齐应该表示为"%d*%d=%-4d"
   3.九九乘法表有九行,故要用printf("\n")语句;

数据处理:

伪代码:

Begin
include<stdio.h>
int main()
int N i j
scanf("%d",&N)
for i←1 to N
repeat
for j←1 to i
repeat
printf("%d*%d←%-4d" j i i*j)
printf("\n")
End

1.3实验代码截图

1.4造测试数据

输入数据 输出数据 说明
4 11=1 ,12=2, 22=4, 13=3 ,23=6 ,,33=9 ,14=4 ,24=8 ,34=1, 44=16 加以验证
1 1*1=1 增加实验结果的可靠性
2 11=1, 12=2 ,2*2=4 增加实验结果的可靠性

1.5PTA提交列表及说明

Q1:

  • 1.显示答案错误,没有按题目的要求,“其中等号右边数字占4位、左对齐”未用正确的代码表示
  • 2.根本没有用到for语句

    A1:使用了for(i=1;i<=N;i++)和for(j=1;j<=i;j++),并用%-4d表示数字占四位

    Q2:显示部分正确,for语句的循环嵌套结构没有使用对

    A2:将printf("\n")语句放到for语句的最后面

    说明:

    1.熟悉使用for语句的循环嵌套结构解答本题的前提;
    2.常用的表达方式在于平时的积累;
    3.多加练习是学好C语言的方法;

    2.1换硬币

    2.2数据处理

    数据表达:

     1.total:硬币总数量,count:换法个数,x代表数量,且都为整型变量,定义初始值count=0;
     2.用i=x/5的格式代表该硬币的个数;
     3.i*5+j*2+m*1==x用来判断他们的和是否等于数量;

    数据处理:

    伪代码:

    Begin
    include<stdio.h>
    int main()
    int total count i j m x
    scanf("%d", &x)
    count←0
    for i←x/5
    for j←x/2
    for m←x/1
    if(i5+j2+m*1←x)
    printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n" i j m i+j+m)
    count←count+1
    printf("count ← %d" count)
    End

    2.3实验代码截图

    2.4造测试数据

输入数据 输出数据 说明
13 fen5:2,fen2:1,fen1:1,total:4fen5:1,fen2:3,fen1:2,total:6fen5:1,fen2:2,fen1:4,total:7fen5:1,fen2:1,fen1:6,total:8,count = 4 加以验证
8 fen5:1,fen2:1,fen1:1,total:4 ,count=1 增加实验结果的可靠性

2.5PTA提交列表及说明

Q1:

  • 1.显示答案错误,i,j,m没有用表达式表示
  • 2.没有判断条件if,不知道怎么使用for语句的循环嵌套
  • 3.没有按题目的要求按顺序输出

    A1:使用for语句的循环嵌套,i,j,m用表达式表示,并按题意的要求输出

    Q2:显示格式错误,没有看清题中所给的输出样例

    A2:fens与fens之间要空格,且count与%d之间也要空格

    说明:

  • 1.做题时要正确的理解题意,题意是解题的关键;
  • 2.一些常见的语法错误虽然不能避免,但要知道是哪里出错了;
  • 3.多加练习是学好C语言的方法;

    3.代码互评

    同学代码:

    我的代码:

    互评结果:

  • 1.他的代码有n的取值范围(n>=1&&n<=9);
  • 2.他的代码格式不规范,for语句后没有“{}”,而我的代码是按照格式来编写的;
  • 3.相对于他的代码,我的代码的可靠性更高,更美观;

    同学代码:

    我的代码:

    互评结果:

  • 1.我的代码的行数比它的少,显得更简便一些;
  • 2.他还每一个fen定义了初始值,并且还使用了system(“pause”);
  • 3.相对于他的代码,我的代码的可靠性更高,更加直观;

3.学习总结

3.1学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较疑惑的问题
第一周 2小时 30行 如何空格,控制字符 编译的格式
第二周 2.5小时 40行 求华氏温度 printf的使用方法
第三周 4.5小时 80行 分段函数的编写 if-else不能灵活使用
第四周 2天 90行 循环语句for的使用 不会正确的变形,理不清题意
第五周 2天 200行 水仙花数的表示方法;个位数字平方和的表示方法 对陌生的概念不太了解,难以正确编程
第六周 2天 260行 if与else语句与for语句的综合使用,逻辑运算符,字符型char 题意与如何构思能力还有待提高
第七周 2天 220行 switch语句的使用,以及一些常见的格式 不能正确的编程,如何解决问题的能力还有待提高
第八周 2天 230行 如何用do-while语句和while语句,并区分与for语句的不同地方 题意还是不能完全读懂,难以正确的编程
第九周 3天 280行 如何使用for语句的循环嵌套结构,并学了break与coutinue之间的区别 题意还是不能完全读懂,题意与如何构思能力还有待提高

3.2累计代码行和博客字数

3.3学习内容总结与感悟

思维导图:

内容总结:

  • 明白一些常见的错误类型,如答案错误表示与题意输出的内容不符或输出的结果不同,编译错误常见的问题是标点符号不打或打错,运行超时的常见问题是输入了不要输入的内容,多种错误常见的问题是多定义了一些没有用到的变量,且再编程上还出现了语法错误;
  • 学会如何用for语句的循环嵌套结构,典型的例子就是九九乘法表,如何用for语句的循环嵌套结构来表示行和列;
  • 学会了break与coutinue之间的区别;

    感悟:

  • C语言是一门语言,要想学好学会就要多加练习,要从本质上分析问题并解决问题
  • 学习过程中会遇到一些难题,这时就离不开老师与同学的帮助,多问还是有必要的
  • 做题过程中会遇到许多未学过的知识,这就需要我们多看课外书并预习课本上还没教的知识

    3.4学习体会

  • C语言中如何正确使用for语句的循环嵌套结构,对于初学的我只能不断搜集资料;
  • 有时我甚至连题意都没有弄懂,在同学的帮助下我还是明白了许多;
  • 在这门功课上,我们需花大量的时间来练习并巩固已学知识;
  • 同时我也希望老师在上课的时候多讲几个习题助于我们理解;
  • 当然我也会去图书馆去阅读一些相关资料来提升自己。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!