Prévia do material em texto
GABARITO Protocolo: 851905 Página 1 - 23/06/2024 às 08:45 Prova Data de aplicação: 15/03/2024 Curso: Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: Linguagem de Programação I Ano: 20241 / Semestre: 2 RGM: 343.6124 / Aluno: CÁSSIA GUEDES PEREIRA PROVA 01 Questão 1 Crie um programa para ler um nome (char de tamanho 30) e imprimir este nome 3 vezes, em três linhas diferentes Resposta do aluno: #include<cstdio> int main() { char nome[30]; printf("digite um nome:"); scanf("%s", nome); printf("\n%s", nome); return 0 } Parecer do professor: correto Questão 2 1) Crie um programa que leia cinco números e mostre na ordem inversa que foram informados. Resposta do aluno: #include<iostream> using namespace std; int main() { int i; for(int i = 0; int <= 5; i++) { cout<<"digite um número"; return 0; } Parecer do professor: o programa deveria ler números e mostrá-los na ordem inversa Questão 3 Qual é a finalidade da função printf em C? a) Ler dados do usuário b) Exibir uma string na tela (correta) c) Alocar memória d) Nenhuma das anteriores Questão 4 Das alternativas apresentadas a seguir, uma não contém palavras-chave, e, portanto, podem ser utilizadas como nome para variáveis: a) char, register, typedef, if b) min, name, text, age (correta) c) continue, goto, static, union d) const, short, unsigned, struct Questão 5 Qual é o resultado da seguinte expressão em C: 3 + 4 * 2 - 7 / 3 a) 10 b) 8 (correta) c) 9 GABARITO Protocolo: 851905 Página 2 - 23/06/2024 às 08:45 d) 7 Questão 6 Qual dos seguintes tipos de dados em C é usado para armazenar um único caractere? a) int b) char (correta) c) string d) float Questão 7 O que será impresso na tela de saída do programa a seguir? Marque a alternativa correta. ----------------------------------------------------------------------------------------------------------------------- #include <cstdio> int main() { int x, y, z, a = 8, b = 4; x = a * a + b; y = x * b - a; z = y - x; printf("%d %d %d", x,y,z); return 0; } ----------------------------------------------------------------------------------------------------------------------- a) 68 272 272 b) 68 264 196 (correta) c) 64 268 272 d) 68 272 264 e) 64 272 264 Questão 8 Qual das alternativas abaixo corresponde à biblioteca utilizada pelos operadores cin e cout? a) stdio.h b) string.h c) iostream (correta) d) stdlib.h Questão 9 Qual das seguintes afirmações sobre o uso do ponto e vírgula (;) na linguagem de programação C é verdadeira? a) O ponto e vírgula é opcional ao final de uma instrução b) O ponto e vírgula é usado para separar declarações (correta) c) Uma função em C é sempre terminada com um ponto e vírgula d) O ponto e vírgula é utilizado para marcar o início de um bloco de código Questão 10 À respeito de comandos de saída de dados, analise as instruções a seguir e marque a alternativa correta: I - puts(589); II - putchar("c"); III - printf(6987); GABARITO Protocolo: 851905 Página 3 - 23/06/2024 às 08:45 IV - cout<<1452; a) Apenas as alternativas I e II estão corretas b) Apenas as alternativas II e IV estão corretas c) Apenas as alternativas III e IV estão corretas d) Todas estão corretas e) Nenhuma está correta (correta) PROVA 02 Questão 1 Crie um programa que contenha um vetor de quinze elementos. O programa deverá pedir ao usuário que informe os números para o vetor, e depois de informado, exibir na tela de saída do programa os números a partir da posição 6 até o final Resposta do aluno: #include<cstdio> int main(){ char vet[15]; int i; for(int i = 0; i<=15;i++) { printf("informe os numeros do vetor"); return 0; } Parecer do professor: o programa não está lendo e nem exibindo os números do vetor Questão 2 Crie um programa em que o usuário informa quantos números serão lidos. Feito isto, o programa deve pedir ao usuário que informe esses números, e o programa deve calcular a soma destes números informados e exibi-la ao final. Resposta do aluno: #include<iostream> using namespace std; int main() { int n1,n2, resposta; int soma = 0; cout<<"quantos numeros serao lidos"; cin>>resposta; for(int i = 0; i <= resposta; i++) { cout<<"diga o numero"; cin>>n1; soma = soma + n1; return 0; } Parecer do professor: correto Questão 3 Analisando o programa a seguir, podemos dizer que uma das funções listadas pode substituir o loop (while) que foi criado, qual delas? #include <cstring> int main() { char nome[50]; int x = 0; gets(nome); while (nome[x] != '\0') x++; return 0; } GABARITO Protocolo: 851905 Página 4 - 23/06/2024 às 08:45 a) strcat b) strcmp c) strcpy d) strlen (correta) Questão 4 Dado o programa abaixo, quais valores serão exibidos na tela de saída #include <cstdio> int main() { int x = 5; while (x < 50) { printf("%d",x); x = (x + 5) *2; } return 0; } a) 10,20,50 b) 20,40,50 c) 5,20 (correta) d) 5,10,20,40 e) 10,20,40 Questão 5 Analise o programa a seguir e verifique dentre as alternativas apresentadas, qual delas corresponde à alteração que deve ser efetuada no programa para que ele imprima apenas os números ímpares do intervalo de 3 a 30 #include <cstdio> int main() { int x = 3; while (x < 30) GABARITO Protocolo: 851905 Página 5 - 23/06/2024 às 08:45 { printf("%d",x); x++; } return 0; } a) Substituir x++ por x*=2; b) Substituir x++ por x+=2; (correta) c) Incluir a seguinte instrução antes do printf: if (x%2 ==0) d) Alterar a instrução que contém o printf para: printf("%d",x+1); Questão 6 De acordo com o programa a seguir, considere o nome digitado como Maria Aparecida. O que será impresso no final do programa? #include <cstring> #include <cstdio> #include <cctype> using namespace std; int main() { char nome[50]; int x = 0; gets(nome); while (nome[x] != '\0') { if (nome[x] == 'a') nome[x] = toupper(nome[x]); x++; } puts(nome); return 0; } a) MAriA ApArecidA (correta) b) Lixo, pois a variável não foi inicializada c) Maria Aparecida d) mAriA apArecidA Questão 7 Qual será o valor de cont ao final do programa a seguir? GABARITO Protocolo: 851905 Página 6 - 23/06/2024 às 08:45 #include <cstdio> int main() { int vet[100]; int i, x = 5, cont = 0; for (i=0; i<100; i++) { vet[i] = i; } for (i=0; i<100; i++) { if (vet[i] == x) cont++; } printf("%d",cont); return 0; } a) 20 b) 50 c) 1 (correta) d) 5 Questão 8 Qual será o valor de x após a série de comandos abaixo: a = 3; b = 6; x = 0; x = (b > a) ? 2 : 1; a) 6 b) 3 c) 2 (correta) d) 1 Questão 9 O que será impresso na tela de saída do programa a seguir? Marque a alternativa correta. #include <cstdio> int main() { int x, vet[5]; GABARITO Protocolo: 851905 Página 7 - 23/06/2024 às 08:45 for (x = 0; x <5; x++) { if (x % 2 == 1) vet[x] = x; else vet[x] = 0; printf("%d ",vet[x]); } return 0; } a) 0 0 0 0 0 b) 1 1 1 1 1 c) 0 1 0 3 0 (correta) d) 0 1 0 1 0 e) Nenhuma das alternativas anteriores Questão 10 Considerando o programa a seguir, é correto afirmar que depois de terminado o for, o vetor vet terá os seguintes valores: #include <cstdio> int main() { int vet[5] = {1,2,3,4,5}; int i; for (i=0; i<4; i++) { vet[i] = i * vet[i+1]; } return 0; } a) 1,2,3,4,5 b) 0,3,8,15,5 (correta) c) 0,1,2,3,4 d) 0,2,8,10,4 GABARITO Protocolo: 851905 Página 8 - 23/06/2024 às 08:45