Ir ao conteúdo

Lista com ponteiros, Estrutura de Dados.

Boa noite a todos,

Como ainda não produzi nada muito bom hoje em casa (no lab produzi algo relaciona a xml-rpc que pretendo postar em breve), resolvi postar mais um dos 198578951 exercicios que estou tendo que fazer para estrutura de dados. O Exercicio de hoje é nada mais nada menos que uma implementação de uma Lista com Ponteiros, ou seja, ela não tem limite de elementos (é claro, se a memoria for infinita).

Como no exercicio anterior, o enunciado fica para a pagina inteira pois é muito grande.

O exercicio resolvido você encontra aqui.

Uma lista ordenada pode conter Strings de qualquer comprimento < 10000; • esta lista tem um número de elementos máximo fixo (100) e é implementada como um vetor de ponteiros para Strings; – utilize as rotinas de lista com vetor que você implementou para a agenda. • Um novo String é lido primeiramente para dentro de uma variável auxiliar qualquer; – então é alocada memória para exatamente o seu tamanho e ele é copiado para esta área. Para copiar um String utilize strcpy(); – por fim um lugar na lista é encontrado para ele. A posição escolhida do vetor de ponteiros da lista é instanciada através da atualização dos valores do ponteiro da posição do String na lista com o endereço do string. Pseudo-código: constantes MAXLISTA = 100; tipo tLista { // Vetor de ponteiros para caracter. caracter *dados[MAXLISTA]; inteiro último; }; • Importante: observe que criando uma variável do tipo tLista você não vai estar alocando memória para os strings a serem lidos, apenas para os ponteiros para eles. Para verificar o comprimento de um String: – utilize a função strlen(); – esta função devolve o comprimento (em caracteres imprimíveis) de um string. – Protótipo: int strlen(char *p); #include
#include
#include
char p[90] = “Carro”;
main() {
printf(“%i”, strlen(p));
}

• Imprime: 5
• Para copiar um String:
– utilize a função strcpy();
– esta função copia o conteúdo de um string (dado por um apontador) para a posição de memória dada por outro apontador.
– Protótipo: char *strcpy(char *destino, char *fonte);

#include
#include
#include
char p[90] = “Carro”;
char lata[20];
main() {
strcpy(lata, p));
printf(“s%”, lata);
}
• Imprime: Carro

Detalhes:

• Como você não sabe o comprimento do String que o usuário vai digitar, use primeiro uma variável auxiliar grande (10000 posições) para guardar o que foi
digitado;
• todas as funções de lista ordenada implementadas anteriormente devem ser reimplementadas para utilizar estes Strings;
• para a leitura de um String utilize scanf(“%s”, entrada).

Publicado emAprendendoCEstrutura de DadosSistemas Digitais

1.832 Comentários

  1. Konto na 888starz mam raczej dobre kilka tygodni i w koncu postanowilem, ze podziele sie. Szczerze mowiac — trafilem tu przez znajomego i jakos zostalem. U nas w Polsce ciezko o sensownych opcji, wiec kazde takie od razu sprawdzam dokladnie.

    Przede wszystkim krece sloty i jest w czym wybierac. Liczylem grubo ponad dwa tysiace tytulow, poczawszy od Pragmatic Play po NetEnt, Play’n GO oraz Yggdrasil. Standardowe Gates of Olympus oraz Book of Dead sa od reki, choc prawde mowiac zwykle wracam do jednego czy dwoch tytulow. Ladowanie jest ok tez na kompie.

    Jak ktos woli live — sa stoly od Evolution, na zywca, plus te cale game show w stylu Crazy Time. Wciaga bardziej niz myslalem. Wplaty i wyplaty — korzystam z karte i Neteller, da sie tez krypto. Pierwsza wyplate mialem na koncie w jakies kilka godzin, na e-wallecie ida najszybciej. Jesli komus zalezy na biezace bonusy u 888starz app download apk przed rejestracja, regularnie sie aktualizuje.

    Pakiet powitalny jest przyzwoicie — dostajesz do 1500 euro oraz jakies 150 zakrecen. Wager wynosi 40x, co szczerze w normie, ale jak zawsze trzeba przeczytac warunki. Prog niewielki, rejestracja poszla w doslownie chwile. Apka mobilna dziala bez wiekszych zgrzytow, instalka poza sklepem ze strony.

    Zeby nie bylo za rozowo — czat potrafi mieli wolno, szczegolnie w nocy. Sprawdzanie dokumentow delikatnie zmeczyla, choc to chyba przy licencji tak musi byc. Ogolnie — jestem raczej zadowolony, zdania na forach sa rozne, wiec sprawdz sam, na malych stawkach.

  2. بصراحة أنا بلعب هنا من كام شهر وقلت أشارك تجربتي من غير مبالغة. أكتر نقطة لفتت نظري إن 888starz apk شغال بسلاسة على موبايلي القديم، والتنزيل كان سريع جدًا. مفيش حاجة كاملة طبعًا بس الحكاية ماشية تمام لحد دلوقتي.

    بالنسبة للألعاب القايمة مليانة — تقريبًا 3000 لعبة أو أكتر شوية. بتلاقي أسماء معروفة زي Pragmatic Play و NetEnt و Play’n GO. بحب ألعب Gates of Olympus و Sweet Bonanza، ومرة جربت Book of Dead لما يجي مود المخاطرة. طاولات الأونلاين لايف من Evolution، والكروبيه حقيقيين وألعاب شوز زي Crazy Time لو بتحب الأجواء دي.

    بالنسبة لبونص الترحيب الأفضل يشوف على الأكواد الجديدة في [url=https://888starz-apk26.com]888 تحميل[/url] قبل الإيداع الأول. المكافأة الأولى محترم صراحة وبيوصل لحد 100% زائد لفات مجانية، بس متنسوش الـ wagering لإنه محتاج صبر وده أكتر حاجة عصبتني.

    من ناحية الفلوس مناسبة للمصريين — Visa و Mastercard موجودين، وكمان Skrill و Neteller، وفي خيار البيتكوين برضه متاح. بتبدأ بمبلغ بسيط، وطلبت فلوسي ووصلت بسرعة رغم إن الكارت أخد وقت أطول شوية.

    فتح الحساب سهل وسريع، والسبورت شغال طول اليوم لما احتجت مساعدة. فيه رخصة Curacao وبيدي إحساس بالأمان. في العموم أنا مبسوط بس بنصح: حدّثوا التطبيق أول بأول عشان تلاقوا كل حاجة شغالة.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *