一些关于for循环的题目

本文提供了四个使用C语言实现的经典算法实例:筛选100到200之间的素数、生成九九乘法表、判断1000年至2000年间的闰年以及找出100至999范围内的水仙花数。这些实例不仅展示了C语言的基本语法,还涵盖了数学和算法知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.输出100-200的素数

#include<stdio.h>

int main()
{
	int i = 0;
	int j = 0;
	for(i = 100; i <=200; i++)
	{
		for(j = 2; j < i; j++)
		{
			if(i % j == 0)
				break;
		}
		if(j == i)
			printf("%d\n", i);
	}
	system("pause");
	return 0;
}

2.输出乘法口诀表

#include<stdio.h>

int main()
{
	int i = 0;
	int j = 0;
	for(i = 1; i <= 9; i++)
	{
		for(j = 1; j <= i; j++)
		{
			printf("%d*%d=%2d  ", i, j, i*j);
		}
		printf("\n");
	}
	system("pause");
	return 0;
}

3.判断1000年-2000年之间的闰年

#include<stdio.h>

int main()
{
	int year = 0;
	for(year = 1000; year <= 2000; year++)
	{
		if(year % 400 == 0)
		{
			printf("%d\n", year);
		}
		else if(year % 4 == 0 && year % 100 != 0)
		{
			printf("%d\n",year);
		}
	}
	system("pause");
	return 0;
}

4.输出100-999的水仙花数

#include<stdio.h>

int main()
{
	int n = 0;
	int a = 0;
	int b = 0;
	int c = 0;
	for(n = 100; n <= 999; n++)
	{
		a = n / 100;
		b = n / 10 % 10;
		c = n % 10;
		if(n == a * a * a + b * b *b + c * c * c)
		{
			printf("%d\n",n);
		}
	}
	system("pause");
	return 0;
}
### 关于For循环的编程练习题 以下是几个经典的 `for` 循环编程练习题,涵盖了不同难度级别以及实际应用场景: #### 题目一:输出指定范围内的数字 编写一个 Java 或 C 程序,使用 `for` 循环输出从 1 到 n 的所有自然数。其中,n 是由用户输入的一个正整数。 ```java import java.util.Scanner; public class PrintNumbers { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入一个正整数 n:"); int n = scanner.nextInt(); for (int i = 1; i <= n; i++) { System.out.println(i); } } } ``` 此代码展示了如何通过 `for` 循环遍历一系列连续数值,并逐一打印出来[^2]。 --- #### 题目二:计算累加和 创建一个程序,利用 `for` 循环来求解并显示从 1 加到某个给定数 n 的总和。例如,如果用户提供的是 5,则应返回结果为 1 + 2 + 3 + 4 + 5 = 15。 ```c #include <stdio.h> int main() { int sum = 0; int num; printf("Enter the value of n: "); scanf("%d", &num); for(int i = 1; i <= num; ++i){ sum += i; } printf("Sum from 1 to %d is :%d\n", num, sum); return 0; } ``` 这段代码实现了基本的累加功能,适用于初学者理解 `for` 循环的工作机制[^4]。 --- #### 题目三:构建等腰三角形图案 设计一段能够绘制特定高度等腰三角形图形的应用逻辑。假设每层的高度等于该层数量乘以两个星号加上单个空白字符作为间隔填充物。 ```java public class TrianglePattern { public static void main(String[] args) { int height = 5; for (int row = 1; row <= height; row++) { // 打印空格 for (int space = 1; space <= height - row; space++) { System.out.print(" "); } // 打印星星 for (int star = 1; star <= 2 * row - 1; star++) { System.out.print("*"); } System.out.println(); } } } ``` 这里运用嵌套形式的 `for` 循环分别处理每一行前导空间数量变化规律及其对应位置上的符号排列情况[^2]。 --- #### 题目四:寻找数组中的最大值与最小值 开发一款小型工具软件,在已知长度固定大小的一维整形数据集合里找到其内部存在的最高位数值同最低位数值分别是多少? ```cpp #include <iostream> using namespace std; int main(){ const int SIZE = 6 ; double numbers[SIZE]={9,-2,7.8,0,-5.6,3}; double max,min; max=min=numbers[0]; for(auto index=1 ;index<SIZE;++index ){ if(numbers[index]>max){ max=numbers[index]; } if(numbers[index]<min){ min=numbers[index]; } } cout<<"Maximum Number:"<<max<<endl; cout<<"Minimum Number:"<<min<<endl; return 0; } ``` 上述例子说明了怎样借助标准库容器配合自定义比较函数完成任务目标的同时也体现了良好编码风格的重要性[^5]. --- #### 题目五:验证质数属性 制作一份脚本用来检测任意单一非负实参是否属于简单意义上的素数范畴之内——即除了自己本身之外再没有任何其他因子可以被它完全除尽的情况发生时才成立判定结论。 ```python def check_prime(n): flag=True if n<=1 : flag=False elif n==2 or n==3: pass else: limit=int((abs(n))**(0.5))+1 for divisor in range(2 ,limit): if not bool(abs(n)%divisor ): flag=False break return 'Prime' if flag else 'Not Prime' print(check_prime(-7)) ``` 这个 Python 版本解决方案巧妙地应用到了平方根取整技巧从而减少不必要的重复运算次数提升效率表现优异[^6]. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值