Upload
maycon-silva
View
215
Download
0
Embed Size (px)
Citation preview
8/15/2019 ATPS B1 EstruturaDeDados
http://slidepdf.com/reader/full/atps-b1-estruturadedados 1/5
ETAPA 1:
Resolva o seguinte exercício:
Vamos supor que um número real seja representado por uma estruturaem C, como esta:struct realtype {int left;int right;}onde left e right representam os dígitos posicionados à esquerda e à direita do pontodecimal, respectiamente! "e left for um inteiro negatio, o número real representado ser#negatio!
a! $mplemente um programa em C para criar uma estrutura representando esse númeroe para ler um número real nesta estrutura!
%! &este mesmo programa, fa'a a leitura de um número real em uma noa ari#eldesta mesma estrutura!
(Referência: exercício 1.3.2, pag 83 do PLT) progra!a de"er# $er entreg%e i!pre$$o&'* co! progra!a$ ig%ai$ a o%tro$ gr%po$. &a$o exi$ta, o exercício de$taetapa rece+er# ponto$.
#include <stdio.h>#include <stdlib.h>#include <conio.h>
struct realtye!
int le"tint right
$real
int %ain&int argc' char (argv)*+ !
int aux
rint"&,-nEntre co% os nu%eros -n,+
rint"&,-n /igite a arte inteira: ,+scan"&,0d,' real.le"t+rint"&,-n /igite a arte deci%al: ,+scan"&,0d,' real.right+
22"un34o ara n4o i%ri%ir nu%eros negativos na arte deci%ali" &real.right < 5+
real.right 6 real.right ( &1+
rint"&,-n# 7u%ero digitado: 0d.0d-n,'real.le"t'real.right+
return 5$
8/15/2019 ATPS B1 EstruturaDeDados
http://slidepdf.com/reader/full/atps-b1-estruturadedados 2/5
ETAPA 8:
Resolva o seguinte exercício:
"uponha que um inteiro precise de quatro %ytes, um número real precise de oito%ytes e um caractere precise de um %yte! (ressuponha as seguintes defini')es edeclara')es:
struct nametype {char first*+-;char midinit;char last*.-;};struct person {struct nametype name;
int %irthday*.-;struct nametype parents*.-;int income;int numchildren;char address*.-;char city*+-;char state*.-;$ s t r u c t erson ) 1 5 5 *
"e o endere'o inicial dep for +, quais ser/o os endere'os iniciais 0em%ytes1 de cada um dos seguintes2
a! p*+-%! p *.- ! name! midinitc! p* .- !incomed! p*.- !address*3-e! p * 3 - ! parents * + - ! l a s t * + -
(Referência: exercício 1.3.3, pag 83 do PLT)
Reosta:
a6 1915b6 8;11c6 ;588d6 ;5;9e6 =
8/15/2019 ATPS B1 EstruturaDeDados
http://slidepdf.com/reader/full/atps-b1-estruturadedados 3/5
ETAPA ;:
Resonda as seguintes uest?es sobre onteiros:
+! 4 que 5 um ponteiro2 6 para que sere um ponteiro2
6m programa'/o, um ponteiro ou apontador 5 um tipo de dado de uma linguagem
de programa'/o cujo alor se refere diretamente a um outro alor alocado em outra
#rea da mem7ria, atra5s de seu endere'o! 8m ponteiro 5 uma simples
implementa'/o do tipo refer9ncia que sere para indicar, ou armaenar, um
endere'o de mem7ria!
(onteiro n/o 5 um int, float, dou%le ou char e sim um tipo de dado que armaena o
endere'o em que esses est/o alocado!
.! uais das seguintes instru')es s/o corretas para declarar um ponteiro2a! int <ptr =;%! int >ptr;c! >int ptr;d! >=;
Resosta: letra b
?! ual 5 a maneira correta de referenciar ch, assumindo que o endere'o de ch foiatri%uído ao ponteiro indica2a! >indica;%! int >indica;c! >indic;d! che! >ch;
Resosta: letra a
@! &a e=press/o float >pont; o que 5 do tipo float2a! a ari#el pont!%! o endere'o de pont!c! a ari#el apontada por pont!d! nenhuma das anteriores!
Resosta: letra c
8/15/2019 ATPS B1 EstruturaDeDados
http://slidepdf.com/reader/full/atps-b1-estruturadedados 4/5
3! Assumindo que o endere'o de num foi atri%uído a um ponteiro pnum, quale=press/o 5 erdadeira2a! num B pnum%! num B >pnum
c! pnum B >numd! pnum B num
Resosta: letra d
D! Assumindo que queremos ler o alor de =, e o endere'o de = foi atri%uído a p=, ainstru'/o seguinte 5 correta2 (or que2cin >> *px;
Resosta: @ correto a"ir%ar' ois ara ler o contedo do onteiro x te%osue utiliBar o ( .
E! ual 5 a instru'/o que dee ser adicionada ao programa seguinte para que elefuncione corretamente2
!ain ( ) - int , /p0
/p 30
Resosta: te%os ue indicar ara o onteiro C(D o endere3o de%e%Fria de CD ou seDa D 6 D.
%ain & + !
int D' (D
D 6 D
(D 6 ;
$
8/15/2019 ATPS B1 EstruturaDeDados
http://slidepdf.com/reader/full/atps-b1-estruturadedados 5/5
F! Assumindo que o endere'o da ari#el = foi atri%uído a um ponteiro p=, escreauma e=press/o que n/o usa = e diida = por 3!
%ain&+ !
int x'(xx 6 xrint"&,0d,'(x29+return&5+
$
G! Considerando o seguinte trecho do programa:
int i 3, 0int /p0 p 4i0int /505 40
6%ai$ $er7o os alores das seguintes e=press)es:
a! 0>p1HH; o valor de ( 6; deois do incre%ento assa ser Gb. >p I >q; (6G (69 6 1c! 0>q1Hj; (69 H DH9 6 15
+!"eja a seguinte sequ9ncia de instru')es em um programa C:int >pti;int i B +;pti B i;
ual afirmatia 5 "alsa2a! pti armaena o endere'o de i%! >pti 5 igual a +c! ao se e=ecutar >pti B .; i passar# a ter o alor .d! ao se alterar o alor de i, >pti ser# modificado
e! pti 5 igual a +
Resosta: a alternativa "alsa e a letra c