O que o programa a seguir faz?

1 /* ex07_20.c */

2 /* O que esse programa faz? */

3 #include

4 5

int mystery2( const char *s ); /*

protótipo */

6 7

int main( void )

8 {

9 char string[ 80 ]; /* cria array

char */

10

11 printf( “Digite uma string: “);

12 scanf( “%s”, string );

13 printf( “%d\n”, mystery2( string

) );

14 return 0; /* indica conclusão bem-

-sucedida */

15 } /* fim do main */

16

17 /* O que essa função faz? */

18 int mystery2( const char *s )

19 {

20 int x; /* contador */

21

22 /* loop pela string */

23 for ( x = 0; *s != ‘\0’; s++ ) {

24 x++;

25 } /* fim do for */

26

27 return x;

28 } /* fim da função mystery2 */

Passo 1

Saaaalve, tranquilo? Vamos lá resolver mais uma questão juntos?! 😊

O programa é o seguinte:

Passo 2

Um exemplo de saída é o seguinte:

Resposta

Este programa vai encontrar o comprimento da string. A string está sendo inserida pelo usuário na função principal e então a função mystery2 é chamada. A função da mystery2(const char *s) é calcular o comprimento da string um por um com a ajuda do loop for. Depois de computado todo o comprimento da string, ele retorna o comprimento da string na função principal e, em seguida, exibe o comprimento da string no console.