第二次作业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 | 0 | 有关简单函数的知识 |
第15周 | 2100 | 13 | 0 | 0 | 有关较深层的函数的知识 |
第16周 | 2700 | 14 | 0 | 0 | 有关简单数组的知识 |
第17周 | 2500 | 13 | 1000 | 5.5 | 加深对数组的知识 |
(2)折线图