欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言中循環(huán)嵌套的應(yīng)用方式

 更新時(shí)間:2023年02月06日 08:58:10   作者:慕白昂  
這篇文章主要介紹了C語言中循環(huán)嵌套的應(yīng)用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

循環(huán)嵌套的應(yīng)用

循環(huán)嵌套可以使復(fù)雜的問題結(jié)構(gòu)化,把一個(gè)功能的實(shí)現(xiàn)拆分成一個(gè)一個(gè)更小的功能,然后再實(shí)現(xiàn),在此實(shí)現(xiàn)的過程中必須要注意結(jié)構(gòu)上的邏輯性和該邏輯的正確性,要保證每一個(gè)小的功能能夠完全正確,最終實(shí)現(xiàn)一個(gè)完整的循環(huán)。

1.求Sn=a+aa+aaa+aaaa+aaaaa的前5項(xiàng)之和,其中a是一個(gè)數(shù)字(例如:2+22+222+2222+22222)

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include<windows.h>
int main()
{
	int a = 0;//數(shù)字
	int n = 0;//幾個(gè)這類數(shù)相加
	int sum = 0;//求和的結(jié)果
	int ret = 0;//儲(chǔ)存計(jì)算好的每一項(xiàng)
	int i = 0;
	printf("請(qǐng)輸入s和n:");
	scanf("%d %d", &a, &n);
	for (i = 0; i < n; i++)
	{
		ret = ret * 10 + a;
		sum += ret;
	}
	printf("sum=%d\n", sum);
	system("pause");
	return 0;
}

2.求出0~100000之間的所有“水仙花數(shù)”并輸出。(“水仙花數(shù)”是指一個(gè)n位數(shù),其各位數(shù)字的n次方之和確好等于該數(shù)本身,如:153=13+53+3^3,則153是一個(gè)“水仙花數(shù)”。)

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include<math.h>
#include<windows.h>
int main()
{
	int i = 0;
	for (i = 0; i < 100000; i++)
	{	
		//判斷是否為水仙花數(shù)
		/*1.儲(chǔ)存該數(shù)的位數(shù)*/
		int sum = 0;
		int count = 1;
		int tmp = i;
		while (tmp /=10)
		{
			count++;
		}
		/*2.得到i的每一位,求出它的每一位次方數(shù)之和*/
		tmp = i;
		while (tmp)
		{
			sum += pow(tmp % 10, count);
			tmp/=10;
		}
		/*判斷*/
		if (sum == i)
		{
			printf("%d\t", i);
		}
	
	}
	system("pause");
	return 0;
}

3.用C語言在屏幕上輸出以下圖案:

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include<math.h>
#include<windows.h>
int main()
{
	int line = 0;
	scanf("%d", &line);
	int i = 0;
	for (i = 0; i < line; i++)//打印上半個(gè)菱形
	{
		int j = 0;
		for (j = 0; j < line - 1 - i; j++)//先空格
		{
			printf(" ");
		}
		for (j = 0; j < 2 * i + 1; j++)//再"*"
		{
			printf("*");
		}
		printf("\n");
	}
	for (i = 0; i < line - 1; i++)//打印下半個(gè)菱形
	{
		int j = 0;
		for (j = 0; j <=i ; j++)//先空格
		{
			printf(" ");
		}
		for (j = 0; j < 2 * (line - 1 - i) - 1; j++)//再"*"
		{
			printf("*");
		}
		printf("\n");
	}

	system("pause");
	return 0;
}

循環(huán)嵌套輸出圖形問題

輸出       

        *
      ***
    *****
  *******
*********

#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=5;i++){
?? ?for(j=1;j<=2*5-2*i;j++)
?? ? ? ?printf(" ");?
?? ?for(j=1;j<=i*2-1;j++)
?? ??? ?printf("*");
printf("\n");
}
return 0;
}

輸出

    *
   ***
  *****
 *******
*********

#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=5;i++){
?? ?for(j=1;j<=5-i;j++)
?? ?printf(" ");?
?? ?for(j=1;j<=i*2-1;j++)
?? ??? ?printf("*");?
? ? ? ? printf("\n");
}
return 0;
}

輸出

    *
   ***
  *****
   ***
    *

#include<stdio.h>
#include<math.h>
int main()
{
?? ?int i,j;
?? ?for(i=1;i<=5;i++){
?? ??? ?for(j=1;j<=abs(3-i);j++)
?? ??? ??? ?printf(" ");
?? ??? ?for(j=1;j<=(2*(3-abs(3-i))-1);j++)
?? ??? ??? ?printf("*");
?? ??? ?printf("\n");
?? ?}
?? ?return 0;
}

圖形問題模板:

#include<stdio.h>
int main()
{
int i,j;
for(i=1;i<=行數(shù);i++){
? ? for(j=1;j<=第i行空格數(shù)(找規(guī)律);j++)
? ? printf(" ");?
? ? for(j=1;j<=第i行圖形數(shù)(找規(guī)律);j++)
? ? ? ? printf("圖形");?
printf("\n");
}
return 0;
}

附帶一個(gè)99乘法表

1*1=1
1*2=2   2*2=4
1*3=3   2*3=6   3*3=9
1*4=4   2*4=8   3*4=12  4*4=16
1*5=5   2*5=10  3*5=15  4*5=20  5*5=25
1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36
1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49
1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64
1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

#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,j*i);?
printf("\n");
}
return 0;
}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論