作为一个懒汉,我承认三天搞循环着一章着进度属实是有些*蛋了(那什么文明文明不带脏字)。
关于循环,翁大爷一开始给我们举的例子就是数数,通过数某个整数的位数(例如99,999,9999,99999这种)。但是由于越往后越多,所以他提出了用循环的方法来解决数过大导致的数位数的不便,并且用我们高中学过的程序框图进行推导
像这样,从而引出思想。
在循环里又分为while和do while两种循环
我们先说while循环,它的意思就是当条件满足时,不断重复执行循环体内的语句,知道条件不满足为止。
再说do while循环,我觉得他和while最大的区别就是他是在循环结束的时候才会来判断条件,即do while循环至少也会执行一次下去。但作为循环他的后续和while循环一样,在条件满足时执行下去而不满足时则会停止。
然后翁大爷又讲述了一下循环的应用`#include
`#include <stdio.h>
int main()
{
int number = rand()%100+1;
int count = 0;
int a = 0;
printf("我已经想好了一个1到100之间的数。");
do {
printf("请猜这个1到100之间数:");
scanf("%d", &a);
if ( a > number ) {
printf("你猜的数大了。");
} else if ( a < number ) {
printf("你猜的数小了。");
}
count ++;
} while (a != number);
printf("太好了,你用了%d次就猜到了答案。\n", count);
return 0;
}`
在这里的do while循环是先进入了循环体,后对用户输入的数据进行判断,根据三种不同的结果来输出不同的语句。(翁大爷还说如果是经验丰富的人可以通过经验在最少七次内猜中计算机所给的数,但是我几十次都没猜到,我再一次展示了我来自非洲的神力。不解释!)
反正循环的内容就这些,最后还做了一个十分恶心人的作业。为此还打搅了本应该去睡觉的老张同学,我在这里表示惭(da)愧(kuai)惭(ren)愧(xin)。
#include<stdio.h>
int main()
{
int n;
int a=0;
int b=0;
scanf("%d",&n);
while(n!=-1)
{
if(n > 0);
{
if(n==1)
{
a++;
}
else if(n%2==0)
{
b++;
}
else
{
a++;
}
}
scanf("%d",&n);
}
printf("%d %d\n",a,b);
return 0;
}
怎么说这道题好呢,一开始的时候吧,我没想到有两个scanf的问题,而且呢也没有想到1%2=0的问题。可以说是忽视了很多事情,最后导致我被大爷的系统两分抬走。。。后来在老张和子怡的帮助下找出了问题,然后又把代码重新捋了一遍。才让过,不出意外,十分退场,我也算是对得起在床上响起鼾声的老张了。
没啥东西了,我承认今天有点急,所以很水...嗯...就这样...