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
2. Três grandes órgãos de circulação
2. Explicação do corpo do ciclo
3. As duas principais palavras-chave do loop
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!