1.本章学习总结

1.1思维导图

1.2本章学习体会及代码量学习体会

1.2.1学习体会

通过本章的学习,学会了几种用于循环的语句,能够利用循环解决复杂的问题,但对于几种循环的使用并不熟练,其中对于continue和break语句的理解欠缺,有时候不能正确选择,同时感觉作业量剧增,作业难度也很大,做题速度方面有很大欠缺,对于有些循环,甄别有的特殊情况总是忽略忘记,多种循环的嵌套也不能得心应手。在做每个pta题目时总是反复更改很多次,对解题思路没有明确的想法,对解题时间也难以把握,对于字符方面还是不熟练。

1.2.2代码量累计

2.PTA总分

2.1截图PTA中循环结构2次题目集的排名得分

2.2我的总分

循环结构(单层):175
嵌套的循环:15
总分:190

3.PTA实验作业

3.1PTA题目一

输入一组二进制字符,输出其对应的十进制数。当输入回车键时,输入结束。若输入非二进制字符,输出error input!

3.1.1算法分析

  • 定义字符ch,整形变量sum存放结果,整型变量flag用于辅助判断。
  • sum=0,flag=0;
  • while(ch!='\n')//回车作为结束的标志
  • switch(ch)//当输入新二进制字符十进制数*2+字符实现二进制转十进制;
  • default ch=‘/n’ //当输入非二进制输出error input!并结束循环;
  • if(flag==0) printf("%d",sum)//输入非法字符时不输出sum;

3.1.2代码截图

3.1.3测试数据

3.1.4PTA提交列表及说明

  • Q1:不知道二进制数与十进制数字之间的简单连接关系;
  • A1:通过在草稿纸上写几组数找到规律;

  • Q2:不知道输入非法字符时怎样结束循环并避免输出sum;
  • A2:采用flag进行判断;

  • Q3:开始输入等号会输出sum且值为0;
  • A3:对特殊情况区别对待,单独判断;

3.2PTA题目二

计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。

3.2.1算法分析

  • 定义字符存放运算符,定义sum存放运算结果,num存放第一个数字,flag辅助判断;
  • if(op=='=')break;输入等号直接结束循环;
  • switch(op)//判断运算类型 ,进行对应运算;
  • if(num==0)//分母为零,输出错误结束循环,flag确保不输出sum;
  • default://非法数据 ,输出错误结束循环,flag确保不输出sum;
  • if(flag==0)//判断是否输出sum ,printf("%d",sum);运算正常输出运算结果;

3.2.2代码截图

3.2.3测试数据

3.2.4PTA提交列表及说明

  • Q1:当分母为零时会输出sum;
  • A1:用flag进行判断是否输出;
  • Q2:程序无法编译;
  • A2:字符=忘记加单引号;
  • Q3:输入测试数据无法运算;
  • A3:未按照题目要求输入等于号;

3.3PTA题目三

对任意给定的一位正整数N,输出从11到NN的部分口诀表。输入在一行中给出一个正整数N(1≤N≤9),输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。

3.3.1算法分析

  • 定义i,,j用于循环条件,N用于确定输出行数;
  • for(i=1;i<=N;i++)后面数字的循环;
  • for(j=1;j<=i;j++)前面数字循环;
  • printf("%d%d=%-4d",j,i,ij);数字相乘并输出;
  • printf("\n");输完一行进入下一行;

3.3.2代码截图

3.3.3测试数据

3.3.4PTA提交列表及说明

  • Q1:不知道如何换行;
  • A1:调试得知第一个循环控制第一个数,当其运行一个周期进行换行;

4.代码互评

4.1代码截图

  • 同学代码:

  • 自己代码:

    4.2代码异同

  • 相同点
    1.对二进制转十进制思路都相同;
    2.循环条件相同;
  • 不同点
    1.自己的代码像是拼凑出来的,同学的代码将错误字符结合到循环外,简化了代码,使运算更简洁;
    2.对循环的条件判断,同学的更加具有概括性;

C语言作业04-数组的更多相关文章

  1. C语言博客作业04——数组

    1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量 1.2.1学习体会 这几周学习了数组,数组分为三大块:一维数组.二维数组和字符数组.数组相对于之前普通变量的好处就是可以储存数值,方便数据 ...

  2. C语言博客作业04—数组

    0.展示PTA总分(0----2) 展示3张关于"数组题目集"分数截图. 1.本章学习总结(2分) 1.1 学习内容总结 整理数组这章学习主要知识点,必须包含内容有: (1)数组查 ...

  3. C语言博客作业04数组

    0.展示PTA总分 1.本章学习总结 1.1 学习内容总结 1.int a[10];为定义数组,表示数组有10个数 2.数组的下标都是从0开始,到n-1结束 3.数组里元素的个数不能大于数组的长度 4 ...

  4. c语言作业04

    这个作业属于哪个课程 C语言程序设计Ⅱ 这个作业要求在哪里 (作业要求)[https://edu.cnblogs.com/campus/zswxy/SE2019-1/homework/9773] 我在 ...

  5. C语言I-博客作业04

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 C语言I博客作业04 我在这个课程的目标是 掌握使用for循环语句实现指定次数的循环程序设计 这个作业在那个具体方面帮助我实现目标 在编写 ...

  6. C语言作业总结

    .## 一.我学到的内容 二.我的收获 作业 学到的知识点简介 C语言I博客作业01 学习了markdown语法. C语言I博客作业02 学习了<提问的智慧>. C语言I博客作业03 了解 ...

  7. C语言|作业12—学期总结

    一. 我学到的内容 二. 我的收获 作业链接 收获 C语言l博客作业01 对这个专业.学科以及markdown语法有了初步了解,打印出了"Hello world!" C语言l博客作 ...

  8. C语言Ⅰ作业12—学期总结

    一.我学到的内容 二.我的收获 作业链接 收获 C语言Ⅰ博客作业01 认识了PTA编程,博客园,Markdown基本语法1,Markdown基本语法2 C语言Ⅰ博客作业02 PTA系统常见问题解答 C ...

  9. 我的第三次C语言作业

    我的第三次C语言作业 这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-2 这个作业要求在哪里 https://edu.cnblogs.co ...

  10. C语言学习004:数组与指针

    在C语言中,字符串实际上就是字符数组,在内存中字符串"Shatner"存储的形式是这样的

随机推荐

  1. 学习Hadoop+Spark大数据巨量分析与机器学习整合开发-windows利用虚拟机实现模拟多节点集群构建

    记录学习<Hadoop+Spark大数据巨量分析与机器学习整合开发>这本书. 第五章 Hadoop Multi Node Cluster windows利用虚拟机实现模拟多节点集群构建 5 ...

  2. Win10系统下Anaconda下安装多种Python函数库

    建议直接安装Anaconda,这是一个包含Numpy,Pandas,Sklearn等函数库的计算机科学软件包,下面的软件可以在此环境下进行安装下载. 一.计算机视觉 1. OpenCV图像处理 在ht ...

  3. 配置中心Nacos

    Nacos 是阿里巴巴2018年7月份开源的项目,如其名, Naming Configuration Service ,专注于服务发现和配置管理领域. Nacos 是什么?上面已经大概介绍了,更多详细 ...

  4. go语言学习--内核态和用户态(协程)

    go中的一个特点就是引入了相比于线程更加轻量级的协程(用户态的线程),那么什么是用户态和内核态呢? 一.什么是用户态和内核态 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核 ...

  5. vue 用正则保护路由参数的合法性

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Linux 的文件软链接如何删除

    Linux 的文件软链接如何删除创建软链接即用 ln -s 原始文件或文件夹 目标文件或文件夹 举例:[root@recover test]# pwd/test[root@recover test]# ...

  7. mvcmovie sample 在window10 下的部署问题(HTTP Error 500.19 - Internal Server Error)

    mvcmovie sample 在window10 下的部署问题 使用VS2018配置好了mvcmovie sample,发布到IIS后,打开报错: HTTP Error 500.19 - Inter ...

  8. centos 下安装mulval工具

    我这里采用的是centos 6.5版本系统 MulVAL是企业网络安全分析的工具.它使用漏洞扫描程序(OVAL / Nessus)作为攻击路径生成的数源,其中包括扫描结果和网络可访问性信息. 在这之前 ...

  9. python-pytest学习

    一:pytest基于unittest之上的单元测试框架1.自动发现测试模块和测试方法:2.断言使用assert+表达式即可:3.可以设置会话级.模块级.类级.函数级的fixtures :数据准备+清理 ...

  10. Python全栈开发记录_第七篇(模块_time_datetime_random_os_sys_hashlib_logging_configparser_re)

    这一篇主要是学习python里面的模块,篇幅可能会比较长 模块的概念:在Python中,一个.py文件就称之为一个模块(Module). 模块一共三种: python标准库 第三方模块 应用程序自定义 ...