第五章for语句和循环嵌套

本文介绍了五个编程实例,涉及阶乘计算、平均成绩统计、循环嵌套应用,如找出1到1000中各位数字和为5的数,以及三位奇数的组合。通过穷举法演示了如何用C语言实现九九乘法表、素因数分解和分解数字成奇数组合。
摘要由CSDN通过智能技术生成

1.课堂练习

例1:阶乘计算(1!+2!+3!+...+)

分析:阶乘公式:t=t*n;n=1,2,3;

求和公式:s=s+t;

常用算法:(1)累计计算(t=1或第一项) (2)累加计算(sum=0或第一项)

#include<stdio.h>
void main()
{
	int n,m;
	long sum=0,t=1;
	scanf("%d",&m);
	for(n=1;n<=m;n++)
	{
		t=t*n;
		printf("%d!=%ld\n",n,t);
		sum=sum+t;
	}
	printf("sum=%ld",sum);
	return 0;
}

2. 例题5-6 编写程序,统计某班30名学生C语言课程的平均成绩。

#include<stdio.h>
int main()
{
	double aver,sum;
	int i,score,n=30;
	sum=0;
	for (i=1;i<=n;i++)
	{
		scanf("%d",&score);
		sum=sum+score;
	}
	aver=sum/n;
	printf("班级的平均成绩是%5.1lf分。\n",aver);
	return 0;
}

 3.循环嵌套

循环嵌套结构:一个循环语句的循环体内包含另一个完整的循环语句,称为循环嵌套结构。

例5-7 编写程序,计算1~1000中有多少个各位数字之和为5的数,并输出这些数字。

#include<stdio.h>
int main()
{
	int i,sum,k,count=0;
	for (i=1;i<=1000;i++)
	{
		sum=0;
		k=i; /*处理当前数据*/ 
		while (k!=0)
		{
			sum=sum+k%10; /*位数求和*/ 
			k=k/10;  /*对数据进行位数分解*/ 
		}
		if(sum==5)
		{
			count++; /*满足位数求和条件,计数加1*/ 
			printf("%d,",i);
		}
	}
	printf("\n 共有%d个数符合条件。\n",count);
	return 0;
}

 例题5-8 编写程序,计算数字0~9可以组成多少个没有重复的三位奇数,输出统计结果以及符合条件的奇数。

#include<stdio.h>
int main()
{
	int i,j,k,count;
	count=0;
	for(i=1;i<=9;i++)  /*百位数的处理*/ 
	for(k=1;k<=9;k=k+2) /*个位数的处理,k=k+2为奇数*/
	if(k!=i)
	for(j=0;j<=0;j++) /*个位数的处理*/
	if(j!=i&&j!=k)
	{
		printf("%d%d%d,",i,j,k);
		count++;
	 } 
	 printf("\ncount=%d\n",count);
	 return 0;
}

 此类问题的解决需要将所有满足条件的可能情况全部列出(穷举法)。本例题中对百位、十位、个位分别循环处理,百位的变化范围为1~9,十位的变化范围为0~9,个位的变化范围为1、3、5、7、9。

例5-9 编写程序,输出九九乘法表。

#include<stdio.h>
int main()
{
	int i,j;
	for(i=1;i<=9;i++)
	{
		for(j=i;j<=9;j++)
		printf("%d*%d=%d\t",i,j,i*j);
		printf("\n");
	}
	return 0;
 } 

 解析:按照要求,需要输出9行数据,每一行输出数据项的值由变量i计算确定。例如第i行要输出10-i个数据项,分别是i*i=?,i*(i+1)=?,i*(i+2)=?,...,i*9=?,其中“?‘’代表根据i值计算获得的结果。输出语句中使用\t使得输出结果整齐。

5-9修改

#include<stdio.h>
int main()
{
	int i,j;
	for(i=1;i<=9;i++)
	{
		for(j=1;j<=i;j++)
		printf("%d*%d=%d\t",j,i,i*j); /*调整变量i\j的输出次序,保证小数字在大数字前面*/
		printf("\n");
	}
	return 0;
}

 例5-10 编写程序,输入一个大于1的正整数,将其分解素因数。例如,输入90,输出90=2*3*3*5。

#include<stdio.h>
int main()
{
	
	int i,n; 
	printf("分解素因数,请输入大于1的整数:\n");
    scanf("%d",&n);
	printf("%d=",n);
	i=2;
	while (i<n)
	{
		if(n%i==0)
		{
			printf("%d*",i);
			n=n/i;
		}
		else
		i++;
	}
	printf("%d\n",n);
	return 0;
}

 程序从2开始尝试每一个I的值。如果n能被i整除,则i是n的一个因素,将n/i作为n的新值重复这一过程;当n不能被i整除时,尝试下一个i值(i++);直到i等于n,此时i是最后一个因素。

纯电版的豆腐车
关注 关注
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
c语言for循环嵌套if语句,for语句(if语句的嵌套例子模板)
weixin_36094492的博客
05-19 1万+
C语言为例for循环的一般形式为:for(语句1 ; 语句2 ; 语句3 ) {循环体} 执行时,先执行一次语句1(注意只执行一次) 之后判断语句2是否成立1).如果成立执行循环.for 是一个循环语句,和while是类似的,for一般的用法有:for(i=0;i<10;i++) { printf("hello world"); } 这里就是输出10次hello world,为什么是10次...
Python案例:两个嵌套的for循环(完美数,素数)
sinat_37960022的博客
02-24 1618
说明: 完美数又称为完全数或完备数,它的所有的真因子(即除了自身以外的因子)的和(即因子函数)恰好等于它本身。例如:6(6=1+2+36=1+2+36=1+2+3)和28(28=1+2+4+7+1428=1+2+4+7+1428=1+2+4+7+14)就是完美数。 l=[] for i in range(2,10001): summ = 0 for j in range(i-1,0,-1): if i%j==0: summ+=j if summ
循环嵌套习题
最新发布
m0_74933801的博客
09-04 1118
(b)的实现效率高。因为正常情况下,次数多的循环放在内层,会减少cache(高速缓冲区)更新数据的次数,当离开内层循环的时候会恢复外层的计数器,外层循环次数越少,恢复计数器的次数越少,效率越高。所“完”是指一个数恰好等于它的因子值之和,例如:6是完数,因为 6=1+2+3。有错,由于 switch后面的表达式必须是整形或字符型,但switch(a),的常量a是一个浮点型。可以看出第一行有1个*,第二行有3个*,第二行有5个*,第二行有7个*有问题,可以省略表达式1和表达式3,但表达式2为1时,执行死循环。
for循环嵌套例子
weixin_62838185的博客
01-05 339
#include <stdio.h> #include <string.h> #include <windows.h> //system("cls"); #include <stdlib.h> //exit(8); #define N 1024 struct employee //职工结构体 {int num; //001~999 char name[20];//姓名 char sex[5];//性别:男/女 int age;//.
for循环练习、for嵌套练习
computer408的博客
01-10 2611
1for循环练习 练习1 求1~100之间不能被3整除的数之和 练习2 计算100以内的奇数之和 需求说明 计算100以内的奇数之和,并设置断点调试程序,追踪3个表达式的执行顺序及循环变量的变化 练习3 计算顾客比例 需求说明 商场对顾客的年龄层次进行调查 计算各年龄层次的顾客比例 练习4 1~10之间的整数相加,得到累加值大于20的当前数 练习5 求1~10之间的所有偶数和 //1-5题 package com.day4; im.
for循环语句嵌套使用的实例
热门推荐
大同小后生伟的博客
01-13 4万+
一.实例一: 1.需求:在控制台上打印一个五行五列的矩形,如下图所示。 ***** ***** ***** ***** ***** 2.分析:首先多行多列的图形肯定有两个for循环,而行数5行是确定的,列数5列也是确定的 3.实例: class Demo10{ public static void main(String[] args){ for(int i = 0;i
for循环嵌套练习
weixin_42744020的博客
02-08 285
for循环嵌套练习 打印矩形,左下三角形,左上三角形,右下三角形,右上三角形 注意事项: 外循环控制行 ; 内循环控制列 代码如下: public class TextNestLoop { public static void main(String[] args) { for(int i=0; i<8; i++) { for(int j=0; j<8; j++){ Sys...
一文让你通俗易懂的学习会 Bash Shell 中的 for 循环语句(for 的两种语法结构 和 嵌套for循环)
12-21
在Bash Shell编程中,`for`循环语句是一种非常重要的控制流结构,它用于重复执行一系列命令。本文将深入探讨两种不同的`for`循环语法结构及其应用。 ### 1. 语法格式 1 - 带取值列表的`for`循环 ```bash for var...
MATLAB中使用for循环嵌套和while循环语句(下).md
08-03
### MATLAB中使用for循环嵌套和while循环语句(下) #### 概述 本篇文章是关于MATLAB中使用for循环嵌套与while循环语句系列的第二部分。在第一部分中,我们学习了如何利用for循环和subplot函数来创建多重坐标系的...
for循环嵌套
m0_48885821的博客
11-12 1万+
文章目录一、什么是循环嵌套?二、实例1.输出一个矩阵2.输出九九乘法表 一、什么是循环嵌套? 外层循环和内层循环交叉执行,外层 for 每执行一次,内层 for 就要执行符合循环条件的次数。 二、实例 1.输出一个矩阵 代码如下(示例): #include<stdio.h> int main(){ int i,j; for(i=1;i<=4;i++){ for(j=1;j<=4;j++){ // %4d 控制宽度为4个字符 ,且右对齐 printf("%4d"
Delphi7教程:For语句循环嵌套解析
"Delphi7教程 - For语句与循环的嵌套" 在Delphi编程中,For语句是一种常用的循环控制结构...For语句和循环的嵌套是Delphi编程中不可或缺的控制结构,它们结合Delphi7的强大IDE,为开发者提供了高效、直观的编程体验。
for循环嵌套练习题
Sail on Think
07-28 1万+
以下是对上周做的几道for循环练习题的整理: 1.打印正方形 *  *  *  *  *  *  *  *  *  *  *  *  *  *  * *  *  *  *  *  *  *  *  *  *  public class One { public static void main(String[] args) { for(int i=0;i&lt;5;i++) {//外...
for循环嵌套使用例子
Aurora7的博客
07-14 2939
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp1 { class Program { static void Main(string[] a...
Java 动态打印菱形代码之for循环的使用
weixin_34362991的博客
08-26 570
1.自定义空心菱形 1 void PrintRhombus() { 2 int i, j; 3 int s = 4; 4 for (i = 1; i < 2 * (s + 1); i++) { 5 6 if (i <= s + 1) { 7 f...
Java中如何定义基本数据类型的? (★)
独狼的博客
07-02 428
class VarDemo { public static void main(String[] args) { //数据类型 变量名 = 初始化值; byte b = 3; short s = 4000; int x = 12; long l = 123l; float f = 2.3f; double d = 3.4; char ch = '1'; boolean bl = true; bl = false;
for 循环 嵌套练习
Ref的博客
07-26 543
/*  * * * * *   * -* * * *   * --  * * *   * ---   * *   *  ----   *   *  -----   */   public class IfTest {  public static void main(String [] args){     for(int x=1;x      for(int y=1
JS基础_打印出1-100之间所有的质数
weixin_30817749的博客
10-15 733
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 <script type="text/javascript"> 7 ...
嵌套For循环性能优化案例
m0_47230916的博客
03-18 743
1 案例描述 某日,在JavaEye上看到一道面试题,题目是这样的:请对以下的代码进行优化 for(inti=0;i<1000;i++) for(intj=0;j<100;j++) for(intk=0;k<10;k++) testFunction(i,j,k); (注:为了同后面的内容一致,这里对原题目进行了部分修改) 2 案例分析 从给出的代码可知...
for嵌套循环练习
qq_36235922的博客
05-12 614
for嵌套循环小练习  (2012-03-14 18:35:46) 转载▼ 标签:  杂谈   for 嵌套循环 嵌套循环在一般情况下,只有2层嵌套循环。不会超出3层。   通常来说,嵌套for循环的开始练习主要通过打**来练习。   最多的主要就是寻找一个规律。。   主要最开始的通
写文章

热门文章

  • 软件测试的测试用例 4444
  • C语言基本运算 4125
  • 通过IDEA将java代码上传到gitee(码云)教程 3647
  • For循环应用:用java判定素数、闰年,并输出 2254
  • SpringMVC框架详解 1743

分类专栏

  • 计算机网络 4篇
  • mybatis 1篇
  • 测试 5篇
  • Spring 5篇
  • java 12篇
  • javaEE 6篇
  • Linux系统 1篇
  • HTML 3篇
  • SQL 1篇
  • 数据结构 2篇
  • git 4篇

最新评论

  • 计算机网络的相关概念

    CSDN-Ada助手: 网络 技能树或许可以帮到你:https://edu.csdn.net/skill/network?utm_source=AI_act_network

  • For循环应用:用java判定素数、闰年,并输出

    纯电版的豆腐车: 你可以用gpt改一下,时间比较长了,我也忘了。

  • For循环应用:用java判定素数、闰年,并输出

    m0_75159947: 我怎么觉得素数那个bug多,没排除2,for循环没起作用

  • Servlet的使用

    纯电版的豆腐车: 好啊,互访

  • 第二章基本类型、数组和枚举类型

    安苒_: 总结的非常很全面,支持博主

最新文章

  • 计算机网络的相关概念
  • 数据结构之集合框架
  • MyBatis的使用方法
2024年1篇
2023年30篇
2022年31篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家玻璃钢花盆儿模具厂杭州佛像玻璃钢雕塑制作玻璃钢雕塑鸟制作玻璃钢北极熊雕塑摆件玻璃钢雕塑定做厂家哪里有卖特色商场美陈生产厂家大型仿真玻璃钢梦露雕塑厂家太原景观玻璃钢雕塑优势玻璃钢人像雕塑品牌浙江水果玻璃钢雕塑方法玻璃钢动物马雕塑厂家定制硕创玻璃钢雕塑工艺 6.9沭阳玻璃钢雕塑厂天水玻璃钢雕塑设计红色玻璃钢雕塑手工制作海口玻璃钢不锈钢雕塑专业玻璃钢人物雕塑定做枣庄小品系列玻璃钢雕塑安装金龙鱼玻璃钢雕塑肖像校园玻璃钢景观雕塑制造广州景观玻璃钢雕塑价位玻璃钢花盆雕塑工厂天津户内玻璃钢雕塑设计宁波商场美陈打卡视频厦门河源玻璃钢人物雕塑定做新余玻璃钢花盆花器玻璃钢花盆专业品牌四川常用商场美陈报价广东卡通雕塑玻璃钢福州玻璃钢雕塑价格表香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化