C语言博客作业--一二维数组

一、PTA实验作业

题目1:出生年

1. 本题PTA提交列表

2. 设计思路

    输入y,n。
    for i=y to i<10000.
        将各位数分别赋予a,b,c,d。
        定义数组f[10]={0}。
        f[a]=1;f[b]=1;f[c]=1;f[d]=1;
        定义sum=0;
        for j=0 to j<10.
            sum=sum+f[j];
        如果sum==n,输出i-y,i,并用break结束循环。

3.代码截图

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

  • 不知道怎么补0,解决方法是问同学。
  • 程序会进入死循环,解决方法是用break结束。

题目2:将数组中的数逆序存放

1. 本题PTA提交列表

2. 设计思路

    定义i,j,n;
    输入n;
    定义a[n];
    for i=0 to i<n
        输入n个数;
    for j=n-1 to j>=0
        如果j==n-1 输出a[j];
        否则输出空格+a[j];

3.代码截图

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

  • 没有注意行末不得有多余空格,解决方法是先输出最后一个数,然后依次倒序输出空格加剩余数。

题目3:数组循环左移

1. 本题PTA提交列表

2. 设计思路

    定义i,n,m,k;
    输入n,m;
    定义a[n];
    for i=0 to i<n
        输出n个数;
    m=m%n;
    输出a[m];
    for i=m+1 to i<n
        输出空格+a[i];
    for i=0 to i<m
        输出空格+a[i];

3.代码截图

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

  • 没有注意多余空格,解决方法是先输出a[m],再输出其他数。
  • 没有考虑到m>=n的情况,解决方法是m=m%n。

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

三、同学代码结对互评

1.互评同学名称

  • 梁志湖

2.我的代码、互评同学代码截图

  • 我的代码
  • 他的代码

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。

  • 他的比较长,喜欢我的风格。

四、本周学习总结

1.你学会了什么?

1.1 C中如何存储字符串?

  • 用字符型数组存储字符串。

1.2 字符串的结束标志是什么,为什么要结束标志?

  • 结束标志:\0
  • 原因:如果没有\0,那么在使用系统函数处理字符串的时候,函数就不能准确判断字符串在哪里结束,从而可能导致数组越界。

1.3 字符串输入有哪几种方法?

  • 使用循环结构和scanf("%c", )
  • scanf("%s", )
  • gets()

1.4 数字字符怎么转整数,写个伪代码?

  • 定义字符ch存放数字字符,输出ch-'0'

1.5 16进制、二进制字符串如何转10进制?写伪代码?

  • 16进制:
定义字符数组a[100]存储16进制字符串,result为转化后结果
number=0
for i=0 to a[i]=='\0'
若a[i]为字符0到9,result=result16+a[i]-'0';
若a[i]为'a'到'f',result=result16+a[i]-'a'+10;
若a[i]为'A'到'F‘,result=result16+a[i]-'A'+10;
end
输出number
  • 2进制
for i=0 to a[i]=='\0'
若a[i]为字符0或1,result=result2+a[k]-'0';
end
输出number

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

  • 对字符串数组不够理解和利用。

3.期中考试小结

3.1 你认为为什么没考好?

  • 概念不会。
  • 粗心大意,卷面不整洁。

3.2 罗列错题。

  • 选择题1,4,6,11,15,16,20。
  • 分析题2,3。
  • 填空题7,8,9,10。
  • 改错题1,2。
  • 编程题1,2,3。

3.3 下半学期要怎么调整C的学习?

  • 认真听老师讲,上课努力做笔记。
  • 认真对待作业,遇到不会的及时提问。
posted @ 2017-12-03 17:45  做人要有疯度  阅读(228)  评论(0编辑  收藏  举报