zoukankan      html  css  js  c++  java
  • C语言I博客作业08

    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 C语言I作业08
    我在这个课程的目标是 掌握使用whlie和do-whlie结构
    这个作业在那个具体方面帮助我实现目标 whlie和do-whlie结构得到训练
    参考文献 C语言程序设计I,百度

    1.PTA作业

    1.PTA实验作业

    1.1jmu-c-二进制转10进制

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

    1.1.1数据处理

    **数据表达:定义整型变量flag,sum,定义字符变量ch用于存放字符,%c代表输出单个字符,flag用于判断是否为1or0,sum为最终转化成十进制的值。
    **数据处理:
    定义变量ch为字符变量,用于存放字符
    int sum,flag定义整型变量
    while(ch!='\n')
    输入字符
    switch
    case'\n':
    end
    case'1':case'0':
    sum<--sum*2+ch-'0';
    end
    else 输出error input!
    flag<--1;
    ch<--'\n';
    if flag<--0
    then输出sum

    1.1.2实验代码截图

    1.1.3造测试数据

    输入数据 输出数据 说明
    111111 63 二进制
    89 error input! 非二进制
    10101010 170 二进制
    56 error input! 非二进制
    1001 9 二进制
    78 error input! 非二进制

    1.1.4PTA提交列表及说明

    提交列表说明:

    1.在编译的时候将while打成‘whlie’了看了好久才看出来;“;”打成中文符号了
    2.在运行时答案错误,经过询问和调试后改对了

    1.2整除光棍

    内容:这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你输出最小的解。
    提示:一个显然的办法是逐渐增加光棍的位数,直到可以整除x为止。但难点在于,s可能是个非常大的数 —— 比如,程序输入31,那么就输出3584229390681和15,因为31乘以3584229390681的结果是111111111111111,一共15个1。
    输入在一行中给出一个不以5结尾的正奇数x(<1000)。
    在一行中输出相应的最小的s和n,其间以1个空格分隔。

    1.2.1数据处理

    数据表达:定义整型变量n,i,x,flag,i是计算出的光棍位数。
    数据处理:
    定义变量i,n,x,flag
    输入n
    while(1)
    x<--(x*10+1)
    if x>=n
    then flag<--1;
    输出x/n
    else if flag<--1
    then 输出0;
    x<--x%n(把x除以n余数赋值给x);
    if x<--0
    then i<--i+1
    输出i的值

    1.2.2实验代码截图

    1.2.3造测试数据

    输入数据 输出数据 说明
    31 3584229390681 15 31乘以3584229390681的结果是111111111111111,一共15个1
    21 5291 6 21乘以5291的结果是111111,一共6个1
    101 11 4 101乘以11的结果是1111,一共4个1
    91 1221 6 91乘以1221的结果是111111,一共6个1

    1.2.4PTA提交列表及说明


    提交列表说明:
    1.答案错误:开始用的是for循环,条件没有用对,后来改了一下,但是还是没有改对
    2.答案错误:把for循环语句改为了while循环语句,把那个条件没有用对,后来问了大佬改正确了
    3.在编译的过程中有把while错打成‘whlie’

    2.代码互评

    同学的代码

    同学的代码

    自己的代码


    1.变量有一点不同,柏同学只用了3个变量(n,sum,count),我和黄同学用了4个变量(我的是N,sum,num,count)(黄同学n,sum,count,number)
    2.我和柏同学用的是while结构,黄同学用的是do-while结构
    3.柏同学还用了if结构,如果n=0的时候count=1,n不等于0时就进行while循环
    4.其他的大同小异,都差不多

    同学的代码

    自己的代码


    1、变量不同的有time,t,相同的有N,U,D,X(x)
    2、我是分别定义变量的,杨同学是先定义然后再令time=X=0
    3、她是用X=X+U,我是用x+=U,其实差不多
    4、在if循环条件中我的是x<N,她的是X>=N,她的是错误的,用12 3 1运算得到7

    3.学习总结

    3.1学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第六周 20h 60 用WinGW-w64来编译C程序 文档真的打不开,可能是电脑原因
    第七周 10h 90 关系运算,if-else语句,格式化输入语句scanf()
    第八周 8.5h 80 for的循环语句,指定次数的循环程序设计 不太会文字与数学的转换
    第九周 8h 100 函数的调用和定义的初步认识 自定义函数不熟悉
    第十周 10h 170 多分支结构、字符型数据类型和逻辑运算符 多个数据输出不熟练
    第十一周 11h 110 熟悉多分支结构switch语句的使用 逻辑思维能力差
    第十二周 9h 200 熟悉whlie和do-whlie结构 字符那方面不熟

    3.2累积代码行和博客字数

    3.3学习内容总结和感悟

    3.3.1学习内容总结

    3.3.2学习体会

    1.做题的感觉顺了一点,空闲时间多刷题吧
    2.伪代码不是特别懂,问了别人还是有点不太懂,每个人的都不太一样
    3.这一周事情真的太多了,熬夜时间又延长了,太难了
    4.时间过得太快了,已经第十二周了,要系统的复习加预习
    C语言的格式输出,%c,%y这些代表你要输出的数据的数据类型;%d 表示输出十进制有符号的整数。
    1、%u 十进制无符号整数。
    2、%f 表示输出浮点数。
    3、%s表示输出 字符串。
    4、%c表示输出单个字符。
    5、%p表示输出指针的值。
    6、%e表示输出指数形式的浮点数。
    7、%x, %X 表示输出无符号以十六进制表示的整数。
    8、%0 表示输出无符号以八进制表示的整数。
    9、%g表示输出自动选择合适的表示法。

  • 相关阅读:
    《数据结构第一章复习》
    《图的基本操作》
    《矩阵的一些基本操作》
    <矩阵的基本操作:矩阵相加,矩阵相乘,矩阵转置>
    《两个二维数组(矩阵)相乘》
    C#隐藏与显示系统任务栏和开始菜单栏按钮
    C#通过窗体属性缩小一定尺寸时,无法再缩小窗体尺寸问题
    C#一个窗体调用另一个窗体的方法
    C#异步线程
    C#中MessageBox.Show问题(让提示窗口不显示在任务栏中)
  • 原文地址:https://www.cnblogs.com/zhangsanri/p/11854065.html
Copyright © 2011-2022 走看看