Baixe o app para aproveitar ainda mais
Prévia do material em texto
Teste de conhecimento Linguagem e programação 1- Após o surgimento de várias linguagens de Alto nível, surge a linguagem C . Qual a década em que foi desenvolvida? década de 80 década de 70 década de 60 2- Qual a vantagem da Linguagem C que está descrita no texto abaixo? 'Um programa que, com pouca ou nenhuma modificação, poderá ser compilado em várias plataformas.' Simplicidade Modularidade Portabilidade Rapidez Estruturada 3- Todo programa codificado na linguagem C pode incluir uma, ou várias bibliotecas, mas existe uma que tem que estar nessa lista, na maioria das vezes, devido a necessidade da interação com o usuário.. Assinale a alternativa que apresenta essa biblioteca. studio.h stdin.h iostream iostream.h stdio.h 4- A Linguagem C tem algumas características importantes e uma delas é a Portabilidade, Isso significa dizer que: Um programa executável gerado na plataforma Windows é executado na Plataforma Linux. Com pequenas alterações, o programa poderá ser compilado em várias plataformas. Podemos dividir o programa em parte menores. A linguagem possui um propósito específico. 5- Um programador precisa criar alguns nomes de variáveis para utilizar em seu programa desenvolvido em C++ e apresenta as seguintes opções: I) return II) Name III) 2Name Baseado nas regras de definição de nomes de variáveis da linguagem pode-se afirmar que está(ão) correto(s): Apenas a II II e III I e II 6- Qual das características abaixo NÃO pode ser atribuída á linguagem C? Estruturada Modularidade Complexidade porque tem muitas palavras reservadas 7- Qual o nome da diretiva que é usada para incluir arquivos dentro do programa fonte que estivermos construindo? struct const include 8- Na função main() da linguagem C, declarações, comandos, estruturas e tudo mais que pertence ao corpo da função estão envoltos por dois elementos. Assinale a opção que apresenta esses elementos. { e } ( e ) Teste II 1a Questão : Qual a funções da biblioteca stdio.h, da linguagem C usada exclusivamente para exibir apenas um caracter na tela? scanf('char') puts('char') printf('char') putchar('char') 2a 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 3a Questão : 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) 216 126 4a Questão : Um aluno precisava fazer uma citação e deveria colocar uma frase entre aspas. Escolha a opção que poderá resolver o problema dele. printf("\"LPI\"); printf(\"LPI\"); printf("\"LPI\""); 5a Questão : Assinale a função que não é disponível na plataforma Linux. scanf() system() 6a Questão : Na linguagem C, as strings "%d", "%f" e "%s" estão usualmente associadas ao uso da função: void getch feof printf 7a Questão printf("\t\tVOU\n\n\n\tGABARITAR\n"); 8a Questão : Saída formatada necessita de muita atenção. Se você precisasse exibir 12345 utilizando 8 casas e preenchendo com zero as que não fossem necessárias, qual das opções abaixo você escolheria? printf("%80d\n", 12345); printf("%08d\n", 12345); Teste de Conhecimento III 1a Questão Qual a funções da biblioteca stdio.h, da linguagem C usada exclusivamente para exibir apenas um caracter na tela? printf('char') putchar('char') 2a 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 3a Questão 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) 216 126 4a Questão Um aluno precisava fazer uma citação e deveria colocar uma frase entre aspas. Escolha a opção que poderá resolver o problema dele. printf("\"LPI\"); printf(\"LPI\"); printf("\"LPI\""); 5a Questão Assinale a função que não é disponível na plataforma Linux. return main() scanf() system() 6a Questão Na linguagem C, as strings "%d", "%f" e "%s" estão usualmente associadas ao uso da função: void getch feof printf 7a Questão Temos linhas e colunas na tela. A um conjunto de 8 colunas, chamamos de zona. Estudamos os caracteres \n e \t na Aula 2 Se você precisasse exibir VOU na terceira zona de uma linha estando o cursor na primeira coluna dessa linha e GABARITAR na segunda zona de uma linha que tem, antes dela,duas linhas em branco, qual das opções abaixo você escolheria? printf("\t\tVOU\n\n\n\tGABARITAR\n"); printf("\t\t\tVOU\n\tGABARITAR\n"); 8a Questão Saída formatada necessita de muita atenção. Se você precisasse exibir 12345 utilizando 8 casas e preenchendo com zero as que não fossem necessárias, qual das opções abaixo você escolheria? printf("%80d\n", 12345); printf("%08d\n", 12345); 1a 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? strcat( ). strcont( ). atoi( ). 2a Questão Sabemos que para a utilização de funções da linguagem C precisamos declarar suas respectivas bibliotecas. De acordo com a Linguagem C marque a opção em que o descritivo da biblioteca está correto. string.h - Funções para concatenação de strings com inteiros. stdio.h - Funções para gráficos. math.h - Funções matemáticas 3a Questão Qual o nome da função matemática que calcula a potenciação de um número? pow double 4a Questão Quais as funções da biblioteca stdio.h, da linguagem C usadas para exibir mensagens na tela? msg("string") e puts("string") printf("string") e puts("string") 5a 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. isalpha() e stdlib.h tolower() e ctype.h 6a Questão Estudamos alguns caracteres especiais que lhe ajudam a formatar a saída de seus programas. Eles também são conhecidos como caracteres de controle ou sequência de escape por serem sempre precedidos pela \ cujo nome em inglês é backslash e por aqui é conhecida como barra invertida ou contra-barra. Observe a linha abaixo e selecione a resposta que mostra e/ou explica o que será exibido no display. printf ("RESULTADO =\\%07d\\\n", 123); RESULTADO =\\0000123\\ RESULTADO =\\0000000123\\ RESULTADO =\0000123\ 7a 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? isalnum() isalpha() 8a Questão Qual a função da stdio.h que exibe formatado um, ou vários caracteres, constante numérica, conteúdo de variável, retorno de função? scanf("string") printf("string") 1a Questão Um aluno sabia que,no Código ASCII os algarismo de 0 a 9 têm códigos no intervalo fechado de 48 a 57. Ele viu várias linhas em um programa e gostaria de saber qual a linha que estava exibindo o algarismo de código 51. int num=51; printf("\nValor de num: %.f ",num); printf("\nValor de num: %c ",num); 2a Questão É um nome de variável válido: 1X maça 3a Questão São todos operadores aritméticos da Linguagem C: &&, ||, ! MOD, DIV, %, && +, -, *, / 4a 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, real, double, void char, int, float, double, boolean char, int, float, double, void 5a Questão Marque a opção que apresenta apenas dados primitivos da linguagem C char, boolean, int, double char, int, float, double 6a Questão Um aluno viu o trecho de programa abaixo e não sabe qual das linhas daria como resposta 4.50 int num1=3, num2=6, num3=4; Indique a linha. printf("\nResultado: %.2f ",(float)num1 + num2/num3); printf("\nResultado: %.2f ",(float)(num1 + num2/num3)); printf("\nResultado: %d ",num1 + num2/num3); printf("\nResultado: %.2f ",num1 + (float)num2/num3); 7a Questão Escolha a opção que inclui somente nomes válidos para variáveis na linguagem C. nota-2 , a36, x_y 2_ou_1, fim, *h, j If, nota_do_aluno_2, HOJE, _yes 8a Questão 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: b=b+1; a=b; a=b; b=b+1; Teste 4 1a 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); } 9 8 2a Questão Suponha que as notas digitadas pelo usuário sejam respectivamente (4.5; 8.5; 6.5). int main() { float n1, n2, n3, med; puts("Digites as notas"); scanf("%f", &n1); scanf("%f", &n2); scanf("%f", &n3); med= (n1+n2+n3)/3; if(med>=7) printf("Aluno aprovado com: %.1f\n", med); else printf("Aluno reprovado com: %.1f\n", med); system("pause"); return 0; } Desconsidere a necessidade da declaração das bibliotecas. Qual será a mensagem final exibida para o usuário? Aluno reprovado com: 6.50 Aluno aprovado com: 6.00 Aluno aprovado com: 6.5 Aluno reprovado com: 6.5 3a Questão Marque a opcão que apresenta apenas operadores lógicos: > < == || !+ !! && || ! 4a 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. Compara os valores de algumas variáveis dependendo do resultado permite que o programa possa fazer um caminho diferente repetidamente. Compara os valores de algumas variáveis e dependendo do resultado permite que o programa siga por caminhos diferentes. Compara os valores possíveis para uma variável e dependendo do resultado permite que o programa siga por caminhos diferentes. Testa uma expressão e dependendo do resultado permite que o programa siga por caminhos diferentes. 5a Questão Se precisarmos testar o conteúdo de uma variável e sabendo-se que só serão executados comandos se o teste retornar verdadeiro, qual estrutura você indicaria para esse caso? if printf() switch() if else if else if 6a 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 3 Nenhuma mensagem é exibida, pois há um erro no código. O numero eh 2 O numero eh diferente de 3 7a Questão Observe as expressões abaixo que podem fazer parte do comando de teste(if) na linguagem C. Essas expressões podem estar corretas ou apresentarem erros de sintaxe e/ou lógica. Assinale a opção CORRETA. I a > 18 (a é uma variável do tipo int) II n1 = n2 III resp == 'S' && resp== 's' (resp é uma variável do tipo char de um caracter) IV x % 2 == 0( x é um variável do tipo float) Só a afirmativa I não apresenta erros. As afirmativas I e III não apresentam erros. As afirmativas I, III e IV não apresentam erros. A afirmativa III apresenta erro. As afirmativas I e IV não apresentam erros. 8a Questão No contexto do comando switch e do uso do comando break emm seu interior, na linguagem de programação C é correto afirmar que: quando um comando break é executado, o comando switch é encerrado e o fluxo de controle passa para o próximo comando após o fim do comando switch a expressão usada numa cláusula case de um comando switch pode ser de qualquer tipo e deve conter pelo menos uma variável; não é possível executar comandos de uma das cláusulas case de um comando switch na mesma execução desse comando. toda cláusula case de um comando switch, incluindo a cláusula case default, deve conter um comando break; os comandos na cláusula case default de um comando switch são executados apenas se nenhuma das cláusulas case anteriores possuir um comando break; 1a Questão 1. 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 2a Questão Analise o código a seguir e marque a alternativa que exprime o que esse trecho de código executa, caso o usuário introduza um número positivo maior que zero: #include < stdio.h> //Retire o espaço depois de < quando for compilar int main() { int x, i=1; printf("Entre com numero: "); scanf("%d", &x); while(i<=x) { if(i%2==0) printf("%d\n", i); i++; } return 0; } O código mostra os números divisíveis por 3. O código mostra os todos os números ímpares menores ou igual a x. O código mostra os todos os divisores ímpares de um número. O código mostra os números divisíveis por 2. O código mostra os todos os números pares menores ou igual a x. 3a Questão Na maioria das linguagens de programação, as estruturas de controle de fluxo são fundamentais para a criação de programas elegantes e de fácil entendimento. Assinale a alternativa correta com relação aos comandos de controle de fluxo da linguagem C, sabendo que o comando for apresenta a seguinte forma geral: for (inicialização;condição;incremento) declaração; Pode-se omitir a declaração, e, mesmo assim, o comando for ainda será válido. Sem os comandos de controle de fluxo, só haveria uma maneira de o programa ser executado: de baixo para cima e comando por comando. O comando for garante que o laço seja executado pelo menos uma vez. O comando continue usado dentro de um laço executa a próxima linha de código independentemente do fato de ela estar dentro ou fora do laço. Não é permitido omitir a condição no comando for, pois não existiria maneira de parar o laço infinito. 4a Questão João foi realizar uma prova que tinha uma questão com o trecho abaixo. Assinale a opção que esclarece, ou não, o que será exibido int num,c, s = 0; puts("Numero: "); scanf("%d", &num); for(c=1; c < num; c++) if(num % c == 0) s+=c; printf("\nO que exibe? %d\n", s); Dá erro na compilação porque a estrutura do for e a estrutura do if estão sem as { } Exibe todos os divisores. Exibe A soma de todos os divisores exceto ele mesmo Exibe A soma de todos os divisores. Exibe 0 porque não está testando se tem divisor. 5a Questão Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num seja diferente de 0? for (i = num; i > 0; i++) enquanto (num > 0) for ( i = 0; i == num; i++) while (num == 0) while (num != 0) 6a Questão Muitas séries matemáticas podem ser geradas pela estrutura do for. Analise o código abaixo e escolha a opção que contém a série exibida pelo código. 1 1 2 3 5 8 13 21 0 1 1 2 3 5 8 13 21 0 1 1 3 2 4 5 7 0 1 1 2 3 4 5 6 1 3 4 7 9 11 13 7a Questão Assinale a alternativa correta em relação a quantidade de vezes que a palavra PROGRAMAÇÃO será impressa, após a execução do trecho de código abaixo. i = 1; while ( i < 20 ) { if ( i % 2 == 0 ) { cout << "\n PROGRAMAÇÃO"; } i++; } 10 vezes 9 vezes Nenhuma vez 19 vezes 20 vezes 8a Questão João foi realizar uma prova que tinha uma questão com o trecho abaixo e pedia para assinalar a opção que mostrava quantas vezes seria exibida a mensagem Tenho que estudar. Se fosse você, qual escolheria? int y; for(y=5; y>=25; y+=5); puts("\nTenho que estudar"); Nenhuma vez 6 vezes 5 vezes 19 vezes 1 vez 1a 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 II estão corretas Somente as sentenças II e III estão corretas Todas as sentenças estão corretas Somente as sentenças I e III estão corretas Somente a sentença II está correta 2a Questão Qual o elemento do vetor referenciado por vet[3]? 1 4 7 0 2 3a Questão Analise o código a seguir e marque a alternativa que se efetuada mostraria na tela apenas os números ímpares armazenados no vetor. #include < stdio.h> //Retire o espaço depois de < quando for compilar #define T 10 int main() { int x[T], i; for(i=0; i< T; i++)x[i]=i+1; for(i=1; i< T; i+=2) { printf("x[%d]: %d\n", i,x[i]); } return 0; } for(i=0; i< T; i+=1) for(i=0; i< T/2; i+=2) for(i=1; i< T; i+=1) for(i=0; i< T; i+=2) for(i=1; i< T/2; i+=2) 4a Questão Um programador precisa declarar vetores para armazenar códigos dos 101 usuários e respectivos valores a pagar. Lembrando que nenhum centavo será descartado, qual das opções abaixo, atenderia ao que ele precisa. int codigos[101]; float valores[101]; int codigos[100], valores[100]; char codigos[100]; float valores[100]; int codigos[101], valores[101]; int codigos[100]; float valores[100]; 5a Questão 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 notas[150]; int notas[150]; float %.1f notas[150]; real notas[150]; integer notas[150]; 6a Questão Na programação estruturada quando implementamos de modo sequencial ocorre um problema com relação ao armazenamento destas variáveis que é a perca de dados armazenados. Para solucionar este problema uma estrutura de dados adequada para isto é: Utilizar o comando enquanto Utilizar funções matemáticas Utilizar funções Utilizar estrutura de decisão Utilizar vetores 7a Questão Analise o código a seguir e marque a alternativa que melhor descreve o que está sendo executado. #include < stdio.h> //Retire o espaço depois de < quando for compilar #define T 10 int main() { int x[T], i; for(i=0; i< T; i++)x[i]=i+1; for(i=1; i< T; i+=2) { printf("x[%d]: %d\n", i,x[i]); } return 0; } É declarado um vetor de inteiros com 9 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições pares do vetor com seus respectivos conteúdos. É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos. É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições pares do vetor com seus respectivos conteúdos. É declarado um vetor de inteiros com 9 posições, e preenchido com os números de 1 a 10, a partir da primeira posição.E são exibidos apenas as posições ímpares do vetor com seus respectivos conteúdos. É declarado um vetor de inteiros com 10 posições, e preenchido com os números de 1 a 9, a partir da primeira posição.E são exibidos apenas as posições pares do vetor com seus respectivos conteúdos. 8a Questão Um programador declarou os vetores abaixo e gostaria de fazer o trecho de entrada para armazenar códigos dos 43 funcionários e respectivos salários. int x,codigos[43]; float salarios[43]; A dúvida dele está na linha do for. Você poderia indicar qual ele deveria escolher? for(x = 0; x < 43 ; x++ ) for(x = 0; x <= 43 ; x++ ) for(x = 0; x < 44 ; x++ ) for(x = 1; x < 43 ; x++ ) for(x = 1; x <= 43 ; x++ ) 1a Questão Um programador precisa armazenar em uma tabela a quantidade de alunos, por turma, que tiraram notas abaixo da méida, exatamente na média e acimma da média. Sabendo que a méida é 6.0 e que esta tabela, chamada de mapa, servirá para armazenar as notas das 30 turmas existentes, e que para o programa que está sendo desenvolvido o melhor será organizar as turmas por linhas na tabela. Marque a alternativa que melhor representa a declaração desta tabela. float mapa[30][30]; int turmas[30]; float turmas[30]notas[3]; int mapa[30][3]; int mapa[3][30]; 2a Questão Uma matriz é definida como float mat[5][10]; Quantos elementos esta matriz armazena? 10 elementos 36 elementos 50 elementos 45 elementos 5 elementos 3a Questão O departamento do pessoal de uma empresa precisa de um programa para armazenar nomes, cargos, número de dependentes e salários de 32 funcionários. Um desenvolvedor pensou em algumas linhas que precisariam ser incluídas no código para tornar possível a construção dos trechos de entrada, saída e outros necessários. Observe as declarações abaixo e escolha a que possibilita isso. float dadosN[32][2]; char dadosC[32][30]; float sal[32]; int dep[32]; char nomes[32][30], cargos[32][20]; float sal[31]; int dep[31]; char nomes[31][30], cargos[31][20]; float sal[32]; int dep[32]; char nomes[32], cargos[32]; float sal[32]; int dep[32]; char dados[32][20]; 4a Questão Supondo que está desenvolvendo um programa de cadastrode alunos, qual das opções declara corretamente uma matriz caracter que suporte 30 nomes de até 20 caracteres? char nomes [30][20]; char nomes [30]; char nomes [20][30]; char nomes (20,30); char nomes (30); 5a Questão Analisando o códio a seguir, pode-se afirmar que: #include #define T 5 int main() { int x[T][T], i,j; for(i=0; i< T; i++) for(j=0; j< T; j++) x[i][j]=j+1; for(i=0; i< T; i++) for(j=0; j< T; j++) printf("x[%d][%d]: %d\t",i, j,x[i][j]); return 0; } Os valores armazenados nos elementos de uma mesma coluna na matriz são iguais. Os valores armazenados nos elementos de uma mesma coluna na matriz são zerados. Os valores armazenados nos elementos de uma mesma linha na matriz são iguais. O programa não executa pois há falta de chaves. Os valores armazenados nos elementos de uma mesma linha na matriz são zerados. 6a Questão Um lojista gostaria de desenvolver um programa para armazenar os códigos(inteiros), valores de compra e venda (reais) e a quantidade (inteiros) de todos os mil produtos. Pensou em declarar algumas matrizes bidimensionais. 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 CodQtde[1000][2]; int valores[1000][2]; double CodQtdeVal[999][4]; double CodQtdeVAL[1000][4]; int CodQtde[999][2]; float valorer[999][2]; int CodQtde[1000][2]; float valores[1000][2]; 7a Questão 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-if-else-while do-while-for-for do-for-for-while while-for-do-for do-if-for-while 8a Questão Observe o trecho de programa abaixo e selecione a resposta correta. char nome[5][30]; puts("\nNome e ultimo sobrenome: "); scanf( "%s", nome[0]); ... Armazena só o primeiro nome Ignora a linha do scanf, mas não tem nenhuma mensagem. Dá mensagem de erro porque falta & antes de nome Dá mensagem de erro porque scanf não pode ser usado com vetor de char. Armazena nome e sobrenome. 1a Questão Ao definirmos uma função, podemos afirmar que: I Toda função tem parâmetros II Quando nada retorna, o tipo é void III Quando todos os parâmetros são do mesmo tipo, é suficiente usar o tipo uma vez e separar os nomes dos parâmetros por vírgulas IV Na passagem por valor, o endereço da variável da função chamadora é passado para a função chamada Após uma análise das afirmativas acima, escolha a opção correta. As afirmativas II, III e IV estão corretas As afirmativas I e II estão corretas As afirmativas II e III estão corretas Somente a afirmativa II está correta As afirmativas II e IV estão corretas 2a Questão 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;} 30 170 215 230 130 3a Questão Suponha uma Universidade cujo critério para aprovação seja o seguinte: a soma das duas provas PR1 e PR2 tem que ser maior, ou superior a 14. Caso o aluno não consiga fazer esse total, deverá ir fazer a PR3, cuja nota, acrescida à soma da PR1 com PR2, precisará ser, no mínimo, o que falta para completar 21 pontos. Assinale a opção CORRETA da definição de uma função que receba como parâmetros as notas da PR1 e da PR2, retornando a nota mínima que o aluno precisará tirar na terceira prova para que seja aprovado. float aprovacaoFinal( float pr1, pr2) { return 21 - ( pr1 + pr2); } float aprovacaoFinal(float pr1, float pr2) { pr3 = (21-pr1-pr2); } float aprovacaoFinal(float pr1, float pr2) { return 21-(pr1 + pr2); } void aprovacaoFinal (float pr1, float pr2) { return (21 - pr1 -pr2); } float aprovacaoFinal(float pr1,float pr2) { pr3=(pr1 + pr2); } 4a Questão 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). Tipo, Nome e Parâmetros. Tipo , Nome, e Corpo da função. Nome, Parâmetro e Corpo da função. Tipo, Parâmetro e corpo da função. Tipo, Nome, Parâmetros e Corpo da Função. 5a Questão Um desenvolvedor, ao construir um programa, precisou de uma função que calculasse o produto entre dois números inteiros. Ele construiu uma função, tendo considerado a propriedade de fechamento, isto é, o produto de dois inteiros, inteiro será e colocou a linha abaixo no programa. cout << " Produto = " << multiplicar(a,b); Observe as opções abaixo e escolha aquela onde o protótipo da função está presente. float multiplicar(int a, int b) void multiplicar(int a, int b) int multiplicar(int a, b); int multiplicar(int a, int b) ; void multiplicar(int a, int b); 6a Questão Um programa pode ser formado por uma, ou mais funções. Quando existir mais de uma função, onde deverão se posicionar as demais funções em relação à função main()? Observe as afirmativas abaixo e assinale a resposta CORRETA I Antes da função main() obrigatoriamente. II Depois da função main(), obrigatoriamente, para melhorar a visibilidade, mas nada a acrescentar. III Se depois da função main(), obrigatoriamente, tem que incluir o protótipo antes. IV Pode ser antes da função main(). Somente a afirmativa I está correta. Somente a afirmativa II está correta. As afirmativas III e IV estão corretas. Somente a afirmativa IV está correta. Só a afirmativa III está correta. 7a Questão Observe o programa abaixo e escolha a opção que apresenta o que retorna da função chamada. O valor retornado corresponde ao deslocamento mais um em relação ao endereço base da variável que contem o menor número O valor retornado corresponde ao índice da variável que contem o menor número O maior número é retornado Nada retorna porque o nome do vetor da função main é diferente do nome do vetor da função descobre 8a Questão Analise o código a seguir: #include < stdio.h > #include < stdlib.h > void modifica(int v[]) { int temp=v[0]; v[0]=v[1]; v[1]=temp; } int main(int argc, char *argv[]) { int vetor[]={5,3}; modifica(vetor); printf("vetor[0]=%d\tvetor[1]=%d", vetor[0], vetor[1]); return 0; } Marque a alternativa correta: O programa não executa, pois há erro nas atribuições no corpo da função modifica(int v[]). A saída que será exibida é v[0]=5 e v[1]=3 os valores dos campos do vetor não são alterados, na função main(). A saída que será exibida é v[0]=5 e v[1]=5 os valores dos campos do vetor são copiados, na função main(). A saída que será exibida é v[0]=3 e v[1]=5 os valores dos campos do vetor são alterados, na função main(). A saída que será exibida é v[0]=3 e v[1]=3 os valores dos campos do vetor são copiados,na função main() 1a Questão Selecione a opção que apresenta os arquivos padrão de saída, erro e entrada, nessa ordem. stdout, stdin, stderr stdout, stderr, stdin stdin, stdout, stderr stderr, stdin, stdout stdin, stderr, stdout 2a Questão Assinale a opção onde está presente a função que " extrai " dados numéricos de um vetor de char, não do teclado, além de evitar problemas na alternância na leitura de valores numéricos com vetores de char ao trabalharmos com arquivos. fscanf(...); fgets(...); fgetc(...); fread(...); sscanf(...); 3a 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 detecta o fim do arquivo. Funções para gravação formatadas. Função para gravar um caractere. Função que fecha um arquivo 4a 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. tipo nome_matriz[numero_colunas][numero_linhas]; nome_matriz[numero_linhas][numero_colunas]; tipo nome_matriz[numero_linhas][numero_colunas]; tipo nome_matriz[][]; tipo nome_vetor[numero_colunas][numero_linhas]; 5a Questão Sabe-se que o modo padrão é o texto logo, não precisa incluir ao final de cada letra t. Observe as opções abaixo e escolha a que deverá ser usada quando se abre um arquivio, pois permite leitura/ escrita e alteração no modo texto(txt). w+ r r+ a+ a 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 que foi apresentado nas aulas. Não é necessário tratar, pois não existindo o arquivo ele simplesmente cria um novo e nunca terá problema. 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. 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. 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. 7a Questão Complete a lacuna: A função getc() realiza a leitura de arquivos ____________________ . palavra por palavra caractere por caracterer de uma única vez de um vetor de uma frase inteira 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ção que fecha um arquivo. Funções para ler um caractere. Funções para gravar uma linha. Funções para leitura formatada. Função que detecta o fim do arquivo. 1a Questão Assinale a opção que apresenta a função que seta o indicador de posição do arquivo no início fputs(...); fopen(...); fclose(...); rewind(...); ftell(...); 2a 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. fscanf() sscanf() fgetc() fprint() fgets() 3a 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. Não precisa abrir o arquivo Somente para gravação Para leitura e gravação Somente para leitura Para leitura e edição 4a 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(quantidade, ptrArq, endreçoElemento,tamanho); fwrite(endreçoElemento, tamanho, quantidade); fwrite(endreçoElemento, ptrArq, quantidade); fwrite( tamanho, endreçoElemento, ptrArq); fwrite(endreçoElemento, tamanho, quantidade, ptrArq); 5a Questão A função rewind() de protótipo void rewind (FILE *fp); tem como comportamento: Adiantar para a próxima posição corrente do arquivo. Adiantar a posição corrente do arquivo para o início. Retornar a posição corrente do arquivo para o fim. Adiantar a posição corrente do arquivo para o fim. Retornar a posição corrente do arquivo para o início. 6a 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; } ABCDEFY ABCYDEF ABCDEF ABC DEF 7a Questão Assinale a opção que apresenta o modo de abertura que permite leitura/ escrita e acrescentar ao final em um arquivo binário. ab+ rb+ w+ a+ r+ 8a 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("ARQ", "ARQ2"); rename("ARQ2", "ARQ"); rename("ARQ", ARQ2); rename("ARQ, ARQ2"); rename(ARQ2, ARQ);
Compartilhar