这一节课并没有学习很多的新东西,跟多的是实践操作,从操作中学习去感知知识,自取从题目中悟出来这几种循环体的特点,以及如何把他们和前面的知识连接起来。
1、for循环
语法:
for(表达式1;表达式2;表达式3)
{
循环体
}
执行:首先执行表达式1,然后判断表达式2是否成立,如果成立执行循环体,执行表达式3,然后继续判断表达式2是否成立,执行循环体…
如果表达式2不成立则结束循环
表达式2为循环条件
表达式1只执行一次,通常为循环变量赋初值
表达式3通常为循环变量的改变
表达式1、2、3全部可以省略,但是分号不能省略
2、逗号运算符
, 作用:分隔符,可以将多个表达式,通过逗号,连接成一个逗号表达式
for(i=1,sum=0;1<101;sum+=i,i++)
逗号表达式的求解:自作至右来计算每个表达式,并且将最后一个表达式的值,作为整个逗号表达式的值,在实际编程时,很少使用逗号表达式的值
运算符(运算性质、优先级、结合性)----表达式(表达式的值)
int x=(i=1,sum=0); ===>x=0
for(i=0;(c=getchar())!=’’)
下面展示几个在课堂上做出来的几个代码
1.水仙花数
```c
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int a,b,c,y,x;
x=100;
do
{
a=x/100;
b=x/10-a*10;
c=x-x/10*10;
y=a*a*a+b*b*b+c*c*c;
if(y==x)
{
printf("%d\n",x);
}
x=x+1;
}while(x>=100&&x<1000);
}
```bash
运行后就会输出这几个数字:153,370,371,407.
2.手动输入一组东西,统计出不同种类的个数
```c
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int t1,t2,t3,t4;
char c;
t1=t2=t3=t4=0;
printf("随机输入一组字符,统计出不同类型的个数\n");
c=getchar();
while(c!='\n') //do
{
if(c>64&&c<92||c>96&&c<123)
{
t1++;
}
else
{
if(c>='0'&&c<='9')
{
t2++;
}
else
{
if(c==' ')
{
t3++;
}
else
{
t4++;
}
}
}
c=getchar() ;
}
// while(c!='\n"\');
printf("字母t1=%d,数字t2=%d,空格t3=%d,其他t4=%d,",t1,t2,t3,t4);
}
比如我们输入123abc+-*/,运行,就会发现
![在这里插入图片描述](https://img-blog.csdnimg.cn/20191101194111341.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTcyNTc5Nw==,size_16,color_FFFFFF,t_70)