今天,我们继续来学习C语言里的for循环
照常,上节课答案在最底下,上节课链接:
(四)C语言教程&if 判断与逻辑运算符
今天,我们学习C语言里比较重要的知识:for循环
这个可是C语言里重要的知识点,都好好学习哈,不懂多看看
先从例子开始
比如,我们现在要接受用户输入的三个数字
常规的写法是这样的:
scanf(“%d”,&a);
scanf(“%d”,&b);
scanf(“%d”,&c);
但是,如果我们要写十遍呢?一百遍呢?
肯定就不能这么写了,因此,for循环也就出来了
for循环基本格式如下:
for(单次表达式;条件表达式;末尾循环体)
{
中间循环体;
}
接下来,咱们来详细的讲一讲
for循环时,你需要有一个变量并赋值,随着循环次数的增多而增大,一旦这个变量到达了顶,就不能循环了,就自动退出了
这就是for的基本原理
那么变量呢?我们都会写上 int i ,当然,你也可以写int a,但是一般循环用i,j,k
赋值呢?i=0 ,这里 i=啥都行
所以单次表达式里写 i=0就OK,int i 写在前面
当然,你也可以写在一起,写成 int i=0 ;
条件表达式就是每次 i 的增加数量
比如 i = i+1,就是每次 i 循环一次后加 1
同样,i = i+2 就是加 2
但是一般我们不这样写,太繁琐了,一般我们写成 i++,这是代表 i +1
那么 i+2 呢?是 i+=2,当然你也可以把 i++写成i+=1
还有个末尾循环体,这就是那个条件,条件一满足,循环就退出
比如当 i >10时,循环退出,或者i >5也可以,当然>=也可以
中间循环体就是循环时要执行的语句
所以for循环的语句就都出来了,让我们试着写点例子:
接受用户输入的三个数字,然后输出它们的和
就可以写成:
for(int i=0;i<3;i++) //注意这是分号
{
scanf(“%d”,&a);
}
它的执行过程就是:i 为0,先判断i是不是小于3,然后执行让用户输入的操作,然后i++
i 为1,再判断一下,然后再执行让用户输入的操作,然后i++
i 为2,同样再判断,然后让用户输入,然后i++
i 为3,判断 i 不小于3,所以直接退出,循环体一共执行3次
当然你也可以写成 i=1;i<=3;i++这样的形式,或者 i=1;i<4;i++,都可以
但是一定要做到简单明了,让自己看得懂
除了for循环,其实还有别的循环方式,还有while循环和do-while循环,下面分别介绍一下
while(条件表达式)
{
执行语句;
}
do{
执行语句;
}while(条件表达式)
那么两者的区别呢?
while是先判断后执行,do-while是先执行后判断,while可能不会执行,但do-while一定会执行一次
其实本质上没啥区别,只是do-while不太一样,for和while可以互相转换
自己用着哪个好使就用哪个就行了,但是必须都得了解
给个例子:(九九乘法表)
include
int main(){
for (int i = 1; i <= 9; i++){
for (int j = i; j <= 9; j++){
printf(“%d*%d=%-3d”, i, j, i * j);
}
printf(“\n”);
}
return 0;
}
自己好好琢磨琢磨,其实不难
九九乘法表
对了,还没告诉你们%-3d的意思呢,-代表左对齐,3是占三个位置,不够用空格补齐,这样可以更好的格式化输出,便于人们阅读
如果不带呢?
不带-%3d,可以看出乱了好多
是不是乱了?带上还是很好看的
下面开始总结:
其实没啥总结的,自己在脑子里过一遍for,while和do-while的句式,作者还贴心的为你们准备了课后练习题,能做了就代表你会这节的知识了
上题答案:
include
int main(){
int age, score;
printf(“请输入您的年龄和分数:”);
scanf(“%d%d”, &age, &score);
if (age > 18){
if (score > 60){
printf(“你可以使用该软件\n”);
}
else{
printf(“你的分数太低了\n”);
}
}
else if (age < 18 && score > 60){
printf(“你太小了,不能使用\n”);
}
else{
printf(“输入有误\n”);
}
return 0;
}
作者亲测无误
今天的题在这里:
要求用户输入一个数字,判断是否为质数,如果是,则输出”这个数是质数”,如果不是,则输出”这个数不是质数” 作者:江晓锦翁 https://www.bilibili.com/read/cv7164268?spm_id_from=333.999.0.0 出处:bilibili
发表评论