(1)实验代码(奇偶分家)
#include<stdio.h> int main() { int n,i,a,b,c; b=c=0; scanf("%d\n",&n); for(i=1;i<=n;i++){ scanf("%d",&a); if(a%2!=0&&a!=0) b++; else c++; } printf("%d %d",b,c); return 0; }
2 设计思路
(1)文字描述
第一步:仔细读题设计实验,首先定义变量用于存放数据,以及控制循环。
第二步:在循环中加入判断奇数还是偶数的算法,若是奇数,奇数的计数器加1否则偶数计数器加1。最后输出奇数和偶数分别多少即可。
(2)流程图
3.本题调试过程碰到问题及解决办法
经过我反复仔细的检查,把改代码复制到devc++上发现,在scanf程序里,没有输入&,所以没有地址导致错误。经修改即可,都是小错误,因为程序比较简单,确实找不到其他的错误了。
(1)实验代码(寻找最小值)
#include<stdio.h> int main(void) { int n,i,a,b; scanf("%d",&n); scanf("%d",&a); b=a; for(i=1;i<=n;i++){ scanf("%d",&a); if(b>a) b=a; } printf("min = %d",b); return 0; }
2 设计思路
(1)文字描述
第一步:仔细读题想想需要几个变量分别用来干什么,定义变量之后,在设计程序。
第二部:首先输入的值要先存放在一个变量中,在进行循环输入值与第一个值一一作比较,把较小的之赋值给第一个值,往此循环。得到最小值。
(2)流程图
3.本题调试过程碰到问题及解决办法
把改代码放入devc++中调试,分部查看变量的值发现if条件中的判断反了应该改为b>a,最后得到的才是最小值,否则得到的是最大值。并且改代码中没有给b一个值,之前应该再加上b=a,把第一次输入的a值存到b中,再一次一次作比较。这样更加严谨。
二、总结和学习进度条
1、总结这几周所学内容、遇到的问题以及解决方法。
最近几周老师在课上教的循环也好分支结构也好,首先我觉得理解上面很有困难,在面对一个编程题目的时候无从下手,仅仅是停留在可以按照书上打代码的阶段,不能进行独立的思考,没有整体的编程概念。通过mooc上的视频进行反复了解。听完实体课,再听网课,反复进行训练。显示书上的习题搞懂之后,再进行适当的改变过程。在网上也能找到初学者可以进行编写的c语言程序,进行反复练习,最后达到可以基本掌握这些结构和基本的题目解题思路。
2、点评3个同学的本周作业(在作业中给出被点评同学博客的超链接!超链接!),并邀请3名同学点评你的作业,无点评作业倒扣该题分数。
陶国宁作业评价超链接 李呈祥作业评价超链接 于海龙作业评价超链接
3、请用表格和折线图呈现你这几周的代码行数和时间、博客字数和时间、涉及的知识点。