C语言博客作业--数据类型

一、PTA实验作业

题目1:7-4 打印菱形图案

1.本题PTA提交列表

2.设计思路

       /上部分/
1.定义变量n储存高度,i,j,k循环变量
2.输入n
3.for i=1 to i>(n+1)/2
4.for j=1 toi>n-2*i+1
   输出空格  4end
5.for k=1 to k>2*i-1
   输出*      5end
6.输出换行  3end
     /下部分/
7.for i=(n+1)/2-1 to i=0
8.for j=1 to j>2*i-1
   输出空格 8end
9.for k=1 to k>2*i-1
   输出*   9end
10 输出空行 7end

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明

  • 格式错误:下半部分循环条件设置错误,本该是i>0,被我设置为i>=0,就导致最后结果多一空行
  • 编译错误:变量未声明就使用,在编译器提示下找到错误

题目2:7-6 掉入陷阱的数字

1.本题PTA提交列表

2.设计思路

  定义n0,n1,n2
  输入n0
  for i=1 to   
   for    
   n2=n2+n1%10 ,n1=n1/10
     如果n1=0 end
  n2=n2*3+1,按题目格式输出
    如果n2=0  end
     n0=n2    n2=0

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明

  • 运行超时 因为循环条件设置失误导致程序死循环

题目3:7-10 简单计算器

1.本题PTA提交列表

2.设计思路

定义变量 number1存放操作数1,number2存放操作数2字符变量op
输入number1
while 输入op不为等号
判断符号,执行相应运算
输出

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明

  • 部分正确 没有考虑分母为0,whie内输入语句没括号,在pta提示中发现问题

二、截图本周题目集的PTA最后排名

三、本周学习总结

1.你学会了什么?

1.1 一维数组如何定义、初始化?

  • 可以在输入n之后定义,也可以定义一个足够大的数组,用循环结构给他初始化

1.2 一维数组在内存中结构?可画图说明。数组名表示什么?

  • 数组名表示数组在内存中的起始地址

1.3 为什么用数组?

  • 使用数组会让程序变的简单,而且避免了定义多个变量的麻烦

1.4 介绍选择法、冒泡法、直接插入排序如何排序?伪代码展示.

  • 冒泡法:循环n趟,每趟比较n-i次,相邻比较,逆序交换,大数沉底
  • 选择法:n个数循环n-1趟,将第一个数作为最大数,比较n次,与后面数比较,如果后面数比较大,记住他的下标,与最大数交换
  • 插入法:循环n趟,将待插入数暂存于变量t中,在数组中寻找插入位置,若未找到插入位置,则当前元素后移一个位置

1.5 介绍什么是二分查找法?它和顺序查找法区别?

  • 每次将数组折半,判断查找的数所在区间,再次折半,直到找到该数或无法折半,区别:二分法要求数组按顺序排列,但他效率一般比较高

1.6 二维数组如何定义、初始化?

  • 输入n后定义a[n][n],用嵌套循环输入

1.7 矩阵转置怎么实现?方阵中:下三角、上三角、对称矩阵的行标i列标j的关系?

  • 用嵌套循环遍历数组,如果i<j,就交换i,j的值,下三角:列小于行,上三角列大于行

1.8 二维数组一般应用在哪里?

  • 一般运用在矩阵的问题

2.本周的内容,你还不会什么?

  • 当时不懂该代码作用,现在知道他是用于进制转换,所以会做了
posted @ 2017-11-25 15:18  Airoure  阅读(412)  评论(5编辑  收藏  举报