码迷,mamicode.com
首页 > 其他好文 > 详细

C博客作业--指针

时间:2017-12-16 15:57:34      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:技术分享   --   es2017   效率   其他   end   处理   排名   for   

一、PTA实验作业

题目1:6-2 求出数组中最大数和次最大数

1.本题PTA提交列表

技术分享图片

2. 设计思路

定义max=0表示最大值,p,q用来互换数值,k,t用来存放最大值和次大值的下标
 for I=0  to I<n
   遍历数组,若*(a+i)>=max)
         max等于*(a+i)
             end for
                t存放最大值的下标值
 将最大值与数组第一个数互换
        max重新赋值为0;
    for j=1 to j<n  //寻找次大值,不用比较第一个数,既次大值为最大值
         遍历数组,若*(a+j)>=max)
         max等于*(a+j)
            end for
                k存放次大值的下标值
 将最大值与数组第二个数互换

3.代码截图

技术分享图片

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

  • 本题没有遇到问题,提交一遍就过了,然后想换看看有没有更容易简洁的代码,但怎么改好像差不多都这样吧

    题目2:6-4 找最大值及其下标

    1.本题PTA提交列表

    技术分享图片

2. 设计思路

定义max=0放最大值,i用来控制循环
for I=0 to i<n
    遍历数组,若*(a+i)>=max)
      max便赋值为*(a+i)
         *b存放最大值下标I
end for
返回 max
返回 *b

3.代码截图

技术分享图片

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

  • 这道题没有遇到问题,因为它跟第二道题差不多

    题目3:6-7 过滤字符串只保留串中的字母字符

    1.本题PTA提交列表

    技术分享图片

    2. 设计思路

    技术分享图片

3.代码截图

技术分享图片

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

技术分享图片
技术分享图片

  • 把i++放进if条件里面了,一直输不出来,最后通过调试找出来了。

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

    技术分享图片

    三、阅读代码

    代码一:6-8 使用函数实现字符串部分复制

    技术分享图片

  • 这代码是彭希同学的,很简洁明了。之前我差不多也是照这样做的,不过提示答案错误。这道题在devc上不能运行,在pta上就能答案正确,所以不好找错误,然后就只能重新换思路写代码。不过看到彭希同学这代码发现是真是很简洁。

    代码二:

    #include<stdio.h>
    main()
    {
    int  a[10]={1,2,5,8,9,10}, an=5,b[10]={1,3,4,8,12,18},bn=5;
    int  i,j,k,c[20],max=9999;
    a[an+1]=b[bn+1]=max;
    i=j=k=0;
    while((a[i]!=max)||(b[j]!=max))
    if(a[i]<b[j])  {c[k]=  a[i];   k++;  i++;}
    else           {c[k]=  b[j];   k++;  j++;}
    for(i=0;i<k;i++)  printf("%4d",c[i]); printf("\n");
    }
  • 以上程序分别在a数组和b数组中放入an+1和bn+1个由小到大的有序数,程序把两个数组中的数按由小到大的顺序归并到c数组中。这代码是课堂派数组里面的,很简洁明了,希望我们能够学习一下这样的做法

    四、本周学习总结

    1.自己总结本周学习内容。

  • 上一周对指针的概念还很迷糊,本周通过pta和书本开始逐渐掌握了。指针在处理一些字符串问题方面可以快速地解决,效率很高,但也容易产生混乱,所以要熟练指针概念;
  • 库函数是真的很快速便捷,很方便。像常见的字符判别函数(#include

    2.罗列本周一些错题。

    技术分享图片
    技术分享图片
  • j应该小于*n-1,不然下面a[j]=a[j+1]的时候可能会越界
    技术分享图片
    技术分享图片
  • (p-1)-32是只能遇到小写字母的情况下才有效,遇到其他情况就不能了。所以用toupper( (p-1))可以进行强制转换

C博客作业--指针

标签:技术分享   --   es2017   效率   其他   end   处理   排名   for   

原文地址:http://www.cnblogs.com/peng075078/p/8041256.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!