详细内容如下:
代码部分:
#define _CRT_SECURE_NO_WARNINGS 1
31.循环语句while(注意初始化部分,判断部分,调整部分!!!!!)
// ps:多用于三大部分之间代码不多的情况
//while----表达式结果为非0,则一直执行,如果为0,则不执行
//常用场景:1.break篇
//#include<stdio.h> //int main() //{ // int i = 1;//初始化部分 // while (i <= 10)//判断部分 // { // // if (5 == i) // { // break;//在while循环中,break用于跳出所有代码,永久的终止循环 // } // printf("%d ", i);//1 2 3 4 // i++;//调整部分 // } // return 0; //}
// 常用场景:2.continue篇
//#include<stdio.h> //int main() //{ // int j = 1;//初始化部分 // while (j <= 10)//判断部分 // { // if (5 == j) // { // continue;//在while循环中,continue用于跳过contine后面代码,跳出本次循环 // } // printf("%d ", j); // j++;//1 2 3 4 调整部分 // } //}
//常用场景3.
//#include<stdio.h> //int main() //{ // int i = 0; // //ctrl+z表示getchar读取结束 // while ((i = getchar()) != EOF)//getchar输入一个函数并赋值(一个=是赋值,两个=是判断) // 给i,如果!=0,则执行循环 // { // putchar(i);//输出一个函数,此函数为输入的i // } // return 0; //} //
32.循环语句while2
//常用场景4.
//#include<stdio.h> //int main() //{ // char arr[20] = { 0 }; // printf("请输入密码\n");//打印字符串用%s // scanf("%s", arr);//程序和键盘之间有缓存区,scanf拿走缓存区的字符,不拿走\n // printf("请确认密码:>Y/N\n"); // //程序和键盘之间有缓存区,提取数据之前需要用getchar清除\n, // //否则会直接判断\n不等于1,但是一个getchar不够,所以需要多个getchar,即循环 // int arr1 = 0; // while ((arr1 == getchar())!='\n') // { // ;//用循环反复清理\n // } // int arr2 = getchar(); // if (arr2=='Y') // { // printf("密码正确\n"); // } // else // { // printf("密码错误\n"); // } // return 0; //}
//常用场景5.
#include<stdio.h> int main() { int ch = 0; while ((ch = getchar()) != EOF)//将ch赋予getchar,判断ch的值是否有效用EOF { if (ch < '0' || ch>'9') { continue;//跳出此次循环 } else putchar(ch);//输出的是输入的ch的值 } return 0; }