700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > C语言循环结构程序(while循环 do while循环 for循环 break终止 continue结束)

C语言循环结构程序(while循环 do while循环 for循环 break终止 continue结束)

时间:2020-08-11 07:40:12

相关推荐

C语言循环结构程序(while循环 do while循环 for循环 break终止 continue结束)

while循环、do while循环、for循环、break终止、continue结束

环境:CentOS7;

循环条件:①循环体;②循环结束条件;

特点:计算机只处理有条件的循环(有效性、确定性和有穷性)。

while循环(先判断再循环,内嵌语句)

例子1:1+2+3+…+100

#include <stdio.h>int main() {int i, sum = 0;i = 1;while (i <= 100) {sum += i;i++;}printf ("%d\n", sum);return 0;}[root@chenshuyi c]# gcc -o while while.c[root@chenshuyi c]# ./while5050

实际应用:判断年份时平年还是闰年

#include<stdio.h>int main(){int year;printf("输入-1可退出程序\n");while(1){printf("请输入一个年份:");scanf("%d",&year);if(year == -1){break;}if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){printf("%d为平年\n",year);}else{printf("%d为闰年\n",year);}}return 0;}~[root@chenshuyi c]# ./while3输入-1可退出程序请输入一个年份:为平年请输入一个年份:-1

do while(先循环再判断)

例子1:1+2+3+…+100

#include <stdio.h>int main() {int i, sum = 0;i = 1;do {sum += i;i++;}while (i <= 100);printf ("%d\n", sum);return 0;}[root@chenshuyi c]# gcc -o dowhile1 dowhile1.c[root@chenshuyi c]# ./dowhile15050

for循环(循环变量赋初值;循环条件;循环变量增值)

#include <stdio.h>int main() {int i, sum = 0;for (i = 1; i <= 100; i++){sum += i;}printf("%d\n", sum);return 0;}[root@chenshuyi c]# gcc -o for for.c[root@chenshuyi c]# ./for5050

break语句(提前结束循环,终止整一个)

例子:现班不超过30人,使程序统计出该班的平均成绩,收到负数的时候结束循环。

[root@chenshuyi c]# cat break.c#include <stdio.h>int main() {float score, sum = 0, average;int i, n;for (i = 1; i < 31; i ++) {scanf ("%f", &score);if (score < 0) break;sum = sum + score;}n = i - 1;average = sum/n;printf ("n = %d, average = %7.2f\n", n, average);return 0;}[root@chenshuyi c]# ./break7788991233445566-1n = 8, average = 59.25#flloat score定义一个浮点型变量score#%7.2f打印小数点前7位(不足七位补前置0);小数点后两位(不足两位补0)。

continue语句(提前结束本次循环,只是终止本次循环非整个)

PS:结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否1执行循环的判断。

例子:输入一个班全体同学的成绩,把不及格的学生成绩输出,并求及格学生的平均成绩。

#include <stdio.h>int main() {float score, sum = 0, average;int i, n = 0;for (i = 1; i < 6; i ++) {#假设不及格的人有5个printf ("please enter score:");scanf ("%f", &score);if (score < 60) {#如果不及格printf ("Fail:%7.2f\n", score); #结束本次循环,输出不及格的成绩continue;}sum = sum + score;n = n + 1; #统计不及格的人数}average = sum/n; #及格的平均成绩printf ("\n n = %d, average = %7.2f\n", n, average); #输出及格学生人数以及平均分return 0;}[root@chenshuyi c]# gcc -o continue continue.c[root@chenshuyi c]# ./continueplease enter score:44Fail: 44.00please enter score:55Fail: 55.00please enter score:60please enter score:70please enter score:90n = 3, average = 73.33

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。