Baixe o app para aproveitar ainda mais
Prévia do material em texto
20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 1/24 AV1 Entrega 20 mar em 23:59 Pontos 40 Perguntas 20 Disponível 15 mar em 0:00 - 20 mar em 23:59 6 dias Limite de tempo 120 Minutos Tentativas permitidas 2 Instruções Histórico de tentativas Tentativa Tempo Pontuação MANTIDO Tentativa 2 36 minutos 40 de 40 MAIS RECENTE Tentativa 2 36 minutos 40 de 40 Tentativa 1 63 minutos 34 de 40 As respostas corretas estarão disponíveis em 25 mar em 0:00. Pontuação desta tentativa: 40 de 40 Enviado 20 mar em 22:10 Esta tentativa levou 36 minutos. IMPORTANTE: • A tentativa será finalizada após clicar no botão "ENVIAR" • Programe se para realizar suas avaliações com tranquilidade, pois você terá 120 minutos cronometrados (por tentativa) para conclusão e envio das respostas * Após este prazo, a avaliação será automaticamente finalizada • Serão permitidas duas tentativas para realizar esta avaliação, prevalecendo a maior nota obtida • Ao iniciar a avaliação o cronômetro não para, independentemente da plataforma estar aberta ou não • Durante a realização da prova, será exibido uma questão por vez, podendo “AVANÇAR" ou “VOLTAR" quando necessário, dentro do período da tentativa • Após abrir a avaliação mesmo não marcando nenhuma opção de resposta, será contabilizada uma tentativa • Somente finalize a avaliação após conferir as alternativas marcadas por você Boa prova! https://newtonpaiva.instructure.com/courses/14253/quizzes/33453/history?version=2 https://newtonpaiva.instructure.com/courses/14253/quizzes/33453/history?version=2 https://newtonpaiva.instructure.com/courses/14253/quizzes/33453/history?version=1 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 2/24 2 / 2 ptsPergunta 1 Quando se observa um código de programação, com a chance de simular seu funcionamento, é possível descobrir muita coisa, desde como ele manipula os valores até de que tipo são esses valores, mesmo que isso não esteja explícito no código. No caso de vetores e matrizes de caracteres, strings e vetores de strings, o que os diferencia é a forma como são manipulados no código, e não propriamente a forma como são declarados. No código abaixo, é possível ver a declaração e uso de uma estrutura. Considerando que a estrutura só é utilizada dessa forma, observe o código: char nomes[10][21]; for(i=0;i<=9;i++) { for(j=0;j<=20;j++) { printf("Digite o próximo valor:"); scanf("%c",&nomes[i][j]); } } Nesta situação, pode-se afirmar que foi declarado no começo do código um(a): Vetor de caracteres. Vetor de strings. String. Matriz de caracteres. Matriz de strings. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 3/24 Strings referem-se a uma forma de manipulação dos vetores de caracteres que, quando são lidos utilizando a string de controle (%s) no scanf( ) ou um comando de entrada próprio – o gets( ) –, são reconhecidos como uma palavra ou texto, e não somente como um conjunto de caracteres. A estrutura não é um string, mas, sim, uma matriz de caracteres por não ser manipulada como string ao receber os dados. 2 / 2 ptsPergunta 2 Observe o código a seguir: int resposta = strcmp( nome1, nome2 ) Considerando o código apresentado, se o conteúdo de nome1 for a palavra “Vez” enquanto o conteúdo de nome2 for a palavra “Carro”, qual é o valor armazenado na variável resposta ao final da execução do trecho de código? Menor que 0. Maior que 0. Igual a -1. Igual a 1. Igual a 0. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 4/24 A alternativa correta é que a variável resposta será maior que 0, pois a função strcmp retorna um valor maior que zero caso a primeira string seja maior que 0. Nesse caso de estudo, a situação é essa, pois foi dito que o conteúdo de nome1 é maior que o conteúdo de nome2. 2 / 2 ptsPergunta 3 Avalie o seguinte trech de código: #define NLIN 10 #define NCOL 20 int Matriz[NLIN][NCOL]; for(i=0; i < NLIN; i++) for(j=0; j < NCOL; j++) Matriz[i][j] = i+j; Sobre o trecho de código apresentado, assinale a alternativa INCORRETA: O valor armazenado em Matriz[0][0] é igual a 0. O valor armazenado em Matriz[3][3] é igual a 6. O valor armazenado em Matriz[2][2] é igual a 4. A variável Matriz possui 200 elementos. A variável Matriz possui o mesmo número de linhas e colunas. 2 / 2 ptsPergunta 4 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 5/24 Analise o código a seguir. int main() { int linha; int coluna; int i; int somaprod; int mat1[3][3]={{5,4,3},{1,3,4},{5,7,9}}; int mat2[3][3]={{1,0,0},{0,1,0},{0,0,1}}; int mat3[3][3]; int M1L=3, M1C=3, M2L=3, M2C=3; for(linha=0; linha<M1L; linha++) for(coluna=0; coluna<M2C; coluna++){ somaprod=0; for(i=0;i<M1L; i++) somaprod+=mat1[linha][i]*mat2[i][coluna]; mat3[linha][coluna]=somaprod; } for(linha=0; linha<M1L; linha++){ for(coluna=0; coluna<M2C; coluna++) printf("%d ", mat3[linha][coluna]); printf("\n"); } system("PAUSE"); return 0; } Após a execução do código anterior é correto o que se afirma em: O valor de mat3[2][2] = 9 O valor de mat3[2][1] = 21. O valor de mat3[1][2] = 6. O valor de mat3[1][1] = 8. O valor de mat3[0][1] = 3. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 6/24 O algoritmo descrito no texto, inicialmente declara três matrizes mat1, mat2 e, mat 3 , sendo cada uma delas de dimensão 3x3.Posteriormente inicializa das duas primeiras, e, em seguida, realiza a multiplicação destas , armazenando seu resultado em mat3, por fim o algoritmo imprime a matriz resultante. Importante observar que mat2 consiste na matriz identidade, logo o produto de mat1 por mat2 consiste em mat1 , o qual é armazenada em mat3. Como apresentado na unidade 1, no tópico 1.1.4. Linguagem de Programação 2 / 2 ptsPergunta 5 Matrizes são recursos muito utilizados tanto na matemática quanto na computação. Uma matriz pode organizar os dados de mesmo tipo em um programa entre linhas e colunas, permitindo o uso posterior das informações de forma mais prática. Quando é necessário percorrer uma matriz, é importante que se observem os 2 índices necessários para acesso a cada campo, assim como acontece com os pontos de um plano cartesiano. Seu amigo programador precisa criar uma matriz na qual todas as linhas devem ser preenchidas com valores de 0 a 2. Ele enviou-lhe um trecho do código que havia criado para que você fizesse um teste; porém, no trecho que enviou, não havia a declaração da matriz. Como você necessita do código completo para realizar o teste, como ficará a declaração dessa matriz para que o programa funcione corretamente? A seguir, está o código enviado pelo seu amigo: for(i=0;i<=3;i++) for(j=0;j<=2;j++) matriz[i][j]=j; Após analisar o código, pode-se afirmar que a forma correta para a declaração da matriz para que esse código funcione corretamente é int 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 7/24 matriz: Fonte: Adaptado de CUNHA, Claudia, 2018. [4][3] [3][4] [4][2] [2][3] [3][2] Como a repetição mais externa (i) é responsável por mudar a linha, e a mais interna (j) é responsável por preencher as colunas de cada linha, o “i” vai de 0 a 3 (4 posições) e o “j” vai de 0 a 2 (3 posições), além de recebero valor e o “j” nas posições, podemos afirmar que a matriz é (Int matriz[4][3]). 2 / 2 ptsPergunta 6 Analise o código abaixo: char nome[41], sobrenome [21]; setlocale(LC_ALL, "Portuguese"); strcpy(nome," Ana "); strcpy(sobrenome,"Maria"); strcat(nome,sobrenome); printf("\n %s\n",nome); A partir do conhecimento construído, ao executar o código acima, qual será o valor impresso? Marque a alternativa correta que demonstre o valor a ser escrito: 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 8/24 Maria Ana. Ana Ana. Maria. Ana. Ana Maria. Será impresso o texto Ana Maria, pois nome recebeu “Ana” através do strcpy, e sobrenome recebeu “Maria”; além disso, na sequência, os valores foram concatenados na variável nome1. 2 / 2 ptsPergunta 7 Analise o seguinte trecho de código. #include void funcao_descolhecida(int Vet[10]) { int i; for(i = 0; i < 10; i++) { printf("%d ", Vet[i]); } } int main() { int Matriz[5][10]; int i; for(i = 0; i < 10; i++){ Matriz[0][i] = i; } i = 0; funcao_descolhecida (Matriz[i]); printf("\n"); return 0; } Sobre o código apresentado, é correto o que se afirmar em: A variável Matriz armazena valores reais. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 9/24 A função_desconhecida imprime os maiores valores de uma linha A variável Matriz armazena 40 elementos. O programa imprime a primeira linha da variável Matriz. O programa preenche todas as linhas e colunas da matriz. O programa apresentado, declara uma variável Matriz cujas dimensões são 5 linhas e 10 colunas , em seguida inicializa a linha de índice 0 com os valores de 0 a 9 , em seguida imprime esta linha através da função_desconhecida. Como apresentado na unidade 1, no tópico 1.1.4. Linguagem de Programação. 2 / 2 ptsPergunta 8 Analise o seguinte trecho de código. #define TAM_MAX 10000 double vetor[TAM_MAX]; double variavel1; for(i=0; i<TAM_MAX; i++) scanf("%f",&vetor[i]); variavel1 = vetor[0]; for(i=0; i<TAM_MAX; i++) if (vetor[i] > variavel1) variavel1 = vetor[i]; Sobre o código apresentado é correto o que se afirma em: O código imprime todos os valores do variável vetor. A variável1 recebe todos os valores de variável vetor. O código seleciona o menor elemento da variável vetor. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 10/24 A variável1 é impressa na tela. O código seleciona o maior elemento da variável vetor. O código apresentado declara um vetor com 10000 posições e realiza a leitura de seus elementos a partir do teclado em seguida, seleciona o maior elemento deste vetor e o armazena na variável (variavel1). Como apresentado na unidade 1, no tópico 1.1.4. Linguagem de Programação 2 / 2 ptsPergunta 9 O programador, que estava desenvolvendo um programa para a escola onde você trabalha, criou uma lógica que compara a palavra Aluno com o conteúdo da variável str. Para que a comparação seja feita de forma simplificada, foi utilizada a função strlwr, da biblioteca string.h; porém, o desenvolvedor começou o código e não pôde terminá-lo. Como você tem um conhecimento avançado em programação, foi chamado para continuar o desenvolvimento do programa e viu que o programador havia começado a configurar a comparação da string (str) com a palavra (Aluno) utilizando o strlwr, e a única coisa que faltou para terminar foi a constante literal da comparação. Com base nas informações apresentadas, de que modo deve ser escrita a constante no código para que a comparação com a função strlwr(str) seja executada quando o usuário escrever Aluno? “ALUNO ou aluno” “ALUNO” 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 11/24 “Aluno ou aluno” “Aluno” “aluno” A função strlwr retorna o conteúdo da string minúsculo. No caso proposto na questão, independentemente da forma como o usuário digitar a palavra aluno (Aluno, ALUNO, aluno, AlUnO, ALuNo), ele retornará que são iguais se a constante a ser comparada for “aluno”. 2 / 2 ptsPergunta 10 A linguagem C não possui um tipo string explícito. Não existe palavra reservada que declare uma variável para armazenar uma string. Em vez disto, você aloca espaço na memória para uma string definindo uma matriz de caracteres. Uma matriz de caracteres algumas vezes se parece com qualquer outra variável. Por exemplo, você pode mostrar uma string inteira na tela numa única operação printf e usar uma variedade de funções para ler uma string do teclado e armazenar numa variável de entrada. Fonte: Disponível em:< https://www.unicamp.br/fea/ortega/info/aula09.htm> Acesso.08. Ago.2019. Nesse contexto, avalie as asserções a seguir e a relação proposta entre elas: I - A leitura de valores string pode ser feita da mesma forma que a leitura de outros tipos. PORQUE II - utilizando-se scanf com a string de controle %s a entrada é formatada para o tipo texto. A respeito dessas asserções, assinale a opção correta: 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 12/24 A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. A asserção I é uma proposição falsa e a II é uma proposição verdadeira. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. As asserções I e II são proposições falsas. A leitura de valores string pode ser feita da mesma forma que a leitura de outros tipos, utilizando scanf com a string de controle %s, que formata a entrada para o tipo texto. Para ler o nome declarado, o comando de entrada dado por scanf(“%s”,&nome);. Como apresentado na unidade 1, no tópico 1.1.3. Linguagem de Programação 2 / 2 ptsPergunta 11 Analise o código a seguir. #include<stdlib.h> #include<stdio.h> #include<locale.h> int main(){ 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 13/24 int *pt1, **pt2, valor; setlocale(LC_ALL, “Portuguese”); pt1=&valor; valor=100; pt2=&pt1; printf(“%p\n”,pt2); printf(“%p\n”,*pt2); printf(“%i”,**pt2); } Nesse contexto, julgue as afirmações que se seguem. I – A expressão printf(“%i”,**pt2); mostra o número 100. II – A atribuição pt1=&valor; faz com que pt assuma o valor armazenado em valor. III – A declaração **pt2 no início do código é um ponteiro para um número real. Está(ão) correta(s) a(s) afirmativa(s): II e III, somente. I, somente. I e II, somente. III, somente. II, somente. Apenas a afirmação I está correta, a afirmação II está incorreta, pois a expressão pt1=&valor; atribui o endereço da variável valor a pt1, a terceira afirmação está incorreta , pois a declaração **pt2, consiste em um ponteiro para ponteiro. 2 / 2 ptsPergunta 12 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 14/24 Analise o seguinte código em linguagem C. #include <stdio.h> #include <stdlib.h> int main(){ int *pt1=NULL, *pt2=NULL; int valor1, valor2, resultado; valor1=47; valor2=50; pt1=&valor1; pt2=&valor2; resultado=*pt1+*pt2; printf(“%i \n”,resultado); system(“PAUSE”); return 0; } Sobre o código apresentado é correto o que se afirmar em: A variável resultado apresentará erro ao tentar somar os ponteiros. A expressão pt1=&valor1 atribui o valor contido em valor1 a pt1. A variável resultado irá armazenar o valor inteiro 97. A variável resultado será um ponteiro nulo.A expressão valor1=47;faz referência ao endereço de memória da variável valor. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 15/24 O programa apresentado declara as variáveis valor1, valor2 e resultado, como sendo do tipo inteiro, bem como os ponteiros *pt1, *pt2 também sendo do tipo inteiro. Posteriormente, a variável resultado recebe a soma dos valore que pt1 e pt2 apontam, portanto 97. Como apresentado na unidade 2 no tópico 2.1.5 Linguagem de Programação. 2 / 2 ptsPergunta 13 Observe o trecho do código a seguir: int main() { float *pt1,*pt2,*pt3, numero1,numero2; pt3=&numero2; pt1=&numero1; pt2=pt1; numero1=25; *pt2=150; *pt3=numero1; (*pt3)++; printf("%f - %f - %f",*pt1,*pt2,*pt3); } Quais números serão impressos ao final da execução do código? 25.00 – 150.00 – 25.00. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 16/24 151.00 – 150.00 – 150.00. 26.00 – 151.00 – 150.00. 150.00 – 150.00 – 151.00. 25.00 – 26.00 –150.00. No início do código, pt3 e pt1 recebem o endereço de numero2 e numero1 respectivamente. pt2 recebe o endereço de pt1 (até aqui, pt1 e pt2 apontam para a mesma área de memória). Por meio do acesso indireto, o pt2 recebe o valor 150 (pt1 = 150, pt2 = 150), e pt3 recebe o valor do numero1 (que é o endereço apontado por pt1 e pt2) e tem o valor 150. Quando é feito (* pt3++), o valor é atualizado com mais 1; portanto, no final, os valores impressos são 150 – 150 – 151. 2 / 2 ptsPergunta 14 Em C, uma variável que contém um endereço de memória é uma variável do tipo ponteiro. Um valor, que é um endereço (como &a) é um valor de ponteiro. Quando um ponteiro (a variável) contém um determinado endereço, dizemos que ele aponta para o endereço de memória. Além disso, se o valor deste ponteiro é o endereço de uma outra variável qualquer, dizemos que tal ponteiro aponta para esta outra variável. Diponível em;< http://www.inf.ufpr.br/cursos/ci067/Docs/NotasAula/notas- 28_Ponteiros.html> Acesso.06. Ago.2019. Nesse contexto, considere pt1 um ponteiro, em seguida julgue as afirmações que se seguem. I – A expressão pt1 ++; acessa o próximo endereço de memória. II – A expressão (*pt1)-=2; acesso dois endereços de memória para traz. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 17/24 III – A expressão pt1=pt1+9; acessa dez endereços de memória frente. Está(ão) correta(s) a(s) afirmativa(s): I e II, somente. II, somente. II e III, somente. I, somente. III, somente. Apenas a afirmação I está correta, as a segunda afirmação II está incorreta, pois a expressão (*pt1)-=2; acessa o conteúdo apontado subtraído de 2 e a terceira expressão pt1=pt1+9;// acessa 9 endereços à frente. Como apresentado na unidade 2 no tópico 2.1.5 Linguagem de Programação. 2 / 2 ptsPergunta 15 Analise o seguinte código escrito em linguagem C. #include<stdlib.h> #include<stdio.h> #define MAX 1000 int main(){ 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 18/24 int *ptvetor, i,vet[MAX]; for(i=0;i<MAX;i++){ vet[i]=i+1; } ptvetor=vet; for(i=0;i<MAX;i++){ printf(“%p - %i\n”,ptvetor, *ptvetor); ptvetor++; } Sobre o código apresentado é correto o que se afirmar em: A variável *ptvetor é um vetor de inteiros. A variável *ptvetor é um ponteiro para números inteiros. A expressão vet[i]=i+1; consiste em uma aritmética de ponteiros. A expressão ptvetor++; soma uma unidade na variável vetor. As expressões printf(“%p - %i\n”,ptvetor, *ptvetor); mostram um mesmo resultado. A variável *ptvetor é um ponteiro para números inteiros, tendo sido declarada no início do programa. Como apresentado na unidade 2 no tópico 2.1.6 Linguagem de Programação 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 19/24 2 / 2 ptsPergunta 16 As funções de alocação dinâmica possibilitam que o programa aloque mais memória em tempo de execução, bem como permitem a desalocação e a realocação de memória dinamicamente. A partir dessas informações, a função de alocação dinâmica é capaz de liberar toda a memória reservada dinamicamente a: return( ) malloc( ) void( ) realloc( ) free( ) A função free( ) libera regiões da memória alocadas dinamicamente. 2 / 2 ptsPergunta 17 Analise o seguinte trecho de código. #include <stdio.h> #include <stdlib.h> struct x{ int a; int b; int c; }; 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 20/24 int main(void){ struct x estrutura; int *y = malloc ( sizeof(estrutura)); printf(“%li”, sizeof(estrutura)); } Sobre o trecho de código apresentado é correto apenas o que se afirma em: Imprime uma estrutura através do comando printf. Declara uma estrutura de números reais. Lê a partir do teclado três números inteiros. Aloca dinamicamente uma estrutura. Imprime a posição de memória da estrutura através do comando printf. O código apresentado aloca dinamicamente uma estrutura contendo três números inteiros. Como apresentado na unidade 3, no tópico 3.1.2.1 Linguagem de Programação. 2 / 2 ptsPergunta 18 Analise o seguinte código computacional. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 21/24 # include <stdio.h> # include <stdlib.h> int main(){ int *v, n =500; v = (int *) malloc( sizeof (int)*n); int i; for (i=0;i<n;i++) v[i] = i*i +2; for (i=0;i<n;i++) printf (“v[%d] = %d\n”,i, v[i]); free (v); return 0; } Sobre o código apresentado é correto apenas o que se afirmar em: Ao final de sua execução v[10]=100. Ao final de sua execução v[20]=404 Ao final de sua execução v[9]=83 Ao final de sua execução v[13]=170. Ao final de sua execução v[12]=144. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 22/24 O código apresentado, aloca dinamicamente um vetor com 500 posições, e inicializa este através da seguinte expressão v[i] = i*i +2, portanto , v[9] = 9*9 +2 =83. Como apresentado na unidade 3 no tópico 3.1.2.1 Linguagem de Programação. 2 / 2 ptsPergunta 19 O desenvolvimento de uma aplicação envolve a utilização de recursos de memória, e gerenciar esses recursos com um código mais bem planejado torna a aplicação menos propensa a falhas. Usando as funções de alocação de memória da linguagem C, é possível manipular áreas de memória livre e, nelas, poderemos alocar as variáveis. Se a região, porém, não tiver espaço para essa alocação, qual retorno receberíamos se usássemos as funções malloc( ) e realloc( )? false 0 full true null Todas as funções de alocação de memória retornam uma informação para o código, mas somente quando retornam null saberemos que houve erro. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 23/24 2 / 2 ptsPergunta 20 Analise o seguinte trecho de código. #include <stdlib.h> #include<stdio.h> int main (){ int * vetor; vetor = malloc (10 * sizeof (int)); for (int n = 0; n< 10; n++) vetor[n]=n*n; vetor = realloc (vetor, 15 * sizeof (int)); for (int n = 10; n < 15; n++) vetor[n]=n; printf (“\n”); for (int n = 0; n < 15; n++) printf (“\n vetor[%i]=%i”,n,vetor[n]); } Neste contexto, julgue as afirmações que se seguem. I - Afunção realloc sobrescreve todos os dados do vetor. II – Ao final da execução do código vetor [14] =14. II – Ao final da execução do código vetor [5] =25. Está(ão) correta(s) a(s) afirmativa(s): I, somente. I e II, somente. I e III, somente. II e III, somente. II, somente. 20/03/2022 22:12 AV1: F.ADS.3 - Linguagens de Programação https://newtonpaiva.instructure.com/courses/14253/quizzes/33453 24/24 Apenas as afirmações II e III estão corretas, a afirmação I não está correta, pois a função realloc apenas expande o tamanho da memória previamente alocada, não sobrescrevendo esta. Pontuação do teste: 40 de 40
Compartilhar