C语言for循环结构经典练习

文章目录

  • 一、for循环基本知识
  • 二、经典例题及解析
    • 1.水仙花数
    • 2.求规定范围内的完数
    • 3.求规定范围内质数
    • 4.计算阶乘之和
    • 5.计算5+55+555+555+55555(类型)
    • 6.计算1+12+123+1234+12345(类型)
    • 7.判断用户输入正整数的位数
    • 8.判断某正整数是否为回文数
    • 9.九九乘法表
    • 10.统计用户输入的字符中,英文字母,空格,数字以及其他字符的个数
      • for循环,并利用ASCII判定范围
      • while方法,利用字符判定范围
    • 11.连续输入计算平均值(保留两位小数)

一、for循环基本知识

基本结构:

for (式子1;式子2;式子3) 语句;  //语句也可以是复合语句

执行过程:

首先执行式子1(式子1只执行第一次),然后用式子1的结果去和式子2去判断,式子2为真则执行循环语句(为假就不执行),循环语句执行完去执行式子3,再用式子3执行完后的值去判断式子2的真假,如此重复,直到执行完式子3后的结果不符合式子2,循环结束。

注意事项:

  • 一般式子1代表初值,式子2代表条件,式子3代表增量
  • 三个式子之间用两个分号进行分隔,且两个分号不可省略
  • 三个式子都可以进行省略,若不写式子2,缺省为条件永真

二、经典例题及解析

1.水仙花数

水仙花数:水仙花数是一个三位数,特点是各个位数的立方和等于该数本身。

//水仙花数是一个三位数,特点是各个位数的立方和等于该数本身。
//例:153=1*1*1+5*5*5+3*3*3
#include <stdio.h>

int main()
{
   
	int i,a,b,c;
	for(i=100;i<=999;i++)    //保证范围为三位数
	{
   
		a = i%10;    //取变量的个位数
		b = i/10%10;    //取变量的十位数
		c = i/100;    //取变量的百位数
		if ((a*a*a+b*b*b+c*c*c) == i) printf("%d\n",i);  
	}
   
   return 0;
}

运行结果:

2.求规定范围内的完数

完数:一个正整数的所有真因子(除了自身以外的约数)的和恰好等于它本身

//完数定义:一个正整数的所有真因子(除了自身以外的约数)的和恰好等于它本身
//例:6为完数,6的真因子为1,2,3  6=1+2+3
#include <stdio.h>
int main()

{
   
    int n,i,j,sum;
    printf("请输入计算完数终止数:\n");
    scanf("%d",&n);
    for (i=1;i<=n;i++)
    {
   
        sum=0;  //一定要保证每次sum的值都要进行刷新(在循环体内)
        for (j=1;j<i;j++)  //保证小于i,不可等于(完数定义)
        {
   

            if (i%j==0) sum+=j;
        }
        if (sum==i) printf("%d\n",i);
    }<

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
社会演员多的头像社会演员多普通用户
上一篇 2023年12月14日
下一篇 2023年12月14日

相关推荐