【Educoder】【综合练习—C&C++循环结构】

【Educoder】【综合练习—C&C++循环结构】

【综合练习—C&C++循环结构】

C和C++中的循环结构是程序设计中非常重要的一部分,它们允许代码块在特定条件下重复执行。这些循环结构主要有以下几种:

for循环:for循环允许你对一个计数器进行操作,可以指定初始值、执行条件和计数器的增量。它在满足指定条件的情况下重复执行语句块。在C++中,for循环的基本语法如下:for(initialization; condition; increment) { statements; },其中,initialization设置计数器的初始值,condition表示执行循环的条件,increment是每次循环完成后计数器增加的值,statements则是要执行的语句块。
while循环:while循环在循环入口处判断循环条件,当条件为真时执行循环体,即先判断再循环。
do…while循环:do…while循环先执行一次循环体,然后在循环出口处判断循环条件,当条件为真时继续循环,即先循环一次再判断。
此外,C语言还提供了一种goto循环,但一般不提倡使用,因为强制改变程序的顺序可能会给程序的运行带来不可预料的错误。

在实际编程中,我们通常会根据具体的需求来选择使用哪种循环结构。例如,如果需要在循环开始前就知道循环的次数,那么for循环可能是个好的选择;如果循环的次数依赖于循环体内部的某些操作,那么while或do…while循环可能更为合适。

除了基本的循环结构外,C和C++还提供了循环控制语句,如break和continue,用于改变循环的执行顺序。break语句用于在循环中跳出当前循环,而continue语句则用于跳过剩下的循环体语句,直接进行循环条件判断,开始下一轮循环。

总的来说,循环结构是C和C++编程中的重要组成部分,它们可以帮助我们处理重复的任务,提高程序的效率和可读性。

循环输出英文字母

#include <iostream>
using namespace std;

int main()
{
	/********* Begin *********/
	char letter;
	cin >> letter;
	if (letter != 'a' && letter != 'A')
		cout << "Error";
	else if (letter == 'a')
	{
		for (int variable = 0;variable <= 25;variable++)
			cout << (char)(letter + variable);
	}
	else
	{
		for (int variable = 0;variable <= 25;variable++)
			cout << (char)(letter + variable);
	}
	/*********  End  *********/
	return 0;
}

水仙花数

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
	/********* Begin *********/
	for (int narcissistic = 100;narcissistic < 1000;narcissistic+=1)
	{
		int sum{}, transfer = 0;
		transfer = narcissistic;
		for (int warehouse = 1;warehouse <=3 ;warehouse++)
		{
			sum += pow((narcissistic % 10), 3);
			narcissistic /= 10;
		}
		if (sum == transfer)
			cout << transfer<<" ";
		narcissistic = transfer;
	}
	/*********  End  *********/
	return 0;
}

完数

#include <iostream>
using namespace std;

int main()
{
	/********* Begin *********/
	for (int perfect = 1;perfect <= 1000;perfect++)
	{
		int sum=0,i=1;
		while (i < perfect)
		{
			if (perfect % i == 0)
				sum += i;
			i++;
		}
		if (sum == perfect)
			cout << perfect << " ";
	}


	/*********  End  *********/
	return 0;
}

求整数位数

#include <iostream>
using namespace std;

int main()
{
	/********* Begin *********/
	int integer;
	int variable = 1;
	cin >> integer;
	if (integer < 0)
		cout << "Error";
	else
	{
		for (;integer / 10 != 0;variable++)
		{
			integer /= 10;
		}
		cout << variable;
	}
	
	/*********  End  *********/
	return 0;
}

字符菱形

#include <iostream>
using namespace std;

int main() {
	int n, i, j, space;
	cin >> n;
	space = n - 1;

	// 上半部分
	for (i = 0; i < n; i++) 
	{
		for (j = 0; j < space; j++)
			cout << " ";
		space--;

		for (j = 0; j <= i; j++)
			cout << (char)('A'+j);
		for (int m=1;m <= i;m++)
			cout << (char)(('A'+j)-(m+1));
		cout << endl;
	}

	space = 1;

	// 下半部分
	for (i = n - 1; i >= 0; i--) 
	{
		for (j = 0; j < space; j++)
			cout << " ";
		space++;

		for (j = 0; j <= i - 1; j++)
			cout << (char)('A'+j);
		for (int m = 1;m < i;m++)
			cout << (char)(('A' + j) - (m + 1));
		cout << endl;
	}

	return 0;
}
  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值