• Matéria: Informática
  • Autor: pedrohlantunes
  • Perguntado 7 anos atrás

Leia o trecho de programa a seguir: #include int x = 10; int main(){ int x = -1; int b; { extern int x; b = x; } printf("\n Valor de x = %d",x); printf("\n Valor de b (x global) = %d",b); return 0; } De acordo com o trecho de programa, analise as asserções a seguir: I. Na linguagem C, para acessar o valor de uma variável global dentro de uma função que possui uma variável local com mesmo nome, deve-se usar a instrução extern. PORQUE II. Utilizar variáveis globais e locais com mesmo nome na linguagem C necessita criar uma nova variável chamada “b”, com um bloco de instruções, que atribui à nova variável o valor “interno” de x. A respeito dessas asserções, assinale a alternativa correta: Escolha uma: a. As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. b. As asserções I e II são proposições falsas. c. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. d. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. e. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.

Respostas

respondido por: renatolopes164
78

Resposta:

LETRA 'D'

Explicação:

A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. Corrigido pelo AVA

respondido por: yancarvalho3
1

Acerca do treco de código apresentado e escrito na linguagem de programação C, o valor de uma variável global deve ser usado o extern para isso e para utilizar a variável global deve-se utilizar uma nova variável chamada "b" e atribuir o valor do "x" global, logo, a alternativa correta é a alternativa A. As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.

Mas por que as duas asserções são verdadeiras sobre variável global em C?

Observando o código apresentado é possível ver que as duas asserções são verdadeiras, afinal, ambas falam o que está escrito no programa na linguagem C. Para acessar uma variável global é preciso utilizar o extern e também é preciso atribuir a uma nova variável dentro da função main caso já exista uma com representação igual.

No caso desse algoritmo, ao fazer uma correção tirando o int x = 10 do include e colocando o <stdio.h> o programa já fica utilizável e podemos ver exatamente o que é dito nas asserções I e II. Segue o código corrigido abaixo:

#include <stdio.h>

int x = 10;

int main(){

   int x = -1;

   int b;

   { extern int x;

   b = x; }

   printf("\n Valor de x = %d",x);

   printf("\n Valor de b (x global) = %d",b);

   return 0;

}

Com esse código, o resultado fica que x = -1 e b = 10.

Saiba mais sobre a linguagem de programação C aqui: https://brainly.com.br/tarefa/24403342

#SPJ2

Anexos:
Perguntas similares