C语言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("haha\n");
        }
    }
    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=%d\n", 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;
}

到此这篇关于C语言for循环嵌套for循环在实践题目中应用详解的文章就介绍到这了,更多相关C语言for循环内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • C语言菜鸟基础教程之for循环

    先看程序: #include <stdio.h> int main() { for(int i = 0; i < 5; i++) { printf("i = %d\n", i); } printf("Loop ended!\n"); return 0; } 运行结果: i = 0 i = 1 i = 2 i = 3 i = 4 Loop ended! for循环的语句结构为: for(表达式1; 表达式2; 表达式3) {     语句; } 其执

  • C语言中for循环问题(一个小坑需注意)

    今天分享一下C语言中的for循环中我们常常忽略的小问题. 举一个小例子来说明,大家也可以自己先算一下哦 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> int main() { int a=0; int b=0; for(a=0,b=0;b=0;a++,b++) b++; return 0; } 这是一道面试题,问程序运行几次呢?运行结果如何? 其实这个小题关键是我们有没有被上图所示的b=

  • 快速学习C语言中for循环语句的基本使用方法

    对于某个特定任务我们可以采用多种方法来编写程序.下面这段代码也可以实现前面的温度转换程序的功能:#include <stdio.h> /*打印华氏温度-摄氏温度对照表*/ main() { int fahr; for (fahr = 0; fahr <= 300; fahr = fahr + 20) printf("%3d %6.1f\n", fahr, (5.0/9.0)*(fahr-32)); } 温度的下限.上限和步长都是常量, printf 函数的第三个参数必

  • c语言for、while和do-while循环之间的区别

    for,while,do-while区别 循环结构 1.初始化变量:for循环当中定义的初始化变量,只有自己才能用:while和do-while循环,初始化变量本来就在外面,所以外面也照样可以使用.2.执行次数:for循环和while循环是(先判断后执行),但是do-while循环是(先执行后判断).3.使用的普遍性不同:绝大多数情况下,三种循环可以来回转换.但是凡是次数确定.范围确定的情况,使用for循环. 详细例子如下:编程计算1+2+3+……+100a.用for循环 #include <s

  • C语言 while for do while循环体详解用法

    while循环 表达式: while(表达式) { 循环语句: } while 语句执行流程图: 例子: 打印1-10的数字 #include <stdio.h> int main() { int i = 1; while(i<=10) { printf("%d ", i); i +=1; } return 0; } 注意 ①在while中遇到break,终止整个循环 ②continue ,跳过本次循环continue后边的代码,直接去while循环的判断部分,进行下

  • 从头学习C语言之for语句和循环嵌套

    目录 for语句: 前言: 注意事项: 语句形式: 执行顺序: 示例: 循环嵌套: 语句形式: 流程图: 示例: 总结 for语句: 前言: 循环的基本结构离不开三个基本动作: 初始化计数器 循环条件 更新计数器 int count=0; while(count<10) { printf("fishc!\n); count=count+1; 注意事项: 1.C99允许再for语句的表达式1中定义变量(在for循环里定义的变量出了循环就不能用了), 如:for(int i=0;i<10

  • C语言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("ha

  • C语言递归在实践题目中应用详解

    目录 递归知识点 题目 第一题 第二题 第三题 第四题 第五题 第六题 第七题 递归知识点 递归概念:程序调用自身的编程技巧称为递归( recursion). 递归做为一种算法在程序设计语言中广泛应用. 一个过程或函数在其定义或说明中有直接或间接 调用自身的 一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解, 递归策略 只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量. 通俗理解就是:函数自己调用自己 递归的主要思考方式就是大事化

  • C语言rewind与fseek函数之随机读写文件的用法详解

    前面介绍的文件读写函数都是顺序读写,即读写文件只能从头开始,依次读写各个数据.但在实际开发中经常需要读写文件的中间部分,要解决这个问题,就得先移动文件内部的位置指针,再进行读写.这种读写方式称为随机读写,也就是说从文件的任意位置开始读写. 实现随机读写的关键是要按要求移动位置指针,这称为文件的定位. 文件定位函数rewind和fseek 移动文件内部位置指针的函数主要有两个,即 rewind() 和 fseek(). rewind() 用来将位置指针移动到文件开头,前面已经多次使用过,它的原型为

  • R语言利用loess如何去除某个变量对数据的影响详解

    R语言介绍 R语言是用于统计分析,图形表示和报告的编程语言和软件环境. R语言由Ross Ihaka和Robert Gentleman在新西兰奥克兰大学创建,目前由R语言开发核心团队开发. R语言的核心是解释计算机语言,其允许分支和循环以及使用函数的模块化编程. R语言允许与以C,C ++,.Net,Python或FORTRAN语言编写的过程集成以提高效率. R语言在GNU通用公共许可证下免费提供,并为各种操作系统(如Linux,Windows和Mac)提供预编译的二进制版本. R是一个在GNU

  • R语言逻辑回归、ROC曲线与十折交叉验证详解

    自己整理编写的逻辑回归模板,作为学习笔记记录分享.数据集用的是14个自变量Xi,一个因变量Y的australian数据集. 1. 测试集和训练集3.7分组 australian <- read.csv("australian.csv",as.is = T,sep=",",header=TRUE) #读取行数 N = length(australian$Y) #ind=1的是0.7概率出现的行,ind=2是0.3概率出现的行 ind=sample(2,N,rep

  • C语言自增(++)和自减(--)实例详解

    一个整数自身加一可以这样写: a+=1; 它等价于a=a+1;. 但是在C语言中还有一种更简单的写法,就是a++;或者++a;.这种写法叫做自加或自增:意思很明确,就是自身加一. 相应的,也有a--和--a,叫做自减,表示自身减一. ++和--分别称为自增和自减运算符. 自增和自减的示例: #include <stdio.h> #include <stdlib.h> int main() { int a = 10, b = 20; printf("a=%d, b=%d\n

  • Vue elementUI表单嵌套表格并对每行进行校验详解

    目录 效果展示 代码链接 关键代码 表格数据 组件嵌套 校验方法 重置方法 完整代码 总结 效果展示 先看看这是不是需要的效果^_^ 如图,ElementUI 表单里嵌套了表格,表格内每行能进行[保存][新增][编辑][删除][重置]等操作,同时可以对每行的某些字段进行校验(而不是整个表单校验!),这种需求很常见,所以记录下来. 代码链接 gitee地址 关键代码 表格数据 // 数据格式必须是[对象嵌套数组],[form]绑定表单,[list]绑定表格 form: { // 表格数据 list

  • C语言中条件编译详解

    通常情况,我们想让程序选择性地执行,多会使用分支语句,比如if-else 或者switch-case 等.但有些时候,可能在程序的运行过程中,某个分支根本不会执行. 比如我们要写一个跨平台项目,要求项目既能在Windows下运行,也能在Linux下运行.这个时候,如果我们使用if-else,如下: Windows 有专有的宏_WIN32,Linux 有专有的宏__linux__ if(_WIN32) printf("Windows下执行的代码\n"); else if(__linux_

  • C语言开发实现井字棋及电脑落子优化示例详解

    目录 总体思路 项目的创建 测试结果 各函数代码的实现 初始化二维数组 打印棋盘 玩家下棋 电脑下棋 判断电脑是否有位置可以获胜 判断玩家是否有位置获胜 判断输赢 判断和棋 声明代码 测试代码 总结 总体思路 井字棋棋盘我们总体可以当成一个二维数组来操作,我们分别需要实现初始化二维数组,打印棋盘,玩家下棋,电脑下棋,判断输赢等代码 项目的创建 我们创建了头文件用于放函数的声明,game.c文件放置函数的实现,test.c文件用于测试. 测试结果 电脑获胜: 玩家获胜: 平局: 各函数代码的实现

  • 实例详解JS中的事件循环机制

    目录 一.前言 二.宏.微任务 三.Tick 执行顺序 四.案例详解 1.掺杂setTimeout 2.掺杂微任务,此处主要是Promise.then 3.掺杂async/await 一.前言 之前我们把react相关钩子函数大致介绍了一遍,这一系列完结之后我莫名感到空虚,不知道接下来应该更新有关哪方面的文章.最近想了想,打算先回归一遍JS基础,把一些比较重要的基础知识点回顾一下,然后继续撸框架(可能是源码.也可能补全下全家桶).不积跬步无以至千里,万丈高楼咱们先从JS的事件循环机制开始吧,废话

随机推荐

其他