Logo Passei Direto
Buscar

LINGUAGEM DE PROGRAMAÇÃO I exercircui

Conjunto de questões de Linguagem de Programação I com perguntas e explicações sobre fundamentos da linguagem C: portabilidade, regras de nomenclatura (ex.: media_nota2), menor programa compilável (main(){}), fluxo arquivo .c → compilação → linkedição → executável e diretiva include.

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Prévia do material em texto

LINGUAGEM DE PROGRAMAÇÃO I
1a aula
	1a Questão
	
	
	
	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.
		
	
	Reuso
	 
	Modularidade
	
	Flexibilidade
	 
	Portabilidade
	
	Polimorfismo
	
Explicação:
A Portabilidade é uma das grandes vantagens da linguagem C porque com poucas modificações( às vezes, nenhuma) podemos compilar em qualquer arquitetura.
	
	 
	
		
	
	 2a Questão
	
	
	
	
	É um nome de variável válido:
		
	
	maça
	
	1X
	 
	media_nota2
	
	número
	
	meu 2Cel
	
Explicação:
As regras para se nomear uma variável na linguagem C são:
Somente letras sem acentuação e nem cedilha, maiúsculas e minúsculas.
Algarismos
O caractere underline ( _ )
Não pode começar com algarismo
A única que atende às exigências é: media_nota2
	
	 
	
		
	
	 3a Questão
	
	
	
	
	Qual seria o menor programa compilável da Linguagem C?
		
	
	main{}()
	
	main()[]
	 
	main{}
	
	main[]{}
	 
	main(){}
	
Explicação:
O menor programa compilável é o main(){}, pois a única obrigação é o main() que é a função principal e o {} (abre e fecha chaves) que é do início e fim da função.
	
	
	 4a Questão
	
	
	
	
	Para que possamos criar nossos programas na linguagem C, iniciamos por criar o ______________, o qual pode ser feito através de um editor de texto não formatado e salvo com a ______________ ou mesmo utilizar um editor da linguagem, como o DEV C++. De acordo com o sistema operacional isto pode ser um pouco diferente. Após esta etapa, devemos ___________ e linkeditar o programa gerando o arquivo _____________, o qual após ser executado apresenta o resultado de nosso programa.
Das opções apresentadas, marque aquela que completa respectivamente e corretamente os espaços em branco destacados do texto, segundo os conceitos da linguagem C apresentados no material didático da disciplina.
		
	
	Executável - extensão .c - compilar - fonte
	
	Código base - extensão .c - compilar - fonte
	 
	Código fonte - extensão .c - compilar - executável
	
	Fonte - extensão .txt - editar - executável
	
	Código de texto - extensão .txt - editar - fonte
	
Explicação:
Não importa se usamos uma IDE ou vários programas, mas tudo começa assim:
Digitamos nosso código fonte em um editor como se fosse um texto.
Salvamos com a extensão  .c .
Em seguido, o compilador é chamado para que tente converter em uma linguagem objeto.
Por fim, um linkeditor para unir os objetos(as bibliotecas também) e gerar um executável.
	
	 
	
		
	
	 5a Questão
	
	
	
	
	Qual o nome da diretiva que é usada para incluir arquivos dentro do programa fonte que estivermos construindo?
		
	
	define
	 
	include
	
	const
	
	struct
	
	typedef
	
Explicação:
Estudamos que precisaremos incluir bibliotecas em nossos programas e, para que isso seja possível, a diretiva include deverá ser usada para cada inclusão.
	
	 
	Ref.: 201703837658
		
	
	 6a Questão
	
	
	
	
	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
	
	Rapidez e Portabilidade
	
	Complexidade e Estruturada
	 
	Portabilidade e Estruturada
	
	Portabilidade e Modularidade
	
Explicação:
Estudamos várias vantagens da Linguagem C.
Portabilidade significa que, com pequenas modificações, migramos para outros SO.
Sabemos que ela tem um conjunto pequeno de palavras reservadas logo, não é complexa.
Por ter três procedimentos básicos, ela é estruturada.
Por fim, ela gera um executável rápido
	
	 
	
		
	
	 7a Questão
	
	
	
	
	Estudamos que a linguagem C apresenta várias características. Analise as afirmativas abaixo e assinale a opção correta.
I Com pequenas modificações, um código poderá ser compilado em várias plataformas.
II Não pode ser modularizada
III Possui um propósito específico
IV Considerada de nível intermediário
		
	
	Todas estão corretas
	 
	I e IV estão corretas
	
	II, III e IV
	
	Todas estão erradas
	 
	I, III e IV estão corretas
	
Explicação:
I Com pequenas modificações, um código poderá ser compilado em várias plataformas VERDADE (Portabilidade)
II Não pode ser modularizada FALSO. Porque possibilita que o desenvolvedor defina funções (Modularizando).
III Possui um propósito específico FALSO. Não tem nenhum propósito específico. 
IV Considerada de nível intermediário VERDADE. Porque o conceito de Ponteiro possibilita um acesso direto à MP.
	
	 
	Ref.: 201703837617
		
	
	 8a Questão
	
	
	
	
	A Linguagem C tem algumas características importantes e uma delas é a Portabilidade, Isso significa dizer que:
		
	
	Podemos dividir o programa em parte menores.
	
	Por ser considerada uma linguagem de baixo nível é mais simples migrar para outra plataforma.
	 
	Com pequenas alterações, o programa poderá ser compilado em várias plataformas.
	
	A linguagem possui um propósito específico.
	
	Um programa executável gerado na plataforma Windows é executado na Plataforma Linux.
	
Explicação:
A Portabilidade é uma das grandes vantagens da linguagem C porque com poucas modificações( às vezes, nenhuma) podemos compilar em qualquer arquitetura.
	1a Questão
	
	
	
	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:
		
	
	Possibilita o desenvolvimento de funções próprias
	 
	Possui características de Linguagem de baixo nível.
	
	Possui características de Linguagem de alto nível.
	
	Permite a compilação de softwares para plataforma Windows, Linux e Unix.
	 
	Possui com conjunto muito grande palavras reservadas o que torna o aprendizado complexo
	
Explicação:
Estudamos várias vantagens da Linguagem C e uma delas, apesar da importância dela na história da programação inclusive manipulando a MP com o conceito de Ponteiro foi o número pequeno de palavras reservadas.
Por essa razão, a resposta incorreta é: Possui com conjunto muito grande palavras reservadas o que torna o aprendizado complexo
	
	 
	
		
	
	 2a Questão
	
	
	
	
	Uma das características mais marcantes da linguagem C é a sua portabilidade. Os códigos escrito em C são portáveis, o que significa que é possível executa-los nos mais diferentes tipos de arquiteturas. Tendo um programa C compilado para Windows, para executa-lo em Linux, identifique a opção CORRETA:
		
	
	Ocorrerá erro, pois os programas C não rodam em Linux.
	
	Basta apenas copiar o código executável para o Linux e executa-lo.
	
	Só é possível copiar o código executável do Linux para o Windows e executa-lo.
	 
	Precisamos recompilar o código fonte para o Linux.
	
	Ocorrerá erro, pois todas as instruções da linguagem C são incompatíveis com o Linux.
	
Explicação:
A Portabilidade é uma das grandes vantagens da linguagem C, mas isso Não diz respeito ao executável porque, ao mudarmos de SO, se faz necessário gerar compilar e linkeditar para gerar o Executável que esteja de acordo com o SO em questão.3a Questão
	
	
	
	
	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 III possibilita isso
	
	Só a I possibilita isso
	 
	Tanto a I quanto a IV possibilitam isso
	 
	Só a IV possibilita isso
	
	Só a II possibilita isso
	
Explicação:
Podemos clicar em compilar e depois clicar em executar ou então fazer isso de uma só vez: pressionando a tecla F9(ou F11) ou clicando no ícone Compilar/Executar (quatro quadrados coloridos juntos)
Repostas corretas I e IV.
	
	 
	
		
	
	 4a Questão
	
	
	
	
	Em relação à variável global, podemos afirmar:
I Somente a função principal pode alterar o valor armazenado
II Todas as funções podem alterar o valor armazenado
III É declarada dentro da função principal
IV É declarada fora de todas as funções
V Pode ser declarada em qualquer posição
		
	
	II e III
	
	II, IV e V
	 
	I, III e V
	
	I e III
	 
	II e IV
	
	 
	
		
	
	 5a Questão
	
	
	
	
	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:
		
	
	Complexidade e Estruturada
	
	Rapidez e Portabilidade
	
	Portabilidade e Estruturada
	 
	Portabilidade e Modularidade
	 
	Estruturada e Rapidez
	
Explicação:
Estudamos várias vantagens da Linguagem C.
Portabilidade significa que, com pequenas modificações, migramos para outros SO.
Sabemos que ela tem um conjunto pequeno de palavras reservadas logo, não é complexa.
Por ter três procedimentos básicos, ela é estruturada.
Por fim, ela gera um executável rápido
	
	 
	
		
	
	 6a Questão
	
	
	
	
	Na história da linguagem C, alguns momentos foram marcantes devido a acréscimos e/ou modificações significativas embora nem todos os compiladores tenham aderido. Abaixo estão relacionadas alguns deles:
- Surge o tipo long long para inteiros;
- As funções matemáticas passam a aceitar todos os tipos numéricos;
- O caracter // para comentário de uma linha, pode ser usado também;
Assinale a opção que contem o nome do documento onde apareceram, pela primeira vez, as modificações acima.
		
	
	Padrão C89
	 
	Padrão C99
	
	ISO/IEC 9899:1990
	
	C tradicional
	
	Padrão C95
	
Explicação:
Em 1999, alguns ajustes forma feitos e surgiu o padrão C99 que incluiu os itens abaixo.
	
	 
	
		
	
	 7a Questão
	
	
	
	
	É um nome de variável válido:
		
	
	meu 2Cel
	
	1X
	 
	media_nota2
	
	maça
	
	número
	
Explicação:
As regras para se nomear uma variável na linguagem C são:
Somente letras sem acentuação e nem cedilha, maiúsculas e minúsculas.
Algarismos
O caractere underline ( _ )
Não pode começar com algarismo
A única que atende às exigências é: media_nota2
	
	 
	
		
	
	 8a Questão
	
	
	
	
	Qual seria o menor programa compilável da Linguagem C?
		
	
	main()[]
	
	main{}
	 
	main(){}
	
	main{}()
	
	main[]{}
	
Explicação:
O menor programa compilável é o main(){}, pois a única obrigação é o main() que é a função principal e o {} (abre e fecha chaves) que é do início e fim da função.
	
	1a Questão
	
	
	
	Um Engenheiro Mecânico tinha um arquivo onde ele gostaria que os nomes dos materiais fossem todos convertidos para letras minúsculas.
Observe as linhas abaixo e assinale a opção que contem a função que realiza essa conversão e a biblioteca a qual pertence.
		
	
	atof() e stdlib.h
	
	toupper() e stdlib.h
	 
	tolower() e ctype.h
	
	isalpha() e stdlib.h
	
	atoi() e math.h
	
	 
	Ref.: 201703837944
		
	
	 2a Questão
	
	
	
	
	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?
		
	
	isspace()
	 
	isalnum()
	
	isalpha()
	
	isnotalphadigit()
	
	isdigit()
	
	 
	Ref.: 201703795320
		
	
	 3a Questão
	
	
	
	
	As bibliotecas da linguagem C guardam funções predefinidas da linguagem. Veja o código a seguir e marque a alternativa que contém as bibliotecas necessárias para que este código funcione.
#include________
#include________
int main()
{
int a=2, b=2, c=8, delt;
delt=(pow(b, 2)-(4*a*c));
system("pause");
return (0);
}
Não leve em consideração os sinais de maior e menor que envolvem o nome das bibliotecas.
		
	
	stdio.h - ctype.h
	 
	math.h - stdlib.h
	
	stdio.h - stdlib.h
	
	cmat.h - ctype.h
	
	stdlib.h - ctype.h
	
Explicação:
Como não faz uso de nenhuma função de entrada e saída, a biblioteca stdio.h é dispensável;
Como a função pow() está presente, a biblioteca math.h precisa ser incluída.
Usar a função system() se faz necessário usar a biblioteca stdlib.h(algumas vezes, a IDE carrega sem a biblioteca).
	
	 
	Ref.: 201703837766
		
	
	 4a Questão
	
	
	
	
	Observe o programa abaixo e selecione a resposta que mostra e/ou explica o que será exibido no display.
#include 
int main() 
{ 
printf ("%s%d%%","Juros de ",10);
}
		
	
	% Juros de 10
	
	%s%d%% Juros de 10
	
	10 Juros de
	
	Nada porque tem muitos %
	 
	Juros de 10%
	
	 
	Ref.: 201703837628
		
	
	 5a Questão
	
	
	
	
	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 "c:\ minhasFuncoes.h\funcoes"
	
	#include minhasFuncoes.h
	 
	#include "c:\funcoes\ minhasFuncoes.h"
	
	#include
	
	#include "minhasFuncoes.h"
	
	 
	Ref.: 201703837666
		
	
	 6a Questão
	
	
	
	
	Assinale a função que não é disponível na plataforma Linux.
		
	
	return
	 
	system()
	
	main()
	 
	printf()
	
	scanf()
	
	 
	Ref.: 201703837637
		
	
	 7a Questão
	
	
	
	
	Em um programa, precisávamos usar as bibliotecas: math.h, stdio.h e stdlib.h.
Assinale o trecho correto que possibilita incluí-las.
		
	 
	#include stdio.h
#include stdlib.h
#include math.h
	 
	#include 
#include 
#include 
	
	#include
	
	#define 
#define 
#define 
	
	#include
	
	 
	Ref.: 201703356490
		
	
	 8a Questão
	
	
	
	
	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?
		
	
	strlen( ).
	 
	atoi( ).
	 
	strcont( ).
	
	strcat( ).
	
	strlength( ).
	
Explicação:
A opção correta é atoi()  que é uma função da biblioteca stdlib.h que converte uma stringem número inteiro ou 0 caso não contenha algarismos.
strlength( ) e strcont() Não são definidas na linguagem C.
strlen é uma função que retorna o comprimento da string entre parênteses, isto é, o número de caracteres sem contar com o caractere delimitador \0( caractere Nulo).
A função strcat () na linguagem C concatena duas strings dadas. Ele concatena a string de origem no final da string de destino.
	
	1a Questão
	
	
	
	São todos operadores aritméticos da Linguagem C:
		
	
	%, ||, &&, ==
	 
	+, -, *, /
	
	>, >=, <, <=, ==
	
	MOD, DIV, %, &&
	
	&&, ||, !
	
Explicação: Os operadores aritméticos são: + (soma), - (subtração), * (multiplicação) e / (divisão).
	
	 
	Ref.: 201703841281
		
	
	 2a Questão
	
	
	
	
	Na linguagem de programação C, como em outras, na criação de programas, devemos definir os tipos de dados para nossas variáveis de acordo com o problema em questão.
Das opções apresentadas qual possui apenas tipos da linguagem C, conforme o material apresentado nas aulas.
		
	
	char, int, float, double, boolean
	 
	char, integer, float, real, boolean
	
	char, int, real, double, boolean
	
	char, int, real, double, void
	 
	char, int, float, double, void
	
	 
	Ref.: 201703958685
		
	
	 3a Questão
	
	
	
	
	Observe o trecho de código em Linguagem C #include main () { char Ch; scanf("%c", Ch); printf ("Você pressionou a tecla %c",Ch); } Na execução do código acima, ao pressionar qualquer tecla, o resultado sera
		
	 
	Ocorre um erro na alocação do valor digitado para variável na memória.
	 
	Não retorna nenhum valor.
	
	O programa não é executado.
	
	Imprime a tecla pressionada.
	
	Imprime o texto Você pressionou a tecla Ch.
	
	 
	Ref.: 201703841334
		
	
	 4a Questão
	
	
	
	
	Na linguagem de programação C, como em outras, na criação de programas, precisamos fazer a entrada e saída de dados no sistema e para tal temos algumas opções.
Das opções apresentadas, qual não é parte linguagem C, conforme o material apresentado nas aulas.
		
	
	scanf ( )
	 
	getchar ( )
	 
	cin ( )
	
	printf ( )
	
	fgetc(stdin)
	
	 
	Ref.: 201703837742
		
	
	 5a Questão
	
	
	
	
	Escolha a opção que inclui somente nomes válidos para variáveis na linguagem C.
		
	
	i, j, int, obs
	 
	2_ou_1, fim, *h, j
	
	nota-2 , a36, x_y
	
	2nota, a36, x#y, --j
	 
	If, nota_do_aluno_2, HOJE, _yes
	
	 
	Ref.: 201703815920
		
	
	 6a Questão
	
	
	
	
	Considerar o trecho do programa abaixo:
int x, y, z;
x =10;
z = 3;
z = (++x) * (y--);
printf("x = %d\t y=%d\t z=%d",x,y,z);
O que irá aparecer na tela?
		
	 
	x = 11 y = 2 z = 33
	
	x = 11 y = 2 z = 22
	
	x = 10 y = 2 z = 20
	 
	x = 10 y = 3 z = 30
	
	x = 11 y = 3 z = 33
	
Explicação:
A linha z = 3; está errada porque deveria ser y=3; 
	
	 
	Ref.: 201706041678
		
	
	 7a Questão
	
	
	
	
	A declaração de uma variável na linguagem C é realizada com a informação do tipo de dado que a variável irá armazenar em seguida o nome da variável.
Que tipo de informação é passada para o sistema operacional quando na declaração de uma variável informamos o tipo de dado que esta irá armazenar.
		
	
	endereço de memória alocada
	 
	quantidade de memória alocada
	 
	tipo de memória alocada
	
	nenhuma informação pra o sistema operacional
	
	qualidade da memória alocada
	
Explicação:
Na declaração de uma variável, o tipo de dado que a variável irá armazenar serve para que o sistema operacional saiba a quantidade de memória necessaria para armazenamento do dado, enquanto que o nome da variável é associado pelo sistema operacional ao endereço da memória onde a variável é alocada.
	
	 
	Ref.: 201703314709
		
	
	 8a Questão
	
	
	
	
	Dado o trecho de lógica utilizando o conceito da linguagem de programação C. Diga o resultado das variáveis x, y e z depois da seguinte sequência de operações:
int x,y,z; 
x=y=10; 
z=++x; 
x=-x; 
y++;
x=x+y-(z--); 
		
	 
	x = -11 
y = 11 
z = 10
	
	x = -13 
y = 11 
z = 13
	 
	x = -20
y = 20 
z = 10
	
	x = 11 
y = 11 
z = 15
	
	x = -01
y = 01 
z = 10
	
Explicação:
int x,y,z; 
x=y=10; 
z=++x; 
x=-x; 
y++;
x=x+y-(z--); 
Nesta questão são declaradas 3 variáveis do tipo inteiro (x,y e z). 
Atribui-se o valor 10 para as variáveis x e y.
Em seguida incrementa-se o valor de x, passando este a valer 11 e atribui-se este valor a variável z.
 O comando seguinte é x=-x, atribui-se a variável x o seu valor negativo, isto é -11. 
Em seguida incrementa-se o valor em y que passa a valer 11.
Então é realizada a expressão : x=x+y-(z--), Assim x= -11+11-11, ou seja x recebe -11.
E por fim decrementa-se o valor de z, que passa valer 10.
Pois embora a variável esteja entre parênteses usa-se o valor dela e só depois o decremento é realizado, pois o operador de decremento está pós-fixado.
Logo os valores finais das variáveis são:
x=-11, y=11 e z=10
	 1a Questão
	
	
	
	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
	
	15 ; 0 ; -6 ; 35 ; 26
	
	16 ; 0 ; -6 ; 40 ; 26
	
	16 ; - 16 ; -6 ; 40 ; -26
	
	 
	Ref.: 201704083116
		
	
	 2a Questão
	
	
	
	
	 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);
}
		
	
	4
	 
	8
	 
	12
	
	\n8
	
	9
	
	
	 3a Questão
	
	
	
	
	Seja o código a seguir, caso o usuário insira o valor 3 na variável num, qual a mensagem aparecerá na tela?
#include 
#include
int main ()
{
    int num;
    printf ("Digite um numero: ");
    scanf ("%d",&num);
    if(num = 2)
       printf("O numero eh 2");
    else  printf("O numero eh diferente de 2");
    return(0);
}
		
	 
	O numero eh 2
	 
	Nenhuma mensagem é exibida, pois há um erro no código.
	
	O numero eh diferente de 3
	
	O numero eh diferente de 2
	
	O numero eh 3
	
Explicação:
Há um erro lógico neste código, pois a condição avaliada deveria ser num == 2, entretanto quando escrevemos num =2, é realizada uma atribuição do valor 2 na variável num, assim quando esta é avaliada como condição, será considerada sempre verdadeira, portanto para qualquer que seja o número digitado este código sempre executrá a linha de comando  printf("O numero eh 2");
	
	
	
 4a Questão
	
	
	
	
	Existe sempre uma dúvida por parte do desenvolvedor se escolhe switch() ou if quando está usando a Linguagem C.
Sabemos que existem algumas exigências para se usar o switch().
Analise as opções abaixo e assinale a opção correta.
I Qualquer tipo pode ser usado. 
II Somente o tipo vetor de char que Não pode ser usado. 
III Não pode ser usado intervalo tipo: 1..3 em um case. 
IV Sempre será obrigatório usar o comando break; ao final de um case. 
V Quando o valor digitado não estiver presente em nenhum dos cases, irá para a opção default, caso exista.
		
	 
	III e V são verdadeiras
	 
	I, III e IV são verdadeiras
	
	I, III, IV e V são verdadeiras
	
	II, IV e V são verdadeiras
	
	II, IIIe IV são verdadeiras
	
	 
	
		
	
	 5a Questão
	
	
	
	
	Marque abaixo a instrução que permite parar uma execução dentro de um switch.
		
	
	case
	 
	stop
	
	open
	
	close
	 
	break
	
	
	 6a Questão
	
	
	
	
	O desenvolvimento de um programa precisa atender as necessidades do usuário final, para isto o desenvolvedor conta com algumas estruturas que facilitam a construção de seu código fonte. Uma delas é a estrutura condicional if.
Das opções apresentadas marque a qual melhor define esta estrutura.
		
	
	Testa uma condição e dependendo do resultado permite que o programa siga por caminhos diferentes repetidamente.
	 
	Testa uma expressão e dependendo do resultado permite que o programa siga por caminhos diferentes.
	 
	Compara os valores de algumas variáveis dependendo do resultado permite que o programa possa fazer um caminho diferente repetidamente.
	
	Compara os valores possíveis para uma variável e dependendo do resultado permite que o programa siga por caminhos diferentes.
	
	Compara os valores de algumas variáveis e dependendo do resultado permite que o programa siga por caminhos diferentes.
	
	
	 7a Questão
	
	
	
	
	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))
	
Explicação:
((pontos>=10) ! (pontos <=20))  Errada, pois ! é um operador Unário logo, não une expressões relacionais.
((pontos>=10) && (pontos <=20)) CERTA, pois está definindo um intervalo fechado: números maiores ou iguais a 10 e menores ou iguais a 20.
 
((pontos>=10) || (pontos <=20)) Errada, pois pontos>=10 abrange Todos os pontos maiores ou iguais a 10 e pontos <=20 abrange todos os pontos menores ou iguais a 20. Conclusão, qualquer número
((pontos>=10) # (pontos <=20))  Errada, pois # Não é operador lógico.
((pontos>=10) % (pontos <=20))  Errada, pois % Não é operador lógico.
	
	
	 8a Questão
	
	
	
	
	Um desenvolvedor estava construindo um código que tinha quatro possibilidades de resposta válidas além de uma mensagem de erro.
O dado testado era do tipo inteiro.
Assinale a opção que ele escolheu.
		
	 
	quatro ifs simples
	
	quatro ifs simples e um composto
	
	switch() com cinco cases
	
	três ifs simples e um composto
	 
	switch() com quatro cases e um default
	 1a Questão
	
	
	
	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
	
	15 ; 0 ; -6 ; 35 ; 26
	
	16 ; 0 ; -6 ; 40 ; 26
	
	16 ; - 16 ; -6 ; 40 ; -26
	
	 
	
		
	
	 2a Questão
	
	
	
	
	 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);
}
		
	
	4
	 
	8
	 
	12
	
	\n8
	
	9
	
	 
	Ref.: 201706041686
		
	
	 3a Questão
	
	
	
	
	Seja o código a seguir, caso o usuário insira o valor 3 na variável num, qual a mensagem aparecerá na tela?
#include 
#include
int main ()
{
    int num;
    printf ("Digite um numero: ");
    scanf ("%d",&num);
    if(num = 2)
       printf("O numero eh 2");
    else  printf("O numero eh diferente de 2");
    return(0);
}
		
	 
	O numero eh 2
	 
	Nenhuma mensagem é exibida, pois há um erro no código.
	
	O numero eh diferente de 3
	
	O numero eh diferente de 2
	
	O numero eh 3
	
Explicação:
Há um erro lógico neste código, pois a condição avaliada deveria ser num == 2, entretanto quando escrevemos num =2, é realizada uma atribuição do valor 2 na variável num, assim quando esta é avaliada como condição, será considerada sempre verdadeira, portanto para qualquer que seja o número digitado este código sempre executrá a linha de comando  printf("O numero eh 2");
	
	 
	Ref.: 201703838372
		
	
	 4a Questão
	
	
	
	
	Existe sempre uma dúvida por parte do desenvolvedor se escolhe switch() ou if quando está usando a Linguagem C.
Sabemos que existem algumas exigências para se usar o switch().
Analise as opções abaixo e assinale a opção correta.
I Qualquer tipo pode ser usado. 
II Somente o tipo vetor de char que Não pode ser usado. 
III Não pode ser usado intervalo tipo: 1..3 em um case. 
IV Sempre será obrigatório usar o comando break; ao final de um case. 
V Quando o valor digitado não estiver presente em nenhum dos cases, irá para a opção default, caso exista.
		
	 
	III e V são verdadeiras
	 
	I, III e IV são verdadeiras
	
	I, III, IV e V são verdadeiras
	
	II, IV e V são verdadeiras
	
	II, III e IV são verdadeiras
	
	 
	Ref.: 201703885036
		
	
	 5a Questão
	
	
	
	
	Marque abaixo a instrução que permite parar uma execução dentro de um switch.
		
	
	case
	 
	stop
	
	open
	
	close
	 
	break
	
	 
	Ref.: 201703454705
		
	
	 6a Questão
	
	
	
	
	O desenvolvimento de um programa precisa atender as necessidades do usuário final, para isto o desenvolvedor conta com algumas estruturas que facilitam a construção de seu código fonte. Uma delas é a estrutura condicional if.
Das opções apresentadas marque a qual melhor define esta estrutura.
		
	
	Testa uma condição e dependendo do resultado permite que o programa siga por caminhos diferentes repetidamente.
	 
	Testa uma expressão e dependendo do resultado permite que o programa siga por caminhos diferentes.
	 
	Compara os valores de algumas variáveis dependendo do resultado permite que o programa possa fazer um caminho diferente repetidamente.
	
	Compara os valores possíveis para uma variável e dependendo do resultado permite que o programa siga por caminhos diferentes.
	
	Compara os valores de algumas variáveis e dependendo do resultado permite que o programa siga por caminhos diferentes.
	
	 
	Ref.: 201703398413
		
	
	 7a Questão
	
	
	
	
	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))
	
Explicação:
((pontos>=10) ! (pontos <=20))  Errada, pois ! é um operador Unário logo, não une expressões relacionais.
((pontos>=10) && (pontos <=20)) CERTA, pois está definindo um intervalo fechado: números maiores ou iguais a 10 e menores ou iguais a 20.
 
((pontos>=10) || (pontos <=20)) Errada, pois pontos>=10 abrange Todos os pontos maiores ou iguais a 10 e pontos <=20 abrange todos os pontos menores ou iguais a 20. Conclusão, qualquer número
((pontos>=10) # (pontos<=20))  Errada, pois # Não é operador lógico.
((pontos>=10) % (pontos <=20))  Errada, pois % Não é operador lógico.
	
	
	 8a Questão
	
	
	
	
	Um desenvolvedor estava construindo um código que tinha quatro possibilidades de resposta válidas além de uma mensagem de erro.
O dado testado era do tipo inteiro.
Assinale a opção que ele escolheu.
		
	 
	quatro ifs simples
	
	quatro ifs simples e um composto
	
	switch() com cinco cases
	
	três ifs simples e um composto
	 
	switch() com quatro cases e um default
	1a Questão
	
	
	
	O que será impresso pelo trecho de código abaixo?
int vet[5]; 
int x, s = 0;
for (x = 0; x < 5; x++) {
    vet[x] = x * 2;
}
s = vet[2] + vet[4];
printf("%d", s);
		
	
	4
	 
	12
	
	10
	
	20
	
	8
	
	 
	Ref.: 201703452115
		
	
	 2a Questão
	
	
	
	
	Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima?
		
	 
	double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	double codigos[1000], qtdade[1000], valorC[1000], valorV[1000];
	
	int codigos[999], qtdade[999]; float valorC[999], valorV[999];
	 
	int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	double codigos[999], qtdade[999], valorC[999], valorV[999];
	
Explicação:
Quando declaramos uma Matriz, o que fica entre colchetes é o número total de elementos.
Como o enunciado deixa claro que códigos e a quantidades são valores inteiros e os valores de compra e venda sõa reais, a resposta correta é:
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
Obse: Não confunda com os números que ficarão entre [ ] s ( 0 até 999)
	
	 
	Ref.: 201703848976
		
	
	 3a Questão
	
	
	
	
	A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
		
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	char valores[] = {'A', 'B', 'C', 'D'};
	 
	char valores[5] = {'A', 'B', 'C', 'D'};
	 
	char valores = "ABCD";
	
	int valores[] = {10, 15, 20, 25, 30};
	
	 
	Ref.: 201704003003
		
	
	 4a Questão
	
	
	
	
	Observe o trecho abaixo e marque o valor que será mostrado pela variável c após a execução do programa.
		
	 
	22
	
	8
	 
	14
	
	20
	
	10
	
	 
	Ref.: 201703885054
		
	
	 5a Questão
	
	
	
	
	Qual das alternativas abaixo possui o comando que devolve o numero de caracteres em um uma string?
		
	
	strcap
	 
	strcamp
	
	strcout
	
	strcat
	 
	strlen
	
	 
	Ref.: 201703873462
		
	
	 6a Questão
	
	
	
	
	Em um programa o programador inseriu a seguinte linha de código: float notas [10]. Esta linha quer dizer:
		
	 
	notas é um vetor com 10 números reais.
	
	notas é uma função para somar 10 números.
	
	notas é uma variável de potência 10.
	 
	notas é uma string com 10 caracteres.
	
	notas é uma constante de valor 10.
	
	 
	Ref.: 201703885042
		
	
	 7a Questão
	
	
	
	
	Qual das instruções abaixo compara duas strings?
		
	
	strcompa
	 
	strcpy
	 
	strcmp
	
	strcamp
	
	strcat
	
	 
	Ref.: 201703483416
		
	
	 8a Questão
	
	
	
	
	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 III estão corretas
	
	Somente a sentença II está correta
	 
	Todas as sentenças estão corretas
	
	Somente as sentenças II e III estão corretas
	 
	Somente as sentenças I e II estão corretas
	1a Questão
	
	
	
	O que será impresso pelo trecho de código abaixo?
int vet[5]; 
int x, s = 0;
for (x = 0; x < 5; x++) {
    vet[x] = x * 2;
}
s = vet[2] + vet[4];
printf("%d", s);
		
	
	4
	 
	12
	
	10
	
	20
	
	8
	
	 
	Ref.: 201703452115
		
	
	 2a Questão
	
	
	
	
	Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima?
		
	 
	double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	double codigos[1000], qtdade[1000], valorC[1000], valorV[1000];
	
	int codigos[999], qtdade[999]; float valorC[999], valorV[999];
	 
	int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	double codigos[999], qtdade[999], valorC[999], valorV[999];
	
Explicação:
Quando declaramos uma Matriz, o que fica entre colchetes é o número total de elementos.
Como o enunciado deixa claro que códigos e a quantidades são valores inteiros e os valores de compra e venda sõa reais, a resposta correta é:
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
Obse: Não confunda com os números que ficarão entre [ ] s ( 0 até 999)
	
	 
	Ref.: 201703848976
		
	
	 3a Questão
	
	
	
	
	A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
		
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	char valores[] = {'A', 'B', 'C', 'D'};
	 
	char valores[5] = {'A', 'B', 'C', 'D'};
	 
	char valores = "ABCD";
	
	int valores[] = {10, 15, 20, 25, 30};
	
	 
	Ref.: 201704003003
		
	
	 4a Questão
	
	
	
	
	Observe o trecho abaixo e marque o valor que será mostrado pela variável c após a execução do programa.
		
	 
	22
	
	8
	 
	14
	
	20
	
	10
	
	 
	
		
	
	 5a Questão
	
	
	
	
	Qual das alternativas abaixo possui o comando que devolve o numero de caracteres em um uma string?
		
	
	strcap
	 
	strcamp
	
	strcout
	
	strcat
	 
	strlen
	
	
	
		
	
	 6a Questão
	
	
	
	
	Em um programa o programador inseriu a seguinte linha de código: float notas [10]. Esta linha quer dizer:
		
	 
	notas é um vetor com 10 números reais.
	
	notas é uma função para somar 10 números.
	
	notas é uma variável de potência 10.
	 
	notas é uma string com 10 caracteres.
	
	notas é uma constante de valor 10.
	
	 
	
		
	
	 7a Questão
	
	
	
	
	Qual das instruções abaixo compara duas strings?
		
	
	strcompa
	 
	strcpy
	 
	strcmp
	
	strcamp
	
	strcat
	
	 
	
		
	
	 8a QuestãoAnalise 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 III estão corretas
	
	Somente a sentença II está correta
	 
	Todas as sentenças estão corretas
	
	Somente as sentenças II e III estão corretas
	 
	Somente as sentenças I e II estão corretas
	1a Questão
	
	
	
	O que será impresso pelo trecho de código abaixo?
int vet[5]; 
int x, s = 0;
for (x = 0; x < 5; x++) {
    vet[x] = x * 2;
}
s = vet[2] + vet[4];
printf("%d", s);
		
	
	4
	 
	12
	
	10
	
	20
	
	8
	
	 
	Ref.: 201703452115
		
	
	 2a Questão
	
	
	
	
	Um lojista gostaria de desenvolver um programa que pudesse armazenar os códigos(valores inteiros), os valores de compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos.
Pensou em declarar algumas matrizes unidimensionais para tornar isso possível.
 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e seguindo, rigorosamente, as sugestões do texto acima?
		
	 
	double codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	double codigos[1000], qtdade[1000], valorC[1000], valorV[1000];
	
	int codigos[999], qtdade[999]; float valorC[999], valorV[999];
	 
	int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
	
	double codigos[999], qtdade[999], valorC[999], valorV[999];
	
Explicação:
Quando declaramos uma Matriz, o que fica entre colchetes é o número total de elementos.
Como o enunciado deixa claro que códigos e a quantidades são valores inteiros e os valores de compra e venda sõa reais, a resposta correta é:
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000];
Obse: Não confunda com os números que ficarão entre [ ] s ( 0 até 999)
	
	 
	Ref.: 201703848976
		
	
	 3a Questão
	
	
	
	
	A linguagem C permite a inicialização de vetores junto com sua declaração.
Dada as alternativas abaixo, selecione a que está incorreta:
		
	
	int valores[5] = {10, 15, 20, 25, 30};
	
	char valores[] = {'A', 'B', 'C', 'D'};
	 
	char valores[5] = {'A', 'B', 'C', 'D'};
	 
	char valores = "ABCD";
	
	int valores[] = {10, 15, 20, 25, 30};
	
	 
	Ref.: 201704003003
		
	
	 4a Questão
	
	
	
	
	Observe o trecho abaixo e marque o valor que será mostrado pela variável c após a execução do programa.
		
	 
	22
	
	8
	 
	14
	
	20
	
	10
	
	 
	Ref.: 201703885054
		
	
	 5a Questão
	
	
	
	
	Qual das alternativas abaixo possui o comando que devolve o numero de caracteres em um uma string?
		
	
	strcap
	 
	strcamp
	
	strcout
	
	strcat
	 
	strlen
	
	 
	Ref.: 201703873462
		
	
	 6a Questão
	
	
	
	
	Em um programa o programador inseriu a seguinte linha de código: float notas [10]. Esta linha quer dizer:
		
	 
	notas é um vetor com 10 números reais.
	
	notas é uma função para somar 10 números.
	
	notas é uma variável de potência 10.
	 
	notas é uma string com 10 caracteres.
	
	notas é uma constante de valor 10.
	
	 
	Ref.: 201703885042
		
	
	 7a Questão
	
	
	
	
	Qual das instruções abaixo compara duas strings?
		
	
	strcompa
	 
	strcpy
	 
	strcmp
	
	strcamp
	
	strcat
	
	 
	Ref.: 201703483416
		
	
	 8a Questão
	
	
	
	
	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 III estão corretas
	
	Somente a sentença II está correta
	 
	Todas as sentenças estão corretas
	
	Somente as sentenças II e III estão corretas
	 
	Somente as sentenças I e II estão corretas
	1a Questão
	
	
	
	A função fgets():
		
	
	imprime um caracter de cada vez.
	
	lê um arquivo inteiro de uma vez.
	
	lê um caracter de cada vez.
	
	imprime uma linha inteira de uma vez.
	 
	lê uma linha inteira de uma vez.
	
	 
	Ref.: 201703356479
		
	
	 2a Questão
	
	
	
	
	 Na definição de estruturas, funções, variáveis, etc. devemos seguir suas respectivas Sintaxes.
Das opções apresentas, qual é SINTAXE correta da definição de um vetor bidimensional.
		
	
	nome_matriz[numero_linhas][numero_colunas];
	
	tipo nome_matriz[][];
	
	tipo nome_vetor[numero_colunas][numero_linhas];
	 
	tipo nome_matriz[numero_linhas][numero_colunas];
	
	tipo nome_matriz[numero_colunas][numero_linhas];
	
	 
	Ref.: 201703795626
		
	
	 3a Questão
	
	
	
	
	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.
		
	
	float - fopen - fclose
	
	char - fopen - fechar
	
	int - open - close
	 
	int - abrir - fopen
	 
	char - fopen - fclose
	
	 
	Ref.: 201703841577
		
	
	 4a Questão
	
	
	
	
	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ções para gravar uma linha.
	
	Função que fecha um arquivo.
	
	Função que detecta o fim do arquivo.
	 
	Função para gravar um caractere.
	
	Funções para gravação formatadas.
	
	 
	Ref.: 201704099911
		
	
	 5a Questão
	
	
	
	
	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 e exibir na tela.
	
	Gravar no arquivo de texto apenas os valores impares do Vetor x.
	 
	Ler do arquivo texto o valor de X, exibir na tela e fechar o arquivo de texto.
	 
	Ler o valor de X via teclado, gravar no arquivo de texto o valor de X digitado pelo usuário e fechar o arquivo.
	
	 
	Ref.: 201703841552
		
	
	 6a Questão
	
	
	
	
	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 quefoi 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.
	
	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.
	
	Não é necessário tratar, pois não existindo o arquivo ele simplesmente cria um novo e nunca terá problema.
	
	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.
	
	 
	Ref.: 201703841531
		
	
	 7a Questão
	
	
	
	
	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+");
	 
	arq = fopen("texto.txt", "a+");
	
	arquivo = fopen("material.dat", "w+");
	 
	arq = fopen("texto.txt", "w");
	
	arquivo = fopen("material.dat", "r+");
	
	 
	Ref.: 201703841560
		
	
	 8a Questão
	
	
	
	
	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 gravar uma linha.
	
	Função que fecha um arquivo.
	 
	Função que detecta o fim do arquivo.
	
	Funções para leitura formatada.
	
	Funções para ler um caractere.
	1a Questão
	
	
	
	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;
}
		
	
	ABCDEF
	 
	ABCYDEF
	
	ABC
	
	ABCDEFY
	
	DEF
	
	 
	Ref.: 201703841736
		
	
	 2a Questão
	
	
	
	
	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("ARQ2", "ARQ");
	
	rename("ARQ", ARQ2);
	 
	rename("ARQ", "ARQ2");
	
	rename(ARQ2, ARQ);
	 
	rename("ARQ, ARQ2");
	
	 
	Ref.: 201703854708
		
	
	 3a Questão
	
	
	
	
	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.
		
	
	fprint()
	
	fgets()
	 
	sscanf()
	 
	fscanf()
	
	fgetc()
	
	 
	Ref.: 201703854742
		
	
	 4a Questão
	
	
	
	
	A função rewind() de protótipo
void rewind (FILE *fp);
tem como comportamento:
		
	 
	Retornar a posição corrente do arquivo para o início.
	
	Adiantar a posição corrente do arquivo para o fim.
	
	Retornar a posição corrente do arquivo para o fim.
	
	Adiantar a posição corrente do arquivo para o início.
	
	Adiantar para a próxima posição corrente do arquivo.
	
	 
	Ref.: 201703841619
		
	
	 5a Questão
	
	
	
	
	Nas aulas aprendemos sobre as funções de leitura e gravação.
A respeito da função fwrite assinale a alternativa correta.
		
	
	fwrite( tamanho, endreçoElemento, ptrArq);
	
	fwrite(endreçoElemento, tamanho, quantidade);
	
	fwrite(endreçoElemento, ptrArq, quantidade);
	
	fwrite(quantidade, ptrArq, endreçoElemento,tamanho);
	 
	fwrite(endreçoElemento, tamanho, quantidade, ptrArq);
	
	 
	Ref.: 201703356515
		
	
	 6a Questão
	
	
	
	
	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 gravação
	 
	Somente para leitura
	
	Somente para gravação
	
	Não precisa abrir o arquivo
	
	Para leitura e edição
	
Explicação:
No caso aqui descrito o arquivo deve ser aberto no modo somente leitura, pois a necessidade do programador é apenas de consulta.
Não sendo necessário abrir o arquivo no modo leitura e gravação, ou no modo somente gravação ou ainda no modo leitura e edição,
já que nenhuma alteração será realizada no arquivo em questão. A opção "Não precisa abrir o arquivo" também é incorreta, pois 
mesmo para realizar apenas uma leitura em um arquivo é necessário abrir este.

Mais conteúdos dessa disciplina