Logo Passei Direto
Buscar

Funções - Exercicio 1

Ferramentas de estudo

Questões resolvidas

Uma função é composta de duas partes: o cabeçalho e o corpo da função. Você precisa programar uma função que receba três números reais, calcule a média entre eles e retorne o valor da média. Assinale abaixo a opção correta que descreve o cabeçalho da função calcula_media:
float calcula_media(int n1, float n2, float nr3).
float calcula_media(float n1, float n2, float nr3).
int calcula_media(float n1, float n2, float nr3).
void calcula_media(float n1, float n2, float nr3).
float calcula_media(int n1, int n2, int nr3).

Leia o programa abaixo, verifique o que a função func3() faz e assinale qual das opções será impressa na saída após a execução.
#include typedef struct pessoa { char nome[40]; int idade; float salario; }; void func3(struct pessoa f1, struct pessoa f2, struct pessoa f3) { printf("%s %d %.2f\n",f1.nome, f2.idade, f3.salario); } main() { struct pessoa p1 = {"Maria Covidiana",50,10000.00}; struct pessoa p2 = {"Alcogelson Medeiros,51,12000.00}; struct pessoa p3 = {"Paulo Lokidown",60,12500.00}; func3(p1,p2,p3); } Assinale a opção correta.
Maria Covidiana 60 12500,00
Alcogelson Medeiros 60 12500,00
Paulo Lokidown 51 12000,00
Maria Covidiana 51 12500,00
Maria Covidiana 50 10000,00

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Uma função é composta de duas partes: o cabeçalho e o corpo da função. Você precisa programar uma função que receba três números reais, calcule a média entre eles e retorne o valor da média. Assinale abaixo a opção correta que descreve o cabeçalho da função calcula_media:
float calcula_media(int n1, float n2, float nr3).
float calcula_media(float n1, float n2, float nr3).
int calcula_media(float n1, float n2, float nr3).
void calcula_media(float n1, float n2, float nr3).
float calcula_media(int n1, int n2, int nr3).

Leia o programa abaixo, verifique o que a função func3() faz e assinale qual das opções será impressa na saída após a execução.
#include typedef struct pessoa { char nome[40]; int idade; float salario; }; void func3(struct pessoa f1, struct pessoa f2, struct pessoa f3) { printf("%s %d %.2f\n",f1.nome, f2.idade, f3.salario); } main() { struct pessoa p1 = {"Maria Covidiana",50,10000.00}; struct pessoa p2 = {"Alcogelson Medeiros,51,12000.00}; struct pessoa p3 = {"Paulo Lokidown",60,12500.00}; func3(p1,p2,p3); } Assinale a opção correta.
Maria Covidiana 60 12500,00
Alcogelson Medeiros 60 12500,00
Paulo Lokidown 51 12000,00
Maria Covidiana 51 12500,00
Maria Covidiana 50 10000,00

Prévia do material em texto

Você acertou 8 de 10 questões
Verifique o seu desempenho e continue treinando! Você pode refazer o
exercício quantas vezes quiser.
Verificar Desempenho
1 Marcar para revisão
Verifique o código do programa abaixo, observando o escopo de visibilidade
das variáveis:
1:  #include
2:
3:  int A = 200;   //  variavel global
4:  int B = 444;   //  variavel global
5:
6:  void escopo1() {
7:   int A;
8:   A = -200;
9:   printf("Valor da variavel local   A dentro da função escopo1: %d\n", A);
10: printf("Valor da variavel global B dentro da função escopo1: %d\n", B);
11: }
12:
13: main() {
14:
15: printf("Valor da variavel global A dentro do main(): %d\n", A);
16: printf("Valor da variavel global B dentro de main(): %d\n", B);
17: int A = 10;
18: printf("Valor da variavel local  A dentro do main(): %d\n", A);
19: A = 20;
20: escopo1();
21: printf("Valor da variavel local  A dentro do main(): %d\n", A);
22: }
Assinale a opção correta que será impressa ao longo da execução do
programa.
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 1/13
A
B
C
D
E
Valor da variavel global A dentro do main(): 200
Valor da variavel global B dentro de main(): 444
Valor da variavel local   A dentro do main(): 10
Valor da variavel local   A dentro da função escopo1: -200
Valor da variavel global B dentro da função escopo1: 444
Valor da variavel local   A dentro do main(): 10
Valor da variavel global A dentro do main(): 200
Valor da variavel global B dentro de main(): 444
Valor da variavel local   A dentro do main(): 10
Valor da variavel local   A dentro da função escopo1: -200
 Valor da variavel global B dentro da função escopo1: 444
Valor da variavel local   A dentro do main(): 20
Valor da variavel global A dentro do main(): 200
Valor da variavel global B dentro de main(): 444
Valor da variavel local   A dentro do main(): 10
Valor da variavel local   A dentro do main(): 20
Valor da variavel local   A dentro da função escopo1: -200
Valor da variavel global B dentro da função escopo1: 444
Valor da variavel global B dentro de main(): 444
Valor da variavel global A dentro do main(): 200
Valor da variavel local   A dentro do main(): 10
Valor da variavel local   A dentro da função escopo1: -200
Valor da variavel global B dentro da função escopo1: 444
Valor da variavel local   A dentro do main(): 20
Valor da variavel global A dentro do main(): 200
Valor da variavel global B dentro de main(): 444
Valor da variavel local   A dentro do main(): 10
Valor da variavel local   A dentro da função escopo1: 20
Valor da variavel global B dentro da função escopo1: 444
Valor da variavel local   A dentro do main(): 10
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
O resultado do programa na ordem correta (identificado por linha) de
execução dos comandos é a seguinte:
Linha 15:   Valor da variavel global A dentro do main(): 200
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 2/13
A
B
C
D
E
Linha 16:   Valor da variavel global B dentro de main(): 444
Linha 18:   Valor da variavel local   A dentro do main(): 10
Linha 9:     Valor da variavel local   A dentro da função escopo1: -200
Linha 10:   Valor da variavel global B dentro da função escopo1: 444
Linha 21:   Valor da variavel local   A dentro do main(): 20
2 Marcar para revisão
Com relação ao conceito de passagem de parâmetros, assinale a opção
correta.
Após o término de seu funcionamento, a função tem que devolver
um valor para o programa que a invocou.
O número de parâmetros enviados para uma função pode ser
diferente do número de parâmetros existentes no cabeçalho da
função, pois a função emprega os parâmetros que ela necessita.
O código de uma função só é executado quando esta é invocada em
alguma parte do programa a que está de algum modo ligado.
Sempre que uma função é invocada (ou chamada), a função main()
continua a executar suas instruções.
Um programa em C não precisa da função main() escrita no seu
código, quando existem outras funções presentes no programa.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
A alternativa correta é a letra C. No contexto da programação, uma
função só é executada quando é chamada ou invocada em alguma parte
do programa. Isso significa que o código contido na função permanece
inativo até que a função seja explicitamente chamada. Portanto, a
afirmação "O código de uma função só é executado quando esta é
invocada em alguma parte do programa a que está de algum modo
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 3/13
A
B
C
D
E
ligado" está correta e condiz com o conceito de passagem de
parâmetros em programação.
3 Marcar para revisão
Uma função é composta de duas partes: o cabeçalho e o corpo da função.
Você precisa programar uma função que receba três números reais, calcule a
média entre eles e retorne o valor da média. Assinale abaixo a opção correta
que descreve o cabeçalho da função calcula_media:
float calcula_media(int n1, float n2, float nr3).
int calcula_media(float n1, float n2, float nr3).
void calcula_media(float n1, float n2, float nr3).
float calcula_media(int n1, int n2, int nr3).
float calcula_media(float n1, float n2, float nr3).
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
Para definir o cabeçalho da função calcula_media(), é necessário seguir
alguns passos: (1) Definir o tipo da função: como a função precisa
retornar um número real, o tipo da função deve ser float; (2) Definir o
nome da função, que neste caso é calcula_media; (3) Definir o tipo dos
três parâmetros (n1, n2 e nr3) que a função vai receber, que neste caso
são todos do tipo float. Portanto, o cabeçalho da função corretamente
definido é: float calcula_media(float n1, float n2, float nr3).
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 4/13
A
B
C
D
E
4 Marcar para revisão
Leia o programa abaixo, verifique o que a função func3() faz e assinale qual
das opções será impressa na saída após a execução.
#include
typedef struct pessoa
 {
 char nome[40];
 int idade;
 float salario;
};
 void func3(struct pessoa f1, struct pessoa f2, struct pessoa f3)
 {
   printf("%s %d %.2f\n",f1.nome, f2.idade, f3.salario);
 }
 main()
 {
   struct pessoa p1 = {"Maria Covidiana",50,10000.00};
   struct pessoa p2 = {"Alcogelson Medeiros",51,12000.00};
   struct pessoa p3 = {"Paulo Lokidown",60,12500.00};
   func3(p1,p2,p3);    }
Assinale a opção correta.
Maria Covidiana 50  10000,00
Alcogelson Medeiros 60  12500,00
Paulo Lokidown  51  12000,00
Maria Covidiana 60  12500,00
Maria Covidiana 51  12500,00
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 5/13
A
B
C
Gabarito Comentado
A função func3() recebe três estruturas como parâmetros. Cada
estrutura representa uma pessoa com nome, idade e salário. A função
imprime o nome da primeira estrutura (f1), a idade da segunda estrutura
(f2) e o salário da terceira estrutura (f3). No caso, as estruturas passadas
são p1, p2 e p3, respectivamente. Portanto, a saída será "Maria
Covidiana", que é o nome em p1, "51", que é a idade em p2,e "12500,00",
que é o salário em p3. Assim, a saída correta é "Maria Covidiana 51
12500,00".
5 Marcar para revisão
Analise o código abaixo com relação ao escopo das variáveis e o resultado
do programa após a execução:
1: #include
2:
3: int imprimir(int X, int Y)
4:{
5: X--;
6: Y++;
7: printf("Valor de X = %d, Y = %d\n", X, Y);
8:}
9:
10: main () {
11: int X,Y;
12: X = 100;
13: Y = X - 40;
14: imprimir(X,Y);
15: printf ("Valor de X = %d, Y = %d\n", X, Y);
16: }
Assinale a resposta correta da saída do programa acima.
Valor de X = 100, Y = 60
Valor de X = 100, Y = 60
Valor de X = 99, Y = 61
Valor de X = 100, Y = 60
Valor de X = 100, Y = 60
Valor de X = 99, Y = 61
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 6/13
D
E
A
B
C
Valor de X = 99, Y = 60
Valor de X = 100, Y = 61
Valor de X = 100, Y = 60
Valor de X = 60, Y = 61
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
Na linha 14, a função imprimir(X,Y) é chamada, recebendo como
parâmetros X=100 e Y=60. Após a execução dos comandos nas linhas 5
e 6, X = 99 e Y = 61. No entanto, essas são variáveis locais na função
imprimir, ou seja, suas alterações não afetam os valores de X e Y fora da
função. Portanto, quando o comando "printf ("Valor de X = %d, Y =
%d\n", X, Y);" é executado na linha 15, ele imprime o resultado "Valor de
X = 100, Y = 60", que são os valores originais de X e Y na função main.
Assim, a saída correta do programa é "Valor de X = 100, Y = 60" duas
vezes, como indicado na alternativa A.
6 Marcar para revisão
Você está codificando um programa e precisa fazer uma conversão de tipo
string para tipo inteiro, tomar uma decisão, e invocar uma determinada
função em relação ao valor inteiro. Você sabe que existem na biblioteca
padrão, funções de conversão de tipos. Assinale a opção correta, que indica
o arquivo cabeçalho que você precisa incluir no programa para resolver este
problema.
Questão 7
de
10
Corretas (8)
Incorretas (2)
Em branco (0)
1 2 3 4 5
6 7 8 9 10
Lista de exercícios Linguagem C: Funções Sair
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 7/13
D
E
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
A biblioteca é a correta para este caso. Ela é uma biblioteca
padrão da linguagem de programação C que inclui funções envolvendo
alocação de memória, controle de processos, conversões e outras. Neste
caso, para a conversão de uma string para um inteiro, a função atoi()
desta biblioteca seria a mais adequada. Além disso, ela também contém
funções para tomar decisões e invocar outras funções, tornando-a a
escolha ideal para resolver o problema proposto.
7 Marcar para revisão
Interprete o código abaixo e assinale a opção correta quanto ao valor
retornado pela função recursividade com o parâmetro de valor 4.
#include
int recursividade(int n)
{
    if (n>0) {
     n = 2*recursividade(n-1);
     return n;
    }
     else return 1;
}
int main()
{
 recursividade(4);
}
Assinale a opção correta.
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 8/13
A
B
C
D
E
4
128
16
64
32
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
A função recursividade calcula o valor de 2 , sendo n o expoente. Assim,
como o parâmetro recebido de função é 4, o valor retornado é 2 = 16.
n
4
8 Marcar para revisão
Analise o programa abaixo e responda a opção correta:
01: #include
02:
03: int f1 (int x, int y) {
04: int res;
05: if (y != 0) {
06:      res =  x / y;
07:  else {
08:      res =  1 / x;   }
09:   while (x > y) {
10:        res = res +  x;
11:        x = x - 4;
12:    }
13:   return res;
14: }
15:
16: main()  {
17:    f1(10,2);       
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 9/13
A
B
C
D
E
18:    f1(5, 0);  
19:    f1(8, 4);
20:  }
Assinale a resposta correta com o valor da variável res, na sequência das
chamadas da função f1.
10;   6,2;  10.
10;   6,2;  21.
21;   6,2;  10.   
21;   6,0;  10.
20;   6,0;  11.
Resposta incorreta
Opa! A alternativa correta é a letra C. Confira o gabarito
comentado!
Gabarito Comentado
A função f1 é chamada três vezes no programa. A cada chamada, os
valores de x e y são passados como argumentos e a variável res é
calculada de acordo com as condições estabelecidas na função. A tabela
abaixo mostra os valores de x, y e res após cada chamada da função.
Chamada
da
Função
f1(10,2) f1(5,0) f1(8,4)
Variável x y res x y res x y res
Valor 10 2 21 5 0 6,2 8 4 10
Portanto, a sequência correta dos valores da variável res após as
chamadas da função f1 é 21; 6,2; 10, correspondendo à alternativa C.
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 10/13
A
B
C
9 Marcar para revisão
Interprete o código abaixo e assinale a opção correta com relação à saída do
programa:
#include
int func1(int lista[5])  {
   int i, r;
   r = lista[0];
for (int i=0; ir) r=lista[i];
  lista[i] = lista[i+1];
return r;
}
int func2(int lista[5])  {
   int r;
   r = lista[0];
for (int i=0; ir)
r=lista[i]; armazena o maior valor na variável r. A função func2 retorna o
menor valor do vetor. A instrução  if (lista[i]
10 Marcar para revisão
Você está codificando um programa e precisa resolver duas situações.
Primeiro, converter uma variável do tipo string em inteiro (int). Segundo, gerar
um número aleatório. Você sabe que existem na biblioteca padrão funções
que executam estas duas tarefas. Assinale a opção correta, que indica a
inclusão do arquivo cabeçalho que contém as duas funções que você precisa
usar no programa para resolver as duas tarefas.
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 12/13
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o
gabarito comentado!
Gabarito Comentado
O arquivo é a escolha correta para resolver as duas tarefas
propostas. Este arquivo de cabeçalho define funções de propósito geral,
que incluem a conversão de tipos e a geração de números aleatórios.
Além disso, ele também oferece funções para alocação e liberação de
memória, ordenamento e busca, e controle de processos. Portanto, para
converter uma variável do tipo string em inteiro e gerar um número
aleatório, as funções contidas no arquivosão as mais
adequadas.
11/04/2026, 15:20 estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/69da7ad1a81df80c3f3abce5/gabarito/ 13/13

Mais conteúdos dessa disciplina