Buscar

Exercicios linguagem de programação I

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

1.
		No ambiente Dev-cpp, temos algumas facilidades. Uma delas é quando desejarmos compilar e executar logo em seguida com um único clique ou um pressionamento de uma tecla.
Analise as afirmativas abaixo e escolha a opção correta
I Pressionar F9(pode ser F11 em versões mais novas)
II Clicar no ícone Compilar
III Clicar no ícone Executar
IV Clicar no ícone Compilar e Executar
		
	
	
	
	
	Só a I possibilita isso
	
	
	Só a IV possibilita isso
	
	 
	Tanto a I quanto a IV possibilitam isso
	
	
	Só a III possibilita isso
	
	
	Só a II possibilita isso
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		2.
		Na Aula 1, estudamos algumas características e vantagens da linguagem C. Observe as afirmativas abaixo e assinale a opção que contem a resposta correta.
I Tem boa Portabilidade. 
II Não pode ser modularizada. 
III É uma linguagem Orientada a Objetos.
IV Uma linguagem que pode manipular endereços de memória. 
V Não possui um propósito especifico.
		
	
	
	
	
	As afirmativas II, IV e V estão corretas e as demais, erradas.
	
	
	As afirmativas I e IV estão corretas e as demais, erradas.
	
	
	As afirmativas II, III e IV estão corretas e as demais, erradas.
	
	
	As afirmativas IV e V estão corretas e as demais, erradas.
	
	 
	As afirmativas I, IV e V estão corretas e as demais, erradas.
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		3.
		Sabemos que a linguagem C apresenta várias vantagens. Quando dizemos que usamos três procedimentos básicos: sequência, seleção e iteração e que é possível gerar um executável rápido, estamos nos referindo às seguintes características na ordem:
		
	
	
	
	 
	Estruturada e Rapidez
	
	 
	Portabilidade e Estruturada
	
	
	Rapidez e Portabilidade
	
	
	Portabilidade e Modularidade
	
	
	Complexidade e Estruturada
	 Gabarito Comentado
	
	
		4.
		Sabe-se que a linguagem C é uma das mais utilizadas no mundo. Desenvolvida em 1972 é uma linguagem voltada para programadores. Dentre as opções abaixo é incorreto afirmar:
		
	
	
	
	
	Possui características de Linguagem de alto nível.
	
	 
	Permite a compilação de softwares para plataforma Windows, Linux e Unix.
	
	
	Possibilita o desenvolvimento de funções próprias
	
	 
	Possui com conjunto muito grande palavras reservadas o que torna o aprendizado complexo
	
	
	Possui características de Linguagem de baixo nível.
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		5.
		Um dos grandes problemas de empresas que desenvolvem software é a variedade hardware. Como por exemplo, em grandes redes de supermercados, o software instalado não pode ser trocado sem maiores custos e traumas. A linguagem C possui a capacidade de ser compilado ou executado em diferentes arquiteturas (seja de hardware ou de software). Identifique abaixo a capacidade descrita.
		
	
	
	
	 
	Portabilidade
	
	
	Flexibilidade
	
	
	Modularidade
	
	
	Polimorfismo
	
	
	Reuso
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		6.
		Em Linguagem C, assim como em outra linguagens, há a necessidade do uso de valores constantes, ou seja, elementos que durante toda a execução do código não mudará de valor. Considerando a linguagem C, qual a maneira correta para se declarar a constante PI.
		
	
	
	
	
	#define int PI 3.14;
	
	
	const PI 3.14;
	
	
	define int PI 3.14;
	
	 
	#define PI 3.14;
	
	 
	const int PI 3.14;
	
	
	
		7.
		Qual seria o menor programa compilável da Linguagem C?
		
	
	
	
	 
	main(){}
	
	 
	main[]{}
	
	
	main()[]
	
	
	main{}()
	
	
	main{}
	
	
	
		8.
		Acerca da Linguagem de Programação C, podemos afirmar que: I) Todo programa em C é composto de uma ou mais funções. II) Uma função main deve ser definida em cada programa. III) O C é case sensitive, ou seja, diferencia maiúsculas de minúsculas. IV) O C é baseado na Linguagem UAL. Marque somente a única resposta correta:
		
	
	
	
	
	Somente a afirmativa IV é correta.
	
	
	Nenhuma das afirmativas é correta.
	
	 
	Somente as afirmativas I, II e III são corretas.
	
	
	Somente a afirmativa I é correta.
	
	 
	Somente as afirmativas I e IV são corretas
	
	
	
		1.
		Um Engenheiro estava construindo um trecho de programa onde pedia que o usuário respondesse com uma letra ou um algarismo.
Se o usuário não tivesse respondido, ele enviaria uma mensagem de erro.
Ele sabia que precisava aprender mais alguma estrutura, mas, no momento, pensou em experimentar uma função que pudesse lhe dar um retorno.
Pesquisou nas bibliotecas estudadas na aula 2 e achou.
Qual o nome dessa função?
		
	
	
	
	
	isalpha()
	
	 
	isalnum()
	
	 
	isnotalphadigit()
	
	
	isdigit()
	
	
	isspace()
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		2.
		No comando: printf("Este é o numero: %d", 8); O que é o número "8"?
		
	
	
	
	
	Um caractere
	
	
	Uma variável
	
	 
	Uma constante
	
	
	Um endereço
	
	
	Um ponto flutuante
	
	
	
		3.
		No ambiente Linux, não precisamos, obrigatoriamente, ter um único ambiente para editar, compilar e executar um programa codificado na linguagem C como temos no Windows.
Sendo assim, qual seria a sequência para conseguirmos editar, compilar e executar um programa?
		
	
	
	
	
	Usar um editor de texto para digitar o código/ salvar com extensão c/ digitar uma linha de comando no terminal, usando o compilador gcc que irá gerar o executável e executá-lo em seguida.
	
	
	Usar um editor de texto para digitar o código e salvar com extensão c/ digitar uma linha de comando no terminal usando o compilador gcc para gerar o executável / digitar o nome do executável no terminal para executá-lo.
	
	
	Usar um editor de texto para digitar o código/ salvar sem se preocupar com extensão/ e digitar uma linha de comando, também no terminal, usando o compilador gcc.
	
	 
	Usar um editor de texto para digitar o código e salvar com extensão c/ digitar uma linha de comando no terminal usando o compilador gcc para gerar o executável/ digitar o nome do executável, precedido por ./ no terminal para executá-lo.
	
	
	Usar o terminal para digitar o código/ salvar sem se preocupar com extensão/ e digitar uma linha de comando, também no terminal, usando o compilador gcc.
	 Gabarito Comentado
	
	
		4.
		Um programa em C++ que calcula o consumo de combustível de veículos possui as variáveis "dist" para entrada da distância percorrida (em km), "comb" para entrada da quantidade de combustível abastecido (em litros) e "cons" que calcula o consumo (dist / comb). Qual das opções abaixo mostra na tela o resultado do consumo de combustível de um veículo?
		
	
	
	
	 
	cout << "O consumo é: cons" << endl;
	
	
	cout: "O consumo é: " << cons, endl;
	
	
	cout << "O consumo é:, cons << endl;
	
	 
	cout << "O consumo é: " << cons << endl;
	
	
	cout ("O consumo é: " << cons) endl;
	
	
	
		5.
		Você estava trabalhando na plataforma Windows e foi definindo várias funções específicas para sua área de atuação.
Um dia, resolveu criar uma biblioteca e nomeou de minhasFuncoes.h, salvando em uma pasta de nome funcoes na raiz do drive C.
Quando foi incluir, usou:
		
	
	
	
	
	#include
	
	
	#include "minhasFuncoes.h"
	
	 
	#include "c:\funcoes\ minhasFuncoes.h"
	
	 
	#include minhasFuncoes.h
	
	
	#include"c:\ minhasFuncoes.h\funcoes"
	
	
	
		6.
		Assinale a função que não é disponível na plataforma Linux.
		
	
	
	
	
	return
	
	 
	system()
	
	
	scanf()
	
	
	printf()
	
	
	main()
	
	
	
		7.
		Se a variável p está armazenando o valor 6, qual valor será armazenado na variável r após ser axecutada a função: r = pow (r,3)
		
	
	
	
	
	126
	
	
	98
	
	
	18
	
	 
	216
	
	
	36
	
	
	
		8.
		Considere o código abaixo. Considere que o usuário digite 11.
O que será impresso para o usuário?
 int main ()
{
int num;
printf ("Digite um numero: ");
scanf ("%d",&num);
if (num==10) {
   printf ("Show!");
} else {
   if (num>10) {
      printf ("Top!");
   } else {
      printf ("Mara!");
   }
}
return 0;
}
		
	
	
	
	
	return 0;
	
	
	Show!
	
	 
	Mara!
	
	
	0
	
	 
	Top!
	
		1.
		Considerando que a variável TemperC receba valor de temperatura em graus Celsius digitado pelo usuário e que a variável TemperF seja o resultado da temperatura de entrada em graus Fahrenheit, qual seria a linha de comando correta, sabendo que oF = oC x 1,8 + 32.
		
	
	
	
	 
	TemperF = (TemperC * 1.8) + 32
	
	
	TemperF = TemperC * 1,8 + 32
	
	
	TemperF = TemperC * (1.8 + 32)
	
	
	TemperF = TemperC x 1.8 + 32
	
	
	TemperF = (TemperC * 1,8) + 32
	
	
	
		2.
		Acerca das variáveis em Linguagem C, podemos afirmar que: I) Toda variável deve ser declarada antes de ser usada como sendo de um tipo. II) O tipo define o tamanho de bytes da variável e o intervalo de valores que ela poderá armazenar. III) O nome da variável poderá conter até 32 caracteres sendo que o primeiro preferencialmente deve ser uma letra. IV) Não existe regras para se declarar uma variável. Marque somente a única resposta correta:
		
	
	
	
	 
	Somente as afirmativas I e IV são corretas.
	
	
	Nenhuma das afirmativas é correta.
	
	
	Somente a afirmativa IV é correta.
	
	
	Somente a afirmativa I é correta.
	
	 
	Somente as afirmativas I, II e III são corretas.
	
	
	
		3.
		Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas proposições lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro.
		
	
	
	
	
	((pontos>=10) # (pontos <=20))
	
	 
	((pontos>=10) && (pontos <=20))
	
	
	((pontos>=10) || (pontos <=20))
	
	
	((pontos>=10) ! (pontos <=20))
	
	
	((pontos>=10) % (pontos <=20))
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		4.
		Os operadores de incremento (++) e decremento (--) são muito utilizados no desenvolvimento de programas. Se em uma linha de um programa em C utilizarmos o seguinte comando: a=b++, qual das opções abaixo demonstra a operação que será executada:
		
	
	
	
	
	a=a+1; b=b+1;
	
	 
	a=b; b=b+1;
	
	
	b=b+1; a=b;
	
	
	b=b-1; a=b;
	
	
	a=b; b=b-1;
	
	
	
		5.
		A função scanf utiliza qual operador para a entrada de dados:
		
	
	
	
	 
	Atribuição
	
	 
	Endereço
	
	
	Aritmético
	
	
	Condicional
	
	
	Relacional
	
	
	
		6.
		Acerca dos operadores, marque a opção correta:
		
	
	
	
	
	O operador = tem a mesma função de ==.
	
	
	O operador "maior ou igual" pode ser utilizado tanto como >= quanto =>.
	
	 
	Não podemos realizar operações dentro do comando printf.
	
	
	Todas as alternativas acima estão corretas.
	
	 
	O operador potência necessita de uma biblioteca específica.
	
	
	
		7.
		Escolha a opção que inclui somente nomes válidos para variáveis na linguagem C.
		
	
	
	
	
	2_ou_1, fim, *h, j
	
	 
	If, nota_do_aluno_2, HOJE, _yes
	
	
	i, j, int, obs
	
	
	nota-2 , a36, x_y
	
	
	2nota, a36, x#y, --j
	 Gabarito Comentado
	
	
		8.
		Um engenheiro precisava calcular o valor do imposto a ser pago no carnê leão.
Sabe-se que o imposto é calculado sobre o salário bruto.
Acompanhe o programa codificado na linguagem C, supondo que você digitou 4000 para primeira solicitação de entrada e 1000, para segunda solicitação. Escolha a opção onde está presente o valor do imposto.
		
	
	
	
	
	Valor do imposto a ser pago: 800.00
	
	
	Valor do imposto a ser pago: 650.00
	
	 
	Valor do imposto a ser pago: 750.00
	
	
	Valor do imposto a ser pago: 1000.00
	
	
	Valor do imposto a ser pago: 850.00
	
		1.
		Na construção de programas na linguagem C, precisamos tomar muito cuidado com a sintaxe das expressões condicionais, para que não tenhamos resultados inesperados.
Supondo que as variáveis foram devidamente declaradas e levando em conta apenas a linha de código apresentada, dentre as opções qual apresenta erro na sintaxe para a linguagem C.
		
	
	
	
	
	if (a > 0) {a = 2;} else {b= 2;}
	
	
	if (a > 0) { a = 2;}
	
	 
	if x > 0 { a = 2;}
	
	
	if (x > 0) a = 2 else b = 2 ;
	
	
	if (a > 0) {a = 2;} else if (b < 10) {b= 2;}
	 Gabarito Comentado
	
	
		2.
		Um desenvolvedor construiu um código onde estava presente o trecho abaixo. 
char resp;
scanf("%c", &resp); 
switch(toupper(resp)) ;
{
case 'A': puts("Digitou a letra A" ); break; 
case 'E': puts("Digitou a letra E" ); break; 
case 'i': puts("Digitou a letra I" ); 
case 'O': puts("Digitou a letra O" ); 
case 'U': puts("Digitou a letra U" ); break; 
default: puts("Nao digitou vogal" ); 
}
Analise as afirmativas abaixo e assinale a opção correta.
I Se digitar I, aparece: Digitou a letra I / Digitou a letra O/ Digitou a letra U uma mensagem em cada linha. 
II Se digitar i, aparece: Nao digitou vogal. 
III Se digitar o, aparece:Digitou a letra O/ Digitou a letra U uma mensagem em cada linha. 
IV Se digitar a, aparece: Nao digitou vogal. 
V Se digitar A, aparece: Digitou a letra A. 
		
	
	
	
	
	II e, IV são verdadeiras
	
	 
	I, III e IV são verdadeiras
	
	
	III e IV são verdadeiras
	
	
	Só a a III é verdadeira
	
	 
	II, III e V são verdadeiras
	 Gabarito Comentado
	
	
		3.
		Em programação é possível que haja decisões usando o IF. Todo IF deve vir seguido de uma condição que deve ter como resultado Verdadeiro ou Falso. Considerando esta afirmativa, qual das opções abaixo deve apresentar erro na compilação.
		
	
	
	
	
	if (y >= 14)
	
	
	if (x > 7.2)
	
	 
	if (a != 6)
	
	 
	if (z = 21)
	
	
	if (x <= 8)
	
	
	
		4.
		 Qual a saída esperado no trecho de código abaixo:
int x = 4;
int y = 8;
if (x < 2){
      printf("%d", x);
} else{
       printf("%d", y);
}
		
	
	
	
	
	\n8
	
	
	9
	
	
	12
	
	 
	8
	
	
	4
	
	
	
		5.
		Observe o trecho do programa abaixo:
float a, b, c;
printf("\n Digite o primeiro numero: "); scanf ("%f",&a);
printf("\n Digite o segundo numero: "); scanf ("%f",&b);
if (a >= b) { printf("Valor de c: %f" , c = a + b); } else { printf("Valor de c: %f" , c = a - b); }
Se o usuário digitar os números abaixo, marque a opção que contém as saídas corretas.
10 e 5 ; 8 e 8 ; 3 e 9 ; 25 e 15 ; 6 e 32.
		
	
	
	
	 
	15 ; 16 ; -6 ; 40 ; -26
	
	
	15 ; 16 ; 6 ; 40 ; -26
	
	
	16 ; 0 ; -6 ; 40 ; 26
	
	
	16 ; - 16 ; -6; 40 ; -26
	
	
	15 ; 0 ; -6 ; 35 ; 26
	
	
	
		6.
		O Operador ternário é uma forma elegante de representar if else if, visto que é abreviada. Observe o trecho abaixo e assinale a opção que descreve o que faz.
int a=12, b=35, c=7, resp;
resp=(a>b && a > c) ?a: (b>c) ? b/c:c;
printf (''valor: %d'' , resp);
		
	
	
	
	
	Exibe valor: 0
	
	
	Exibe valor: 35
	
	 
	Exibe valor: 5
	
	
	Exibe valor: 12
	
	
	Exibe valor: 7
	 Gabarito Comentado
	
	
		7.
		Alguns iniciantes na linguagem C sentem dificuldades de usar a estrutura dos ifs encadeados. Sabemos que algumas afirmativas abaixo não produziriam um resultado errado, mas que tornaria o programa com menor qualidade, visto que testes seriam realizados sem necessidade.
Então, leia com atenção e só escolha a afirmativa poderá ajudá-los a construir programas com qualidade, usando todos os recursos da estrutura if ... else if .....
 
		
	
	
	
	
	Posso substituir ifs encadeados por ifs simples sem prejuízo de qualidade.
	
	
	Posso substituir por vários ifs simples e um if composto, ao final, para criticar a resposta errada do usuário.
	
	 
	O número de ifs encadeados é igual ao número de respostas possíveis, não considerando a resposta errada do usuário, pois essa seria criticada no else.
	
	
	Melhor seria substituir, sempre, os ifs encadeados pela estrutura do switch().
	
	
	O número de ifs encadeados é igual ao número de respostas possíveis, considerando a resposta errada do usuário e não usaria else.
	
	
	
		8.
		Qual é a saída de tela, deste trecho de programa?
int x=4, 
y=8; 
if (x < 2) 
    printf ("%d \n", x); 
else 
    printf ("%d \n", y);
		
	
	
	
	 
	\n4
	
	
	12
	
	
	\n8
	
	 
	8
	
	
	9
	
		1.
		Qual a estrutura de repetição usada para quantidade indeterminada de repetições?
		
	
	
	
	
	for
	
	
	struct
	
	
	switch
	
	 
	while
	
	
	if-else
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		2.
		Sabendo-se que um usuário entrou com o primeiro número (num1) igual a 10 e o segundo (num2) número igual a 20, analise o trecho do código apresentado na figura 1 e marque a resposta que confere exatamente com a saída esperada pelo código.
Figura 1
 
		
	
	
	
	 
	
	
	
	
	
	 
	
	
	
	
	
	
	
	
	
	
		3.
		Qual será a saída do programa abaixo?
int main () {
int soma = 0;
int i = 0;
while (i <= 700) {
     if (i % 7 == 0) {
     soma = soma +i; }
     i ++; }
cout << soma << endl;
}
		
	
	
	
	
	Soma dos números ímpares menores que 700;
	
	
	Soma dos números primos menores que 700;
	
	 
	Soma dos números inteiros menores que 700 divisíveis por 7;
	
	 
	Soma dos números inteiros menores que 700;
	
	
	Soma dos números inteiros menores que 700 com resto 7.
	
	
	
		4.
		Considere o trecho de código abaixo. O que será impresso quando o programa for executado?
int main()
{
    int contador = 10; 
     
    while (contador > 1) 
    {
          printf("%d ", contador); 
          
          contador--;
         
    }
     
    return 0; 
}
		
	
	
	
	 
	10 9 8 7 6 5 4 3 2
	
	
	10 9 8 7 6 5 4 3 2 1
	
	
	1 2 3 4 5 6 7 8 9
	
	
	Nunca vai parar. 1 1 1 1 1 1 1 1 1 1 1 1 ...
	
	 
	Nunca vai parar. 10 10 10 10 10 10 10 10...
	
	
	
		5.
		Sabendo que no programa abaixo foi digitado na sequencia os seguinte números: 4 e 10. Marque a alternativa que contém a resposta do programa aos números digitados. int main(){ int a,b; scanf("%d",&a); scanf("%d",&b); a = a + 1; while (a < b){ printf("%d",a); a = a + 1;} system("pause"); return 0;}
		
	
	
	
	 
	4 5 6 7 8 9 10
	
	 
	5 6 7 8 9
	
	
	3 4 5 6 7 8 9 10 11
	
	
	3 4 5 6 7 8 9
	
	
	5 6 7 8 9 10 11
	
	
	
		6.
		O programa abaixo terá qual saída?
int main() {
int j = 2;
for ( int i = 1 ; i < = 3 ; i++ ) {
     cout << i * j << endl; }
}
		
	
	
	
	
	1 * 2 = 2
2 * 2 = 4
3 * 2 = 6
	
	
	12
	
	
	2, 4, 6
	
	 
	2
4
6
	
	
	1 * 2
2 * 2
2 * 3
	
	
	
		7.
		 Uma das dificuldades da estrutura escolha/ caso é o fato das restrições variarem para cada linguagem, dificultando a fixação. Na linguagem C, essa estrutura recebe o nome de switch() e tem suas restrições. Observe os trechos abaixo e assinale o que é possível ser usado na linguagem C, supondo que  se espera encontrar na variável de nome a, inteira, alguns valores e entres eles está o número 90. Analise as linhas abaixo e assinale que foi escrita corretamente para testar o número 90 na estrutura switch().
		
	
	
	
	 
	case 90: printf("Pode") ; break;
	
	
	90: printf("Pode"); stop;
	
	
	90: printf("Pode");
	
	 
	case a=90: printf("Pode") ;break;
	
	
	case a > 90: printf("Pode") ;break;
	 Gabarito Comentado
	
	
		8.
		A estrutura do if na linguagem C, como em toda linguagem, tem uma sintaxe. Observe as afirmações abaixo e escolha a opção ERRADA.
 
I As chaves de abertura e fechamento, sempre,  não são obrigatórias.
II No teste unimos expressões relacionais com operadores lógicos quando necessário.
III A palavra then está presente na estrutura.
IV O uso do  else poderá não ser necessário.
 
		
	
	
	
	
	II e IV estão corretas.
	
	
	II está correta e a III não está correta.
	
	
	IV está correta e a I não está correta.
	
	
	I está errada.
	
	 
	I e III estão corretas.
	
		1.
		Qual das alternativas abaixo possui o comando que devolve o numero de caracteres em um uma string?
	
	
	
	
	 
	strlen
	
	
	strcat
	
	
	strcamp
	
	
	strcap
	
	 
	strcout
	
	
	
		2.
		Analise as sentenças abaixo sobre a declaração de vetores e, em seguida, assinale a alternativa correta:
I. Na linguagem C++, uma string é um vetor de caracteres terminado com um caracter nulo cujo valor inteiro é igual a zero (código ASCII igual a 0).
II. O terminador nulo também pode ser escrito usando a convenção de barra invertida do C++ como sendo '\0'.
III. Como precisamos reservar duas posições para o terminador (a barra e o zero), sempre iremos declarar o tamanho necessário menos um.
 
	
	
	
	
	 
	Somente as sentenças I e II estão corretas
	
	
	Somente as sentenças I e III estão corretas
	
	
	Somente as sentenças II e III estão corretas
	
	
	Somente a sentença II está correta
	
	 
	Todas as sentenças estão corretas
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		3.
		Uma empresa possui uma série de programas desenvolvidos em C que acessam um mesmo arquivo. Um dos problemas constatados é a falta de padronização no armazenamento de dados neste arquivo. Alguns aplicativos gravam em caixa alta (letras maiúsculas), outros em caixa baixa (letras minúsculas) e alguns não administram isto.
Para tanto, foi definido, por padrão, que todos os caracteres lidos devem ser convertidos para caixa alta imediatamente após a leitura do mesmo. Qual função do C devo incluir nos programas para efetuar a conversão de caractere a caractere?
	
	
	
	
	
	toupr
	
	
	convertUp
	
	
	upper
	
	 
	convertUpper
	
	 
	toupper
	 Gabarito Comentado
	
	
		4.
		Qual das instruções abaixo compara duas strings?
	
	
	
	
	
	strcamp
	
	
	strcompa
	
	
	strcpy
	
	
	strcat
	
	 
	strcmp5.
		A linguagem C, ao contrário de outras linguagens de programação, não possui um tipo de dados correspondente às strings; no lugar, usam-se vetores e ponteiros
Admitindo-se que existe declarado um vetor chamado nome de 50 posições(nome[50]), qual das opções abaixo efetua corretamente a leitura de seu primeiro nome?
	
	
	
	
	
	scanf("%c", nome[0]);
	
	
	scanf("%s&c", nome[0]);
	
	 
	scanf("%s", nome);
	
	 
	scanf("%s", &nome);
	
	
	scanf("%&s", &nome);
	 Gabarito Comentado
	
	
		6.
		Os chamados vetores e matrizes podem ser considerados como:
	
	
	
	
	 
	Estruturas de dados homogêneas
	
	
	Comandos de repetição
	
	
	Comandos de seleção composta
	
	
	Comandos de seleção
	
	 
	Estruturas de dados heterogêneas
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		7.
		
Qual o elemento do vetor referenciado por vet[vet[5]]?
	
	
	
	
	
	3
	
	
	9
	
	
	1
	
	 
	4
	
	
	2
	
	
	
		8.
		A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
	
	
	
	
	
	char valores[5] = {'A', 'B', 'C', 'D'};
	
	 
	char valores = "ABCD";
	
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	
	int valores[] = {10, 15, 20, 25, 30};
	
	 
	char valores[] = {'A', 'B', 'C', 'D'};
	
	
	
		1.
		Na linguagem C os vetores são um assunto de grande relevância, por isso o programador deve saber bem como utilizar, declarar e utilizar.
Sabendo que as notas dos alunos de uma escola variam entre 0.0 e 10.0 com uma casa decimal e que é necessário criar um vetor que armazene até 150 notas, qual alternativa declara de forma correta este vetor para  atender a necessidade citada.
	
	
	
	
	 
	float %.1f notas[150];
	
	
	int notas[150];
	
	
	real notas[150];
	
	
	integer notas[150];
	
	 
	float notas[150];
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		2.
		Considere que todas as bibliotecas necessárias foram declaradas.
int main()
{
int mat[3][3], i, j, det;
puts("Codigo que calcula o determinante de uma matriz 3x3\n");
____{
puts("Digite os elementos da matriz\n");
____(i=0;i<3;i++)
____(j=0;j<3;j++)
scanf("%d", &mat[i][j]);
fflush(stdin);
det= (mat[0][0]*mat[1][1]*mat[2][2]) + (mat[0][1]*mat[1][2]*mat[2][0]) + (mat[0][2]*mat[1][0]*mat[2][1]) - ((mat[0][1]*mat[1][0]*mat[2][2]) + (mat[0][0]*mat[1][2]*mat[2][1]) + (mat[0][2]*mat[1][1]*mat[2][0]));
printf("\ndet=%d\n", det);
} ____ (det==0);
system("pause");
return (0);
}
Complete as lacunas do código da maneira correta para que o programa funcione corretamente.
	
	
	
	
	 
	do-for-for-while
	
	 
	do-if-else-while
	
	
	do-while-for-for
	
	
	while-for-do-for
	
	
	do-if-for-while
	 Gabarito Comentado
	
	
		3.
		As matrizes, assim como os vetores, são muito importantes para facilitar o trabalho de um programador, por isso é extremamente importante saber como utiliza-la.
Assinale a alternativa em que há uma matriz bidimensional, do tipo inteiro, com 10 linhas e 20 colunas, declarada de forma correta.
	
	
	
	
	
	float matrizExemplo[20][10];
	
	
	matrizExemplo float[20][10];
	
	 
	int matrizExemplo[10][20];
	
	 
	int matrizExemplo[10,20];
	
	
	matrizExemplo int[10][20];
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		4.
		Para declararmos uma matriz inteira n de 5 linhas e 4 colunas, fazemos:
	
	
	
	
	 
	int n[5][4];
	
	
	int n[4][3];
	
	
	float n[5][4];
	
	
	char n[5][4];
	
	
	char n[4][3];
	
	
	
		5.
		
Qual o elemento do vetor referenciado pela expressão MAT[0][2]?
	
	
	
	
	
	6.4
	
	
	1.2
	
	 
	2.7
	
	 
	3.2
	
	
	1.1
	
	
	
		6.
		Uma matriz é definida como float mat[5][10]; Quantos elementos esta matriz armazena?
	
	
	
	
	
	5 elementos
	
	
	36 elementos
	
	 
	50 elementos
	
	
	45 elementos
	
	
	10 elementos
	
	
	
		7.
		Supondo que está desenvolvendo um programa de cadastro de alunos, qual das opções declara corretamente uma matriz caracter que suporte 30 nomes de até 20 caracteres?
	
	
	
	
	
	char nomes (20,30);
	
	
	char nomes (30);
	
	 
	char nomes [30][20];
	
	
	char nomes [30];
	
	 
	char nomes [20][30];
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		8.
		O professor de Matemática armazena as notas dos quatro bimestres e da média dos seus 47 alunos em cinco vetores.
Ele pretende agrupar esses vetores em uma matriz bidimensional de nome NOTAS na linguagem C.
Assinale a opção que possibilitará fazer o que o professor deseja.
	
	
	
	
	
	
float NOTAS[47,5]; 
	
	
	
float NOTAS[47][47]; 
	
	 
	
float NOTAS[47][5]; 
	
	
	
float notas[5][47]; 
	
	
	
float Notas[47][47]; 
	
		1.
		Dada a função abaixo, qual o valor que será retornado quando esta função for chamada com: perc(200, 15)
float perc(float val, float perc) {
    float resp;
    resp = val + val * (perc/100);
    return resp;
}
		
	
	
	
	
	130
	
	 
	230
	
	
	30
	
	 
	215
	
	
	170
	
	
	
		2.
		O chefe do departamento do pessoal da Empresa YYY gostaria de declarar matrizes bidimensionais para armazenar nomes dos 20 funcionários e 14 salários de cada um deles.
Assinale a linha onde a declaração atende ao que ele deseja.
		
	
	
	
	
	
float nomes[20][31], salarios[20][14]; 
	
	
	
char nomes[19][31]; float salarios[19][13]; 
	
	 
	
char nomes[20]; float salarios[19][13]; 
	
	 
	
char nomes[20][31]; float salarios[20][14]; 
	
	
	
char nomes[20][31]; float salarios[20][20]; 
	
	
	
		3.
		Qual o tipo de retorno e quantos parâmetros tem a função abaixo?
float media(int n1, int n2, int n3){
return (n1+n2+n3)/3;
}
		
	
	
	
	 
	Tipo de retorno: float Quantidade de parâmetros: 3
	
	 
	Tipo de retorno: int Quantidade de parâmetros: 3
	
	
	Tipo de retorno: float Quantidade de parâmetros: 2
	
	
	Tipo de retorno: media Quantidade de parâmetros: 3
	
	
	Tipo de retorno: media Quantidade de parâmetros: 2
	
	
	
		4.
		Na definição de uma função, precisamos escrever suas partes, sendo algumas obrigatórias e outras, facultativas. 
 
tipo nome ( tipo1 parâmetro1, tipo2 parâmetro2, ..., tipon parâmetroN)
{
  corpo da função
 }
 
Das opções apresentadas abaixo, marque a que apresenta apenas partes obrigatórias de forma que a função execute alguma tarefa, sem levar em consideração os símbolos (chaves, parênteses, etc).
		
	
	
	
	 
	Nome, Parâmetro e Corpo da função.
	
	
	Tipo, Nome e Parâmetros.
	
	 
	Tipo , Nome, e Corpo da função.
	
	
	Tipo, Parâmetro e corpo da função.
	
	
	Tipo, Nome, Parâmetros e Corpo da Função.
	 Gabarito Comentado
	
	
		5.
		Um programador durante a construção de um código precisava converter o texto correspondente a um ano em um número inteiro, para poder executar alguns cálculos a partir deste ano.
Das opções apresentadas, qual função apresenta a solução para o programador?
		
	
	
	
	
	strcont( ).
	
	
	strcat( ).
	
	 
	strlen( ).
	
	 
	atoi( ).
	
	
	strlength( ).
	
	
	
		6.
		MARQUE A OPÇÃO REFERNETE VALOR FINAL DA VARIÁVEL RESULT?11
	
	
	18
	
	 
	6
	
	
	7
	
	 
	9
	
	
	
		7.
		Função em C onde são colocados todos os comandos e outras funções que desejamos que sejam executadas
		
	
	
	
	
	return
	
	 
	main()
	
	
	systema("pause")
	
	
	begin
	
	
	end
	 Gabarito Comentado
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		8.
		Observe o código apresentado na questão:
#include < stdio.h>
#include < stdlib.h>
int x=4;
void main(){
  int x=5;
  exibir(x); 
  system("PAUSE");      
}
void exibir(int y){
   printf("%d",y);    
}
Dentre as opções abaixo é correto afirmar:
		
	
	
	
	
	O programa exibirá 4
	
	
	O programa exibirá 0
	
	 
	Ocorrerá um erro
	
	 
	O programa exibirá 5
	
	
	O programa exibirá 9
	
		1.
		Qual o modo de abertura de arquivo me permite ler, mas não escrever?
	
	
	
	
	
	a+
	
	
	a
	
	 
	w
	
	
	r+
	
	 
	r
	
	
	
		2.
		A função fgets():
	
	
	
	
	
	imprime um caracter de cada vez.
	
	 
	lê uma linha inteira de uma vez.
	
	
	lê um arquivo inteiro de uma vez.
	
	
	imprime uma linha inteira de uma vez.
	
	
	lê um caracter de cada vez.
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		3.
		Considere que as bibliotecas necessárias foram devidamente declaradas.
int main() {
FILE *arq ;
int i;
_____ c ;
arq = _____ ( " jornal.txt " , " r " ) ;
if ( arq == NULL ){
printf ( " Erro na abertura do arquivo " ) ;
system ( " pause " ) ;
exit ( 1 ) ;
} else
for ( i = 0; i<5; i++){
c = fgetc ( arq ) ;
printf( "%c", c ) ;
}
_____( arq ) ;
system ( " pause " ) ;
return 0;
}
Complete as lacunas do código para que o programa funcione corretamente.
A ordem em que as palavras são dispostas na resposta, devem preencher respectivamente as lacunas.
	
	
	
	
	 
	int - open - close
	
	
	int - abrir - fopen
	
	
	char - fopen - fechar
	
	
	float - fopen - fclose
	
	 
	char - fopen - fclose
	 Gabarito Comentado
	
	
		4.
		Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas tem um propósito específico.
Das afirmativas apresentadas qual define corretamente qual a finalidade da função fputc() .
	
	
	
	
	 
	Função para gravar um caractere.
	
	
	Funções para gravar uma linha.
	
	
	Função que fecha um arquivo.
	
	
	Função que detecta o fim do arquivo.
	
	
	Funções para gravação formatadas.
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		5.
		Qual o objetivo do programa abaixo?
	
	
	
	
	
	Gravar no arquivo de texto todos os dados do Vetor x.
	
	
	Ler do arquivo texto o valor de X, exibir na tela e fechar o arquivo de texto.
	
	
	Ler do arquivo texto o valor de X e exibir na tela.
	
	 
	Ler o valor de X via teclado, gravar no arquivo de texto o valor de X digitado pelo usuário e fechar o arquivo.
	
	
	Gravar no arquivo de texto apenas os valores impares do Vetor x.
	
	
	
		6.
		Na manipulação de arquivos na linguagem C, no processo de abertura do mesmo, podemos ter erros: devido a não existência do arquivo; ao arquivo estar corrompido; etc, não sendo possível abrir o mesmo.
Das afirmativas apresentadas qual define corretamente o que pode ser feito em relação ao erro na abertura, segundo o que foi apresentado nas aulas.
	
	
	
	
	
	O tratamento é feito com um if, e tendo havido problemas no arquivo de texto, o mesmo é eliminado e retornado uma mensagem padrão para o usuário.
	
	 
	A palavra chave FILE, que permite fazer a associação do arquivo, mantem o valor NULL caso não seja possível abrir o arquivo, desta forma, utilizando o if, o usuário pode mandar uma mensagem adequada para o usuário.
	
	
	Não é necessário tratar, pois não existindo o arquivo ele simplesmente cria um novo e nunca terá problema.
	
	
	Não é possível tratar este tipo de erro, pois precisamos da estrutura Try ... Catch que consegue prevenir e evitar o fechamento do programa.
	
	 
	A função fopen, retorna NULL quando não consegue abrir o arquivo e o usuário pode tratar o conteúdo da variável associada ao arquivo, comparando com o valor NULL.
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		7.
		Para a manipulação de arquivos na linguagem C, primeiro precisamos abrir o mesmo. Sabendo-se que o arquivo tem o nome de texto.txt, que foi associado com a variável de nome: arq, e que é do tipo texto, avalie cada uma das afirmativas e marque a que faz a abertura para ler e/ou gravar dados no fim do arquivo corretamente seguindo as regras da linguagem.
	
	
	
	
	
	arquivo = fopen("material.dat", "a+");
	
	
	arquivo = fopen("material.dat", "r+");
	
	 
	arq = fopen("texto.txt", "a+");
	
	
	arquivo = fopen("material.dat", "w+");
	
	
	arq = fopen("texto.txt", "w");
	 Gabarito Comentado
	
	
		8.
		Na manipulação de arquivos na linguagem C, podemos utilizar várias funções da linguagem. Cada uma delas tem um propósito específico.
Das afirmativas apresentadas qual define corretamente qual a finalidade da função feof() .
	
	
	
	
	 
	Funções para leitura formatada.
	
	 
	Função que detecta o fim do arquivo.
	
	
	Funções para gravar uma linha.
	
	
	Funções para ler um caractere.
	
	
	Função que fecha um arquivo.
	
		1.
		Suponha que o arquivo dados.txt contém a cadeia de caracteres "ABCYDEF" e nada mais. O que o seguinte programa imprime?
int main( void) {
FILE *entrada;
int c; 
entrada = fopen( "dados.txt", "r");
while ((c = getc( entrada)) != EOF)
printf( "%c ", c);
fclose( entrada);
return EXIT_SUCCESS;
}
	
	
	
	
	
	ABCDEFY
	
	
	DEF
	
	 
	ABCDEF
	
	
	ABC
	
	 
	ABCYDEF
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		2.
		Uma das ultimas funções estudadas foi a rename(). Suponha que o nome do arquivo é inicial é ARQ e o novo deve ser ARQ2, e é constante.
Assinale a alternativa que apresenta a sintaxe correta para a função.
	
	
	
	
	
	rename("ARQ, ARQ2");
	
	 
	rename(ARQ2, ARQ);
	
	
	rename("ARQ2", "ARQ");
	
	 
	rename("ARQ", "ARQ2");
	
	
	rename("ARQ", ARQ2);
	
	
	
		3.
		A função _________ funciona como a função scanf(), porém, ao invés de ler os dados de teclado, estes dados são lidos de um arquivo.
	
	
	
	
	
	fgets()
	
	 
	fscanf()
	
	
	fgetc()
	
	
	fprint()
	
	 
	sscanf()
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		4.
		A função rewind() de protótipo
void rewind (FILE *fp);
tem como comportamento:
	
	
	
	
	
	Adiantar a posição corrente do arquivo para o início.
	
	 
	Retornar a posição corrente do arquivo para o início.
	
	
	Adiantar para a próxima posição corrente do arquivo.
	
	
	Retornar a posição corrente do arquivo para o fim.
	
	
	Adiantar a posição corrente do arquivo para o fim.
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		5.
		Nas aulas aprendemos sobre as funções de leitura e gravação.
A respeito da função fwrite assinale a alternativa correta.
	
	
	
	
	
	fwrite(endreçoElemento, tamanho, quantidade);
	
	
	fwrite(endreçoElemento, ptrArq, quantidade);
	
	 
	fwrite(endreçoElemento, tamanho, quantidade, ptrArq);
	
	
	fwrite(quantidade, ptrArq, endreçoElemento,tamanho);
	
	
	fwrite( tamanho, endreçoElemento, ptrArq);
	 Gabarito Comentado
	 Gabarito Comentado
	
	
		6.Na criação de uma rotina de manipulação de equipamentos para perfuração de poços, o programador precisava apenas pegar alguns dados existentes em um arquivo do equipamento para efeitos de cálculos e fechá-lo.
Das opções abaixo marque a que descreve a forma mais adequada, com a qual o programador deveria acessar o arquivo, segundo sua necessidade.
 
	
	
	
	
	 
	Para leitura e edição
	
	
	Para leitura e gravação
	
	
	Somente para gravação
	
	
	Não precisa abrir o arquivo
	
	 
	Somente para leitura

Outros materiais