Fundação da linguagem C – os três generais do ciclo

Prefácio: A partir deste artigo, os blogueiros continuarão a atualizar vários conhecimentos básicos importantes de gramática na linguagem C de tempos em tempos.


Índice

1. O que é um ciclo

1. Definição de ciclo

2. Três grandes órgãos de circulação

2. Explicação do corpo do ciclo

1. loop while

2.fazer loop while

3. para loop

 3. As duas principais palavras-chave do loop

1. continuar

2. pausa


1. O que é um ciclo

1. Definição de ciclo

Loop, como o nome sugere, é um loop, hahaha, assim como aquele tipo de deslizamento em espiral, círculo por círculo, camada por camada, a instrução de loop será executada repetidamente sob as restrições que você definir .

2. Três grandes órgãos de circulação

  • enquanto           
  • fazer enquanto
  • para

2. Explicação do corpo do ciclo

1. loop while

O loop while também é chamado de "loop while" , eu só faço loop quando você atende minha restrição .

A estrutura gramatical do while:

enquanto(expressão)

{

        instrução de loop;

}

 A expressão em () após while é a condição de julgamento , e somente quando a expressão for verdadeira , ela entrará no loop while e executará a instrução do loop.

Exibição de código simples:

//打印1-10的数字
#include<stdio.h>
int main()
{
    int i = 1;
    while(i <= 10)
    {
        printf("%d ",i);
        i++;
    }
    return 0;
}

2.fazer loop while

Assim como o loop while, do while só executará o loop se a expressão for true .

A estrutura gramatical de do while:

fazer

{

        instrução de loop;

}enquanto(expressão);

A única diferença entre um loop do while e um loop while é que um loop do while é executado pelo menos uma vez , enquanto um loop while pode nunca ser executado .

 Como no código acima, a expressão é obviamente falsa , mas ainda assim será impresso 1. Essa é a mágica do loop do while. Por quê? Como os códigos são executados um por um, de cima para baixo , a condição de julgamento de do while ocorre após a instrução do loop , então, naturalmente, a instrução do loop é executada primeiro e, em seguida, o julgamento é feito .

3. para loop

O loop for pode ser descrito como o irmão mais velho dos três loops e também é o corpo de loop mais versátil .

Estrutura de sintaxe do loop for:

for (inicialização; expressão de julgamento; declaração de ajuste)

{

        corpo de laço;

}

 O loop for integra inicialização, expressões de julgamento e instruções de ajuste e só precisa inserir o conteúdo que você deseja repetir no corpo do loop. Sua sequência de execução é: inicial--->julgamento--->julgamento aprovado--->executar corpo do loop--->ajustar instrução--->julgamento--->julgamento não aprovado--->end loop .

#include<stdio.h>
int main()
{
    int i = 1;
    for (i = 1; i <= 10; i++)
    {
        printf("%d ", i);
    }
    return 0;
}

 Aqui adicionamos algumas variantes de uso do loop for:

para( ; ; )

        printf("hehe");

}

 A inicialização, a instrução de julgamento e a instrução de ajuste no loop for podem ser omitidas . Deve-se notar que quando a instrução de julgamento é omitida , ela sempre será verdadeira por padrão , ou seja, imprimirá "hehe" em um loop infinito.

    int eu = 0;
    int j = 0;
    for (; i < 3; i++)
    {         for (; j < 3; j++)         {             printf("hehe\n");         }     }




 Dado esse código de loop aninhado, quantos "hehe" serão impressos?

A resposta é: 3 .

Trata-se de inicialização. Após a execução do primeiro loop interno, j = 3. Neste momento, quando o loop interno é executado pela segunda vez, j ainda é 3 porque j não foi inicializado com um determinado número. , então se a condição do julgamento não for satisfeita, ele não será executado.

    int eu = 0;
    for (i = 0; i = 1; i++)
    {         printf("hehe");     }

Quantos “hehe” serão impressos para tal código?

A resposta é: impressão em loop infinito e incontável .

Deve-se notar que i = 1 aqui , é uma declaração de julgamento? Não, na verdade é uma instrução de atribuição e atribui 1 a i , portanto a condição de julgamento é sempre verdadeira e será impressa em um loop infinito. 

 3. As duas principais palavras-chave do loop

1. continuar

continue , seu significado em inglês é "continue" , quando usado em uma instrução de loop, encerrará imediatamente o loop atual , interromperá a execução da instrução seguinte e reiniciará o loop .

#include<stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		printf("%d", i);
		if (i == 5)
			continue;
		i++;
	}
    return 0;
}

Olhando para o código acima, qual será a saída desse código?

 Você acertou?

Isso mesmo, após imprimir 1,2,3,4 , irá imprimir 5 em um loop infinito . por que? Quando atendemos à condição de i==5 , a instrução if será executada e continue será um demônio neste momento , ele termina diretamente a execução de i++ posteriormente e reinicia o ciclo . Neste momento, i é sempre 5 , e sempre será Execute continue , não serei mais ++, então imprimirá 5 em um loop infinito.

2. pausa

break , seu significado em inglês é "break" , quando aparece em uma instrução de loop, não importa onde esteja, desde que seja disparado, interromperá diretamente o loop inteiro , o loop inteiro não será executado , e a instrução atrás do loop será executado diretamente .

#include<stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		printf("%d ", i);
		if (i == 5)
			break;
		i++;
	}
	printf("循环被打破了");
	return 0;
}

O mesmo código, o que será gerado?

 Sim, quando imprimimos 5 no loop , a instrução if é executada, interrompe-a e encerra diretamente o loop inteiro após i = 5 e, em seguida, executa a instrução printf após o loop .


Este compartilhamento de conhecimento sobre circulação está chegando ao fim aqui. Se você tiver alguma dúvida ou acréscimo ao meu compartilhamento, fique à vontade para comentar e me enviar uma mensagem privada.

Amigos que gostam dos artigos do blogueiro, não esqueçam de clicar três vezes, nos vemos na próxima edição!

Acho que você gosta

Origin blog.csdn.net/2303_78442132/article/details/132204303
Recomendado
Clasificación