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


    一、PTA实验作业(5分)

    必须在7-8,7-9,7-10中选一题介绍设计思路。

    题目1:7-3 倒顺数字串

    1. 本题PTA提交列表

    2. 设计思路

    1.定义整型number,i。
    2.输入正整数number
    3.若number不等于1
    4.for(i=1;i<=number;i++)
    5.输出"i "
    6.for(i=number-1;i>1;i--)
    7.输出"i "
    8.结束if
    9.输出1

    3.代码截图

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

    1.当n等于1时,输出两个一导致答案错误,利用if语句,单独讨论等于1时的输出,
    并且在末尾直接输出一个不带空格的1.

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

    1. 本题PTA提交列表

    2. 设计思路

    1.定义整型变量n,i,j
    2.for(j=1;j<=(n/2)+1;j++)用于输出前半部分
    3.for(i=1;i<=n-2j+1;i++)嵌套循环语句,输出前半部分应该有的空格
    4.输出" "
    5.for(i=1;i<=2
    j-1;i++) 输出应有的*
    6.输出"* "
    7.输出" "换行
    8.for(j=1;j<=n/2;j++)输出下半部分
    9.for(i=1;i<=2j;i++)
    10.输出" "
    11.for(i=n-2
    j;i>=1;i--)
    12.输出"* "
    13.输出换行符

    3.代码截图

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

    1.输出的空格错误,导致输出图形非菱形,利用devc依次输出图形找出错误的代码
    2.行数不对,利用了for(j=1;j<=(n/2)+1;j++)以及for(i=n-2*j;i>=1;i--)输出了应有的函数

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

    1. 本题PTA提交列表

    2. 设计思路

    1.定义整型变量total number judge
    2.定义字符型变量ch
    3.令judge等于0
    4.输入一个整数total,读取第一个数字
    5.for(;;)无限循环
    6.读取字符以及数字
    7.if(ch'/'&&number0) 若分母为0 judge=2
    8.switch(ch)用switch对各种符号进行运算
    case'+' : total=total+number;break;
    case'-' : total=total-number;break;
    case'' : total=totalnumber;break;
    case'/' : total=total/number;break;
    case'=' : judge=1;break;
    default : judge=2;
    9.若judge=4或者2结束循环
    10.当judge=1,输出答案,judge=2,输出错误提示

    3.代码截图

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

    1未考虑分母为0以及错误符号的情况,用judge来判断,当错误符号或者分母为0,judge=2,当judge=2,输出错误提示

    二、截图本周题目集的PTA最后排名。(2分)

    PTA排名

    三、本周学习总结(3分)

    1.你学会了什么?

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

    如:int a[10 ]={0,1,2,3,4,5,6,7,8,9},下标10代表数组长度,大括号内数字代表初始值,a[0]=0,a[1]=1等等

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


    数组名是一个地址常量,存放数组内存空间的首地址

    1.3 为什么用数组?

    用于存放数据,方便代码编写

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

    (1)选择法排序

    1.定义整型变量i,min,k,n,temp
    2.定义数组a[10]
    3.输入整数n
    4.令i=0
    5.当i<n时,输入数,i++
    6.将输入的数依次存给数组a的n个元素
    7.当k=0;k<n-1,用imin来存放最小值
    8.判断数组a中元素与a[min]大小
    9.如果a[i]<a[min],min=i,最小元素与下标为k的元素交换
    10.temp=a[min];
    11.a[min]=a[k];
    12.a[k]=temp;
    13.输出排序后的数

    (2)冒泡法排序
    1.定义数组a[n]
    2.定义整型变量i,j,temp,n
    3.令i=0
    4.当i满足<=n-1时
    5.输入数a[n]
    6.使i++
    7.将这组数据依次赋值给a[n]
    8.判断相邻俩个数据,如果a[j]>a[j+1],进行交换
    9.temp=a[j]
    10.a[j]=a[j+1]
    11.a[j+1]=temp
    12.进行q-i次该步骤,可进行排序

    (3)直接插入法排序
    1.定义数组a[n]
    2.定义整型变量i,j,k,min
    3.i=0;
    4.满足i<=n-1时
    5.输入数a[n].
    6.i=0;
    7.min表示最小值
    8.判断数据a[j]和min的大小
    9.如果min<a[j],a[j]=min
    10.通过a[k+1]=a[k]将数据逐渐移动
    11.重复n-1次进行排序

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

    1.二分查找算法也称为折半搜索、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。
    2.二分从中间开始寻找,比较中间元素与查找元素大小,等于直接结束,否则从大于或者小于的那一半开始寻找
    3.顺序从特定的一方开始逐渐寻找

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

    如int a [2][3]={{1,2,3}{4,5,6}},2代表行,3代表列,123代表第一行3列元素

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

    将行下标与列下标互换,下三角i<=j 上三角i>=j

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

    运用于矩阵之中

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

    1.数组运用不熟练
    2.伪代码不太会写

  • 相关阅读:
    UVA120Stacks of Flapjacks
    [.NET] 基于windows mobile 5.0 开发环境配置说明
    C#实现UDP打洞
    webBrowser对跳转后的页面的处理
    Windows Mobile程序环境配置以及Windows Mobile与PC进行UDP通信总结
    C#【Fox即时通讯核心】 开发记录之三(知识储备:TCP UDP打洞)
    jqplot统计图工具简单例子
    订单编号
    windows mobile 5.0 PocketPC模拟器上网的设置 【正确】
    今明2年主要目标20112012
  • 原文地址:https://www.cnblogs.com/chenwenjie/p/7895507.html
Copyright © 2020-2023  润新知