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

一、PTA实验作业

题目1: 区位码输入法

1.本题PTA提交列表

1232060-20171126190722953-2035492383.png

2. 设计思路

  • 第一步:定义变量,a放区码,b放位码,s放区位码。
  • 第二步:输入s。
  • 第三步:取s的前两位数为a=s/100,后两位数为b=s-a*100。
  • 第四步:分别字符输出a+160和b+160。

    3.代码截图

    1232060-20171126191436921-1016614796.png

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

  • 刚开始时直接输入区码和位码,然后输出,但应该输入区位码,在分解成区码和位码。

题目2: 判断合法标识符

1.本题PTA提交列表

1232060-20171126191942625-57505909.png

2. 设计思路

  • 第一步:定义变量i,j,n,用数组定义字符变量c[80]。
  • 第二步:输入n。
  • 第三步:for i=1 to n,输入字符c[0]。
  • 第四步:如果第一个字符为下划线或者字母,则继续判断下一个字符。否则输出No。
  • 第五步:如果下一个字符为空格或不是下划线或不是字母或者不是数字,则输出No。
  • 第六步:否则continue继续判断。
  • 第七步:如果字符为0时,则全部判断完,输出Yes。

    3.代码截图

    1232060-20171126193022203-420935177.png

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

  • 输入空格时,输出会做出空格两旁的判断,输出两个结果,解决方法是把空格做为字符判断条件。

题目3:简单计算器

1.本题PTA提交列表

1232060-20171126193424984-44222639.png

2. 设计思路

  • 第一步:定义变量a和b放运算数,sum放结果并赋值0,定义字符变量ch。
  • 第二步:输入a。
  • 第三步:如果输入的字符不是=,则输入b,否则输出a。
  • 第四步:如果ch=='/'&&b==0,输出ERROR,结束程序。
  • 第五步:判断字符如果是四则运算,则分别进行a,b之间的四则运算并将结果sun赋值给a再重复判断。
  • 第六步:否则输出ERROR,结束程序。
  • 第七步:输出a。

    3.代码截图

    1232060-20171126194308125-1126069757.png

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

  • 刚开始不知道运算后怎么输出值,解决方法是将每一步运算结果赋给运算数,再进行下一步计算。

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

1232060-20171126194556265-1515341627.png

三、本周学习总结

1.你学会了什么?

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

  • 定义格式为类型名 数组名 [数组长度]; 初始化格式为类型名数组名 [数组长度] = {初值表}; 当初始化把数组中的每一个数都初始化时,可以省略数组长度

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

  • 连续的,线性的
  • 数组名是一个地址常量,存放数组内存空间的首地址

    1.3 为什么用数组?

  • 让程序变得简单,减少繁琐的代码量。

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

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

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

  • 二分查找法就是先寻找数组中间位置的数,判断其是否为要寻找的数,不是的话,大于要找的数,则往左继续二分,小于要找的数,则往右二分。
  • 二分查找法适用于排序过的数组,速度快,顺序查找法要遍历数组,在数组很大时效率低,但对数组本身没有要求,适用于短数组

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

  • 二维数组定义格式为类型名 数组名 [行长度][列长度]
  • 初始化格式为类型名数组名 [行长度][列长度] = { {初值表0}, ... ,{初值表k}, ...} 如果初始化了全部行,则可以忽略行长度

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

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

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

  • 矩阵问题

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

  • 对数组的行列下标要从0开始,经常会犯错
  • 对二维数组还不够理解

转载于:https://www.cnblogs.com/PENGXI/p/7900227.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值