循环嵌套和break语句
while、do while和for语句都可以形成嵌套,在这里我们着重分析for语句的嵌套。
程序1
简单的for语句嵌套
// 20-1简单for语句嵌套.c #include <stdio.h> //main() //{ // int i, j,k; // k = 0; // for (i = 0; i < 3; i++) // { // for (j = 0; j < 3; j++) // { // printf("%d ", ++k); // } // } //} //二维数组 main() { int i, j, k; k = 0; for (i = 0;i < 3;i++) { for (j = 0;j < 3;j++) { printf("%d", j); } printf(" "); } }
程序2
打印九九乘法表
// 20-2打印九九乘法表.c #include <stdio.h> main() { int num1, num2; //简易九九乘法表 for (num1 = 1;num1<10;num1++) { for (num2 = 1; num2 < 10; num2++) { printf("%d*%d=%d ", num1, num2, num1*num2); if (num1 == num2) break; } printf(" "); } printf(" "); }
注意:break语句不是跳出if中的花括号,而是直接跳出本层循环
程序3
小游戏:打飞碟
// 20-3综合程序打飞碟.c // #include <stdio.h> #include <Windows.h> void gotoxy(int x, int y); //获取坐标函数 main() { int x = 0, y = 0, x1 = 37, y1 = 22, x2 = 40, y2 = 18; //飞碟坐标 炮台的坐标 炮弹坐标 int c = 0; //获取键盘值 while (c != ' ') //没有 按回车键 { if (_kbhit()) //检测键盘按键 c = _getch(); //获取按键字符 system("cls"); //清楚屏幕 //飞碟成像 x++; if (x > 70) x = 0; gotoxy(x, y); printf("@@@@@@@@"); //炮台成像 gotoxy(x1,y1); printf("_^_"); if (c == ' ') //如果键盘符是 空格 { //炮弹成像 y2--; if (y2 < 0) { c = '