Prévia do material em texto
<p>Prova</p><p>Curso: Tecnologia em Análise e Desenvolvimento de Sistemas</p><p>Disciplina: Linguagem de Programação I</p><p>Ano: 20231 / Semestre: 2</p><p>PROVA 01</p><p>Questão 1</p><p>Crie um programa que tenha três variáveis numéricas, leia os valores para elas e mostre o segundo valor</p><p>informado.</p><p>Utilize cin e cout para resolução deste exercício</p><p>Resposta do aluno: #include <iostream> int main() { int a, b, c; std::cout << "Digite tres valores numericos: ";</p><p>std::cin >> a >> b >> c; std::cout << "O segundo valor informado foi: " << b << std::endl; return 0; }</p><p>Parecer do professor: correto</p><p>Questão 2</p><p>Crie um programa para ler um nome (char de tamanho 30) e imprimir este nome 3 vezes, em três linhas</p><p>diferentes</p><p>Resposta do aluno: #include <iostream> #include <cstring> // biblioteca para manipulação de strings using</p><p>namespace std; int main() { char nome[30]; // cria uma variável para armazenar o nome cout << "Digite um</p><p>nome: "; cin >> nome; // lê o nome digitado pelo usuário for (int i = 0; i < 3; i++) { // itera três vezes cout <<</p><p>nome << endl; // imprime o nome na linha atual e pula para a próxima linha } return 0; }</p><p>Parecer do professor: correto</p><p>Questão 3</p><p>A respeito da linguagem C, marque a alternativa errada</p><p>a) A função main() marca o ponto de início da execução de um programa C</p><p>b) Em um programa os nomes: num e Num indicam a mesma variável (correta)</p><p>c) A biblioteca cstdio é utilizada para que possamos manipular as funções printf e scanf</p><p>d) \n indica que o valor a seguir será impresso em uma nova linha</p><p>Questão 4</p><p>Qual das alternativas a seguir não corresponde a uma biblioteca da linguagem C?</p><p>a) cstdlib</p><p>b) cstdiolib (correta)</p><p>c) cstdio</p><p>d) cstring</p><p>Questão 5</p><p>Assinale a alternativa que mostra o operador lógico OU em linguagem C.</p><p>a) $$</p><p>b) &&</p><p>c) || (correta)</p><p>d) or</p><p>e) v</p><p>Questão 6</p><p>O que será impresso na tela de saída do programa a seguir?</p><p>Marque a alternativa correta.</p><p>-----------------------------------------------------------------------------------------------------------------------</p><p>#include <cstdio></p><p>int main()</p><p>{</p><p>int x, y, z, a = 8, b = 4;</p><p>x = a * a + b;</p><p>y = x * b - a;</p><p>z = y - x;</p><p>printf("%d %d %d", x,y,z);</p><p>return 0;</p><p>}</p><p>-----------------------------------------------------------------------------------------------------------------------</p><p>a) 68 272 272</p><p>b) 68 264 196 (correta)</p><p>c) 64 268 272</p><p>d) 68 272 264</p><p>e) 64 272 264</p><p>Questão 7</p><p>Analise o programa a seguir:</p><p>#include <stdio.h></p><p>int main()</p><p>{</p><p>int x = 1, y = 2, z = 3;</p><p>printf("%d - %d; %d",x,x,z);</p><p>return 0;</p><p>}</p><p>Qual das alternativas a seguir representa exatamente o que será impresso pelo programa analisado?</p><p>a) 1 - 2 - 3</p><p>b) 1 - 1 - 3</p><p>c) 1 - 2; 3</p><p>d) 1 - 1; 3 (correta)</p><p>e) 1 - 1; - 3</p><p>Questão 8</p><p>À respeito de comandos de saída de dados, analise as instruções a seguir e marque a alternativa correta:</p><p>I - puts(589);</p><p>II - putchar("c");</p><p>III - printf(6987);</p><p>IV - cout<<1452;</p><p>a) Apenas as alternativas I e II estão corretas</p><p>b) Apenas as alternativas II e IV estão corretas</p><p>c) Apenas as alternativas III e IV estão corretas</p><p>d) Todas estão corretas</p><p>e) Nenhuma está correta (correta)</p><p>Questão 9</p><p>Analise o programa a seguir e identifique a resposta que representa o que ele faz.</p><p>#include <stdio.h></p><p>int main()</p><p>{</p><p>int x =88;</p><p>printf("\n Valor = %d ", x);</p><p>return 0;</p><p>}</p><p>a) Nada, pois contém erros</p><p>b) Imprime: Valor = 88</p><p>c) Imprime: \n Valor = 88</p><p>d) Imprime: Valor = %d</p><p>e) Pula uma linha e imprime: Valor = 88 (correta)</p><p>Questão 10</p><p>Qual valor será impresso na tela de saída do programa a seguir?</p><p>Marque a alternativa correta.</p><p>-----------------------------</p><p>#include <cstdio></p><p>main() {</p><p>char var;</p><p>int unidades = 3;</p><p>var = 15 + unidades;</p><p>return 0;</p><p>}</p><p>-----------------------------</p><p>a) 15</p><p>b) 3</p><p>c) 0</p><p>d) 18</p><p>e) Nenhuma das alternativas anteriores (correta)</p><p>PROVA 02</p><p>Questão 1</p><p>Crie um programa em que o usuário informa quantos números serão lidos. Feito isto, o programa deve pedir ao</p><p>usuário que informe esses números, e o programa deve calcular a soma destes números informados e exibi-la</p><p>ao final.</p><p>Resposta do aluno: #include <iostream> using namespace std; int main() { int quantidade, numero, soma = 0;</p><p>cout << "Informe quantos numeros serao lidos: "; cin >> quantidade; for(int i=1; i<=quantidade; i++) { cout</p><p><< "Informe o " << i << "o numero: "; cin >> numero; soma += numero; } cout << "A soma dos numeros</p><p>informados eh: " << soma << endl; return 0; }</p><p>Parecer do professor: correto</p><p>Questão 2</p><p>Crie um programa que leia um número n e imprima se ele é primo ou não.</p><p>Um número primo tem apenas dois divisores: 1 e ele mesmo! O número 1 não é primo.</p><p>Resposta do aluno: #include <iostream> using namespace std; int main() { int n, i, cont_div = 0; cout <<</p><p>"Informe um numero: "; cin >> n; for(i=1; i<=n; i++) { if(n % i == 0) { cont_div++; } } if(cont_div == 2) {</p><p>cout << n << " eh um numero primo." << endl; } else { cout << n << " nao eh um numero primo." << endl; }</p><p>return 0; }</p><p>Parecer do professor: correto</p><p>Questão 3</p><p>Qual será o valor de x após a série de comandos abaixo:</p><p>a = 8;</p><p>b = 4;</p><p>x = 0;</p><p>x = (b > a) ? b : a;</p><p>a) 0</p><p>b) 8 (correta)</p><p>c) 4</p><p>d) 2</p><p>Questão 4</p><p>O que será impresso na tela de saída do programa a seguir?</p><p>Marque a alternativa correta.</p><p>#include <cstdio></p><p>int main()</p><p>{</p><p>int x = 0, a = 8, b = 4;</p><p>x = (a % b == 1) ? a : b;</p><p>printf("%d", x);</p><p>return 0;</p><p>}</p><p>a) 0</p><p>b) 1</p><p>c) 4 (correta)</p><p>d) 8</p><p>Questão 5</p><p>Dado o programa abaixo, quais valores serão exibidos na tela de saída</p><p>#include <cstdio></p><p>int main()</p><p>{</p><p>int x = 1;</p><p>while (x < 30)</p><p>{</p><p>if (x % 7 == 2)</p><p>printf("%d",x);</p><p>x++;</p><p>}</p><p>return 0;</p><p>}</p><p>a) 3,5,16</p><p>b) 2,9,16 (correta)</p><p>c) 2,10,15</p><p>d) 3,9,10</p><p>e) 2,9,14</p><p>Questão 6</p><p>Qual será o valor de cont ao final do programa a seguir?</p><p>#include <cstdio></p><p>int main()</p><p>{</p><p>int vet[100];</p><p>int i, x = 5, cont = 0;</p><p>for (i=0; i<100; i++)</p><p>{</p><p>vet[i] = i;</p><p>}</p><p>for (i=0; i<100; i++)</p><p>{</p><p>if (vet[i] == x)</p><p>cont++;</p><p>}</p><p>printf("%d",cont);</p><p>return 0;</p><p>}</p><p>a) 20</p><p>b) 50</p><p>c) 1 (correta)</p><p>d) 5</p><p>Questão 7</p><p>Considerando o programa a seguir, é correto afirmar que depois de terminado o for, o vetor vet terá os</p><p>seguintes valores:</p><p>#include <cstdio></p><p>int main()</p><p>{</p><p>int vet[5] = {1,2,3,4,5};</p><p>int i;</p><p>for (i=0; i<4; i++)</p><p>{</p><p>vet[i] = i * vet[i+1];</p><p>}</p><p>return 0;</p><p>}</p><p>a) 1,2,3,4,5</p><p>b) 0,3,8,15,5 (correta)</p><p>c) 0,1,2,3,4</p><p>d) 0,2,8,10,4</p><p>Questão 8</p><p>A respeito de estruturas de repetição, considere instrução como sendo tudo o que está dentro do loop (laço).</p><p>I - O laço for executa uma instrução e depois verifica a condição</p><p>II - O while verifica a condição e executa uma instrução, caso ela seja verdadeira</p><p>III - O do..while executa a instrução, independente da condição, ao menos uma vez</p><p>IV - for, do..while e while sempre executam a instrução antes de verificar a condição</p><p>Assinale a alternativa correta:</p><p>a) Apenas as alternativas I e IV estão correta</p><p>b) Apenas as alternativas I e III estão corretas</p><p>c) Apenas as alternativas II e III estão corretas (correta)</p><p>d) Todas alternativas estão corretas</p><p>e) Nenhuma das alternativas está correta</p><p>Questão 9</p><p>De acordo com o programa a seguir, considere o nome digitado como Maria Aparecida. O que será impresso no</p><p>final do programa?</p><p>#include <cstring></p><p>#include <cstdio></p><p>#include <cctype></p><p>using namespace std;</p><p>int main()</p><p>{</p><p>char nome[50];</p><p>int x = 0;</p><p>gets(nome);</p><p>while (nome[x] != '\0')</p><p>{</p><p>if (nome[x] == 'a')</p><p>nome[x] = toupper(nome[x]);</p><p>x++;</p><p>}</p><p>puts(nome);</p><p>return 0;</p><p>}</p><p>a) MAriA ApArecidA (correta)</p><p>b) Lixo, pois a variável não foi inicializada</p><p>c) Maria Aparecida</p><p>d) mAriA apArecidA</p><p>Questão 10</p><p>Qual a saída produzida pelo trecho de código a seguir:</p><p>int x;</p><p>for (x = 47 ; x > 0 ; x/=4)</p><p>printf("%d-" , x) ;</p><p>a) 11- 2-</p><p>b) 47-11-1-</p><p>c) 47-11-2 (correta)</p><p>d) 47-11-1-0</p><p>e) Nenhuma das alternativas</p>