第二次作业0

---恢复内容开始---

要求一:

作业要求博客链接https://edu.cnblogs.com/campus/hljkj/Cprogramming_2018Autumn_CST2018_4/homework/2502

要求二:

1.pta作业函数:

统计个位数字

(1)实验代码:

int Count_Digit ( const int N, const int D )
{
  int count=0;
  int n;
  if(N==D)
  {
    return 1;
  }
  if(N>0)
  n=N;
  else
  n=-N;
  while(n>0){
  if(n%10==D){
    count++;
  }
  n/=10;
  }
  return count;
}

 (2)解题思路:

1.定义记录位数的count和n;

2.判断N是否大于0,如果大于0则n直接等于N,如果小于则n=-N;

3.通过while循环,循环条件是n>0,循环程序为n%10是否等于D;

4.如果余数等于D,则计数器count++;

5.进行一次循环后使n=n/10 ;

6.输出

(3)流程图

 

 3.本题调试过程碰到问题及解决办法

 1.注意1:

2.断点测试:

 

 

2.求一组数中的最大值和次最大值

(1)实验代码

#include<stdio.h>
int main()
{
    int i;
    int max,cmax,a[10];
    for(i=0;i<10;i++)
    {
     scanf("%d",&a[i]);
    }
    max=cmax=a[0];
    for(i=1;i<10;i++)
    {
    {   
     if(max<a[i])
     max=a[i];
    }
    }
    for(i=0;i<10;i++)
    {
        if(cmax<a[i]&&a[i]!=max)
        {
            cmax=a[i];
        }
    }
    printf("max=%d,cmax=%d",max,cmax);
    return 0;
} 

 (2)解题思路

1.定义循环变量i,最大值max,次大值cmax和长度为10的数组a[10]

2.通过循环赋给数组a[10]值,

3.使最大值和次大值初始值为a[0],

4.通过循环,判断最大值,并使max等于最大值

5.再次循环判断出次大值的数值大小

6.输出最大值和次大值

(3)流程图

 3.本题调试过程碰到问题及解决办法

 1.代码错误提示:

 2.测试截图:

 

3.选择法排序

(1)实验代码

# include <stdio.h>
int main()
{
    int i, index, k, temp;
    int a[10];
    for(i = 0; i < 10; i++)
    {
        scanf("%d", &a[i]);
    } 
    for(k = 0; k < 3; k++)
    {
        index = k;
        for(i = k + 1; i < 10; i++)
        {
            if(a[i] < a[index])  
            {
                index = i; 
            }
        }
        temp = a[index];
        a[index] = a[k];
        a[k] = temp;
    }
    for(i = 0; i < 10; i++)  
    {
        printf("%5d",a[i]);
    }
    return 0;
} 

 (2)解题思路

1.定义变量i, index, k, temp和长度为10的数组a[10]

2.通过循环给数组赋值a[10]

3.在一个循环周期为3的循环中,循环一次使index=k

4.在循环中判断a[i]?<a[index},若成立则index=i

5.若通过 temp = a[index];
        a[index] = a[k];
        a[k] = temp;

6.通过循环输出a[i]输出,且长度为5行

2.流程图

   3.本题调试过程碰到问题及解决办法

1.错误截图

2.解决方法

第二,三个for循环位置调整

3.断点测试

三:

1.近几周学习函数与数组

2.数组中的冒泡排序法与选择排序法较为困难,通过ppt和mooc学习

四:

点评1:范鹏翔:https://www.cnblogs.com/fanpengxiang/p/10109294.html

点评2:刘政:https://www.cnblogs.com/lz66/p/10158770.html

点评3:黄兴宇:https://www.cnblogs.com/huangxingyu/p/10157156.html

四:

(1)表格

周数 此周代码行数/行 码代码所用时长/h 所写博客字数/字 写博客所用时长/h 所涉及的知识点
第14周 2200 13 0 有关简单函数的知识
第15周 2100 13 0 有关较深层的函数的知识
第16周 2700 14 0 0 有关简单数组的知识 
第17周 2500 13 1000 5.5 加深对数组的知识 

(2)折线图

posted @ 2018-12-21 20:45  袁潮  阅读(134)  评论(6编辑  收藏  举报