【C语言初学必看】一知半解的for循环嵌套for循环
??前言+目录:
初学C语言,常常遇到for循环中嵌套个for循环,初学者对于这种形式总是一知半解,这次我就整理了常见的for循环嵌套for循环的题目,我们一起争取一举拿下这类题。学废他们,以后再见到就不怕啦!每天都要学一点呀。加油,奋斗的我们!???
目录⛳
????做题前先学招:
for循环嵌套个for循环,就是以下类型???
for(...)——>" for(1) "
{
for(...)——>" for(2) "
{
}
}
#include <stdio.h>
int main()
{
int i=0;
int j=0;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("hahan");
}
}
return 0;
}
特别注意:for循环嵌套个for循环这类题,如果俩个for循环同时看,对于初学的同学来说很容易弄混淆,从而看不懂代码含义。有个好的方法是:先不看最外边的for循环,先看内部的for循环,很便于理解,先看 for(2) 后再看 for(1)。 //就这一句话,但是真的好用
???上题上题:
第一题:
解答:
代码:
//题目一:求 1!+2!+3!+...+9!+10! #include <stdio.h> int main() { int i = 0; int j = 0; int sum = 1; int ret = 0; for (i = 1; i <= 10; i++) { sum = 1; for (j = 1; j <= i; j++) { sum *= j; } ret += sum; } printf("ret=%dn", ret); return 0; }
第二题:
解答:
代码:
//题目二:字符金字塔 int main() { char ch = 0; scanf("%c", &ch); int i = 0; int j = 0; for (i = 0; i < 5; i++) { for (j = 0; j <= 5 - i; j++) { printf(" "); } for (j = 0; j <= i; j++) { printf("%c ", ch); } printf("n"); } return 0; }
第三题:
解答:
代码:
//题目三:打印100~200之间的素数 //备注:素数是只能被1和其本身整除的数 int main() { int i = 0; int j = 0; for (i = 100; i <= 200; i++) { for (j = 2; j <= i - 1; j++) { if (i % j == 0) break; } if (i == j) printf("%d ", j); } return 0; }
第四题:
解答:
代码:
//题目四:打印乘法口诀表 int main() { int n = 0; scanf("%d", &n); int i = 0; int j = 0; for (i = 1; i <= n; i++) { for (j = 1; j <= i; j++) { printf("%d*%d=%-2d ", i, j, i * j); } printf("n"); } return 0; }
第五题:
解答:
代码:
//题目五:冒泡排序 //备注:将无序的数组按顺序排列 int main() { int arr[] = { 2,4,6,8,10,1,3,5,7,9 }; int sz = sizeof(arr) / sizeof(arr[0]); int i = 0; int j = 0; for (i = 0; i < sz - 1; i++) { for (j = 0; j < sz - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } } } for (i = 0; i < 5; i++) { printf("%d ", arr[i]); } return 0; }
第六题:
解答:
代码:
//题目六:打印三子棋的棋盘 // | | // ---|---|--- // | | // ---|---|--- // | | #define ROW 3 #define COL 3 int main() { char board[ROW][COL] = { 0 }; int i = 0; int j = 0; for (i = 0; i < ROW; i++) { for (j = 0; j < COL; j++) { board[i][j] = ' '; } } for (i = 0; i < ROW; i++) { for (j = 0; j < COL; j++) { printf(" %c ", board[i][j]); if (j < COL-1) { printf("|"); } } printf("n"); if (i < ROW-1) { for (j = 0; j < COL; j++) { printf("---"); if (j < COL-1) { printf("|"); } } printf("n"); } } return 0; }
??结语:
做好一件事,最重要的就是 重复 和 坚持。一定要加油鸭 ??
如果对您有帮助的话,不要忘记点赞+关注哦,蟹蟹⛳
如果对您有帮助的话,不要忘记点赞+关注哦,蟹蟹⛳
如果对您有帮助的话,不要忘记点赞+关注哦,蟹蟹