Ir ao conteúdo
  • Cadastre-se

Jessé P. de Melo

Membro Pleno
  • Posts

    94
  • Cadastrado em

  • Última visita

Tudo que Jessé P. de Melo postou

  1. Olá. Estou fazendo o seguinte exercicio. 10 - Utilizando uma estrutura, faça um programa que permita a entrada de nome, endereço e telefone de 5 pessoas e os imprima em ordem alfabética. Nesse exercício terei que fazer trocas de posições de um vetor com dado tipo strutc. É possível fazer atribuição de uma estrutura com outra? ex: strutc1=struct2. Segue código que fiz ate agr, esta dando erro na hora de montar. Não sei se é isso ou o do-while não tenho muita pratica com esse comando. Segue código. #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ int teste; struct lista_tel{ char nome[30]; char tel[16]; }; struct lista_tel lista[5]; struct lista_tel troca; for(int x=0;x<5;x++){ printf("Digite um nome: "); scanf("%99[^\n]*c",lista[x].nome); printf("Digite um numero :") ; scanf("%99[^\n]*c",lista[x].tel); printf("\n"); } do{ teste=0; for(int x=0;x<5;x++){ if (lista[x].nome[0]>lista[x+1].nome[0]){ troca = lista[x]; lista[x]=lista[x+1]; lista[x+1]=troca; teste=1; } }while(teste!=0); } }
  2. @isrnick Desculpe entendi só agr o que estava querendo dizer. Você quis dizer que segue um padrão e não necessariamente sequencial ordenado. Só consegui entender depois de ler e reler a resposta do @AnsiC . O enunciado está confuso sobre o que realmente quer, vou deixar do jeito que esta. Quando terminar todas as listas volto nos que não consegui.
  3. @isrnick Esse trecho é para comparar o valor inicial com valores de posições. 'n' sempre vai ser o inicio independente se começa da esquerda ou da direita. Se eles são consecutivos (4,3,2.1,0,1,2,3,4) : A posição atual comparada a sua direita soma um. Ex: n=0 então para ser consecutivo n1=0+1 logo n2=0+2; A posição atual comparada a sua esquerda subtrai um. Ex n=4 então para ser consecutivo n3=4-1 logo n2=4-2 Sei que não é a melhor maneira já que tudo e feito em relação ao primeiro e não ao antecessor, mas resolve. Sem isso só se multiplica os valores dos índices de verificar.
  4. É com muito desgosto que informo que não consegui solucionar o problema, talvez ele tenha feito isso para trolar. O máximo que consegui filtrar retornou esses valores tanto crescente quanto decrescente procurando da direita para esquerda ou esquerda para direita: 78911-67881-34506-56748-12316-45665-45682-12309-60789-33678-24345-46567-19123-12456-65456-98123-12545-08634-26956-60789-33678-24345-46567-19123-12456-65456-98123. Muito provavelmente ele trollou ou errou e no lugar dos digito (0 ao 9) quis dizer inteiros (∞). Se for inteiro não sei com resolver porque pode ser um inteiro de um digito, ou dois, e ou assim por diante, e se no meio do processamento mudar de casas(dezena para centena) tipo 96979899100. Não dou conta não vou esperar um veterano. Segue meu código: #include<stdio.h> #include<stdlib.h> #include<string.h> void main (void){ char lista[]="7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450"; int valor_atual=0; // Variavel para receber valores do calculo para comparação int valor_novo=0; // Variavel para receber valores do calculo para comparação int tam; tam=strlen(lista); for(int x=0;x<tam-4;x++){ char caractere[2]; char caractere1[2]; char caractere2[2]; char caractere3[2]; char caractere4[2]; caractere[1]='\0'; caractere1[1]='\0'; caractere2[1]='\0'; caractere3[1]='\0'; caractere4[1]='\0'; caractere[0]=lista[x]; caractere1[0]=lista[x+1]; caractere2[0]=lista[x+2]; caractere3[0]=lista[x+3]; caractere4[0]=lista[x+4]; int n=atoi(caractere); int n1=atoi(caractere1); int n2=atoi(caractere2); int n3=atoi(caractere3); int n4=atoi(caractere4); /*printf("%i%i%i%i%i\n",n,n1,n2,n3,n4); //print para verificar o que foi convertido para testes */ if((n1==n+1)&&(n2==n+2)&&(n3==n+3)&& (n4==n+4)){ printf("numeros crescentes: %i%i%i%i%i\n",n,n1,n2,n3,n4); valor_atual=n*n1*n2*n3*n4; if(valor_novo>valor_atual){ valor_atual=valor_novo; } } } for(int x=0;x+4<tam;x++){ char caractere[2]; char caractere_1[2]; char caractere_2[2]; char caractere_3[2]; char caractere_4[2]; caractere[1]='\0'; caractere_1[1]='\0'; caractere_2[1]='\0'; caractere_3[1]='\0'; caractere_4[1]='\0'; caractere[0]=lista[x]; caractere_1[0]=lista[x-1]; caractere_2[0]=lista[x-2]; caractere_3[0]=lista[x-3]; caractere_4[0]=lista[x-4]; int n=atoi(caractere); int n_1=atoi(caractere_1); int n_2=atoi(caractere_2); int n_3=atoi(caractere_3); int n_4=atoi(caractere_4); if((n_1==n-1)&&(n_2==n-2)&&(n_3==n-3)&& (n_4==n-4)){ printf("numeros decrescentes: %i%i%i%i%i\n",n_4,n_3,n_2,n_1,n); valor_atual=n_4*n_3*n_2*n_1*n; if(valor_novo>valor_atual){ valor_atual=valor_novo; } } } }
  5. @Simon Viegas Difícil em ! O dono da lista é um professor famosinho da UFMG - UFU. Peguei essa lista de Exercicios no site dele. Esse é o ultimo da lista de string é pra ser difícil mesmo.
  6. O famoso ditado. Para bom entendedor meia palavra basta. Vou tentar acertar e posto o resultado.
  7. @isrnick Se der me retorna a sequencia de números que encontrou. Refiz o exercício de maneira mais simples porque não estava dando certo. Os números que encontrei na lista com maior sequencia foi 78911 - 67881 - 34506 - 56748 -12316 - 45665 - 45682 - 12309. Com apenas o n1==n+1 && n2=n+2 do IF. Sabe me informar porque com mais de um '&&' o programa não funciona? Seria muito agradecido se conseguisse fazer o código que segue funcionar. Fica mais fácil para entender.onde errei. #include<stdio.h> #include<stdlib.h> #include<string.h> void main (void){ char lista[]="7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450"; int valor_atual=0; // Variavel para receber valores do calculo para comparação int valor_novo=0; // Variavel para receber valores do calculo para comparação int tam; tam=strlen(lista); for(int x=0;x<tam-4;x++){ char caractere[2]; char caractere1[2]; char caractere2[2]; char caractere3[2]; char caractere4[2]; caractere[1]='\0'; caractere1[1]='\0'; caractere2[1]='\0'; caractere3[1]='\0'; caractere4[1]='\0'; caractere[0]=lista[x]; caractere1[0]=lista[x+1]; caractere2[0]=lista[x+2]; caractere3[0]=lista[x+3]; caractere4[0]=lista[x+4]; int n=atoi(caractere); int n1=atoi(caractere1); int n2=atoi(caractere2); int n3=atoi(caractere3); int n4=atoi(caractere4); /*printf("%i%i%i%i%i\n",n,n1,n2,n3,n4); //print para verificar o que foi convertido para testes */ if((n1==n+1)&&(n2==n+2)&&(n3==n+3)&& (n4==n+4)){ printf("numeros: %i%i%i%i%i\n",n,n1,n2,n3,n4); if(valor_novo>valor_atual){ valor_atual=valor_novo; } } } }
  8. @isrnick Boa...sua logica é parecida com a minha só que seu código está muito mais limpo. Alias, o meu esta aquela bagunça por que estava tendo problemas até para printar resultados isolados, ai fiz a conversão do texto de maneira redundante e manualmente. Vou ver se encontro o erro...
  9. Voltei... pensei em uma solução, porém não estou conseguindo implementar. Sei que esta bastante repetitivo porém assim fica mais fácil de compreender, quando estiver tudo funcionando arrumo. Esta compilando sem erros, mas não faz o esperado. Segue código. #include<stdio.h> #include<stdlib.h> #include<string.h> void main (void){ char lista[]="7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450"; int valor_atual=0; // Variavel para receber valores do calculo para comparação int valor_novo=0; // Variavel para receber valores do calculo para comparação for (int x=0;x<1000;x++){ // Loop que percorre todo o vetor, joguei o texto no word e deu 1000 caracteres char caractere[1]; // Strings para receber valor individual do vetor se ficar sem o programa não identifica o \0 e o resultado sai bizarro. char caractere1[1]; char caractere2[1]; char caractere3[1]; char caractere4[1]; int numero; //primeiro numero do vetor caractere[0]=lista[x]; // isola membros a membro do indice caractere1[0]=lista[x+1]; caractere2[0]=lista[x+2]; caractere3[0]=lista[x+3]; caractere4[0]=lista[x+4]; caractere[1]='\0'; caractere1[1]='\0'; caractere2[1]='\0'; caractere3[1]='\0'; caractere4[1]='\0'; numero=atoi(caractere); //conversão do primeiro valor do indice deixa de ser caracter alfanumerico e vira numero inteiro if ((atoi(caractere)==numero)&&(atoi(caractere1)==numero+1)&&(atoi(caractere2)==numero+2)&&(atoi(caractere3)==numero+3)&&(atoi(caractere4)==numero+4)){ //converte o segundo caracter e compara com numero, converte o segundo caractere e compara com numero+1 e assim por diante 4x. Isso garante que os numeros são consecutivos. porém acredito que esteja dando erro. valor_novo=numero*(numero+1)*(numero+2)*(numero+3)*(numero+4); if (valor_novo>valor_atual){ valor_atual=valor_novo; } } } printf("O maior produto de cinco digitos consecutivos da lista e': %i",valor_atual); }
  10. @Simon Viegas Desculpe pela demora para responder. Estou com um problema serio para administrar meu tempo, possuo bastante tempo livre porém e de "picado". Enfim, sou grato a sua explanação e ela faz todo o sentido, nos teste que fiz me livrei da acentuação, pontuação e não me lembro relacionado aos espaços. Resumindo fiz o processo de tratamento do texto manualmente, no entanto como a correção desse exercicio é um processo onde não ira agregar conhecimento e ainda tenho 6 lista de exercícios para fazer nesse caso em especifico vou deixar do jeito que esta. Mais uma vez gostaria de deixar claro que sou grato. Att.
  11. Boa tarde. Estou com duvidas sobre o que esse exercício pede, entendi a parte dos cinco dígitos consecutivos na sequencia, já a parte dos produto ficou confusa, esta pedindo para encontrar o maior resultado da multiplicação dos cinco dígitos? Segue exercício. Faca um programa que encontre o conjunto de 5 digitos consecutivos na sequencia abaixo que gere o maior produto: 73167176531330624919225119674426574742355349194934 96983520312774506326239578318016984801869478851843 85861560789112949495459501737958331952853208805511 12540698747158523863050715693290963295227443043557 66896648950445244523161731856403098711121722383113 62229893423380308135336276614282806444486645238749 30358907296290491560440772390713810515859307960866 70172427121883998797908792274921901699720888093776 65727333001053367881220235421809751254540594752243 52584907711670556013604839586446706324415722155397 53697817977846174064955149290862569321978468622482 83972241375657056057490261407972968652414535100474 82166370484403199890008895243450658541227588666881 16427171479924442928230863465674813919123162824586 17866458359124566529476545682848912883142607690042 24219022671055626321111109370544217506941658960408 07198403850962455444362981230987879927244284909188 84580156166097919133875499200524063689912560717606 05886116467109405077541002256983155200055935729725 71636269561882670428252483600823257530420752963450
  12. Desculpa a demora, estão trocando a fiação dos postes, fiquei sem internet. Olá novamente Srs. Consegui fazer ficou da maneira que segue abaixo... Tenho algumas duvidas. 1- Porque a linguagem C interpreta o espaço " " como final de string ? Resolvi esse problema colocando underline "_" no lugar do espaço. Existe uma maneira simples de contornar esse problema colocando o espaço genuinamente? 2- Se fosse o caso de saber o lugar exato onde encontrou a palavra (índice da linha e índice coluna), existe uma maneira fácil de fazer isso? #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ char alunos[5][30]; char nome_procura[30]; char perg; int loop=0; char *retorno; for(int x=0;x<5;x++){ if(loop==0){ printf("Digite os nomes dos alunos: \n"); scanf("%s",&alunos[x]); fflush(stdin); if (x<4){ printf("Deseja continuar inserindo nomes ? (S/N)\n"); scanf("%c",&perg); fflush(stdin); if (perg ==('n' ||'N')) loop=1; } } } printf("Qual nome está procurando ?\n"); scanf("%s",&nome_procura); fflush(stdin); for (int x=0;x<4;x++){ if((retorno=strstr(alunos[x],nome_procura))!=NULL){ printf("Nome completo : %s\n",alunos[x]); printf("O nome esta guardado na posicao: %d na lista",x); } } }
  13. Só pode ser bricadeira...Fiquei horas e horas tentando criar a solução sendo que ela ja existe em uma simples função. Hoje anoite ou amanha a tarde posto a solução.
  14. Boa tarde. Estou resolvendo o seguinte exercício. Faca um programa para ler uma tabela contendo os nomes dos alunos de uma turma de 5 alunos. O programa deve solicitar ao usuário os nomes do aluno, sempre perguntando se ele deseja inserir mais um nome na lista. Uma vez lidos todos os alunos, o usuário ira indicar um nome que ele deseja verificar se esta presente na lista, onde o programa deve procurar pelo nome (ou parte deste nome) e se encontrar deve exibir na tela o nome completo e o índice do vetor onde esta guardado este nome. Desenvolvi o algoritmo que segue. Só compilei, ainda não testei, tenho medo porque antes de chegar a esse resultado fiquei travado umas 2x e tive que começar do zero. Mais tarde volto e seria muito bom se já soubesse onde esta errado.Isso economiza um tempão. Segue script. #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ char alunos[5][30]; //lista de alunos de ate trinta caracteres char cont=' '; //variavel para validar se continua ou nao char nome_proc[30];//String a procura int tam=0; printf("Digite o nome dos alunos "); for(int x=0;x<4;x++){ //Preencher lista alunos scanf("%s",&alunos[x]); cont=' '; printf("Deseja continuar inserindo nomes?(S/N)"); scanf("%c",&cont); if (cont=='N'){ //Se não quzer preencher mais retorna 0 e passa para proxima instrução break; } } printf("Digite o nome que esta procurando: "); //Preenche votor com palvra que esta procurando scanf("%s",&nome_proc); for (int x=0;nome_proc[x]!='\0';x++){ //calcula o tamanho da string procurada, como a pesquisa pode ser feita por trechos o \0 não funcina tam=x; } for (int x=0;x<5;x++){ //Percorre coluna do vetor alunos for (int y=0;y<29;y++){ //percorre linha do vetor alunos int igual=0; //variavel booleana, se for diferentes for(int z=tam;z>tam;z--){ //percorre vetor da palavra que esta procurando if (nome_proc[z]==alunos[x][y]){ //verifica se os valores das posiçoes são iguais, iniciando com o valor maximo da palavra procurada e termina a pesquisa com valor min while(z>0){ if(nome_proc[z]!=alunos[x][y]){ break; } } printf("Nome completo: %s\n",alunos[x]); printf("O indice %i",x); } } } } }
  15. Resolvi o exercício. Sofri um pouco por que tinha esquecido que sem o '\0' strings não terminam. Muito obrigado isrnick !!! Segue resolução ! #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ char entrada[100]; char entradaespelhada[100]; char metade1[50]; char metade2[50]; int tam=0; int tamcalc=0; int metade=0; printf("Digite uma frase ou palavra para saber se ela e' um palindromo: "); scanf("%99[^\n]", entrada); //le frase de entrada for(tam=0; entrada[tam]!='\0'; tam++); //conta o tamanho da string tamcalc=tam; // Variavel para calculo da entrada espelhada metade=tam/2;// Variavel para calculo das metades for(int x=0;x<tam;x++){ //calculo inverter string entrada tamcalc--; entradaespelhada[x]=entrada[tamcalc]; } entradaespelhada[tam]='\0';// Finaliza a string for(int x = 0; x<metade;x++){//Calculo para a primeira metade da string metade1[x]=entrada[x]; } metade1[metade]='\0'; //Finaliza string primeira metade for(int x=0;x<metade;x++){ // calculos da segunda metade, essa sendo espelhada do final da string entrada metade2[x]=entradaespelhada[x]; } metade2[metade]='\0'; //finaliza string metade2 if(strcmp(metade1,metade2)==0){ // logica para exibir resposta printf("E' palindromo"); } else printf("nao e' palindromo"); printf("\nEntrada:%s \nEntrada espelhada:%s \nprimeira metade:%s \nsegunda metade:%s \ntamanho da string:%i \nmetade da string:%i",entrada,entradaespelhada,metade1,metade2,tam,metade); // impressao de todas as variaveis usadas. }
  16. Estou fazendo o seguinte exercicio... Faça um programa que, dada uma string, diga se ela e um palındromo ou nao. Lembrando que um palındromo e uma palavra que tenha a propriedade de poder ser lida tanto da direita para a esquerda como da esquerda para a direita. Exemplo: ovo arara Socorram-me, subi no onibus em Marrocos. Anotaram a data da maratona Fiz o programa que segue. porém está dando erro, aceito novos scripts porém tenho que saber o que aconteceu com o meu para não fazer errado novamente. #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ char entrada[100]; char entradaespelhada[100]; char metade1[50]; char metade2[50]; char metade2espelhada[50]; int tam=0; int metade=0; printf("Digite uma frase ou palavra para saber se ela e' um palindromo: "); scanf("%s",entrada); for (int x=0;x<99;x++){ /*Calculo para saber a metade da string entrada*/ if (entrada[x]!='\0'){ // enquanto não encontrar o final da string soma mais um. -> ONDE DA ERRO ! tam=x; } } if (tam%2==0){ metade=tam/2; } else{ metade=(tam-1)/2; } for(int x=tam;x>0;x--){ /*Populando entrada espelhada para metade 2*/ entradaespelhada[x]=entrada[tam]; } for(int x=0;x<metade;x++){ /*Populando primeira metade*/ metade1[x]=entrada[x]; } for (int x=0;x<metade;x++){ /*Populando segunda metade*/ metade2[x]=entradaespelhada[x]; } if (strcmp(metade1,metade2)==0){ /*Comparando se a primeira e a segunda metade sao igual*/ printf("A entrada digitada e' palindromo"); } else{ printf("A entrada digitada nao e' palindromo"); } printf("\nEntrada: %s \nEntrada espelhada:%s \nmetade1: %s \nmetade2:%s \nmetade espelhada:%s \ntamanho:%i \nmetade:%i",entrada,entradaespelhada,metade1,metade2,metade2espelhada,tam,metade); }
  17. Dá uma olhada nesse tópico. Existe varias soluções para seu problema. https://www.clubedohardware.com.br/forums/topic/1300871-converter-inteiros-em-binarios/?tab=comments#comment-7118955
  18. Eu ainda pensei em fazer algo parecido com isso porém via função, só que me deu preguiça , eu teria que separar em funções e depois ir ligando a variável de uma função a outra. Alem do mais como não tenho muita pratica as vezes eu erro a sintaxe e tenho que ficar quebrando a cabeça com coisas simples. Obrigado !
  19. Esse é um bubble sort...Só não estou entendendo porque o while esta deixando sair antes da hora, somente o primeiro indice da string e reordenado se estiver em qualquer posição.
  20. Acho que me expressei errado. Eu quero que um programa leia 10 strings, as strings são compostas de 2 partes, uma inteira e outra de caracteres (EX: 19-Carla). Em seguida o programa vai ordenar pelo numero. E depois imprime tudo. Vou colar o enunciado aqui: Escreva um programa que leia a idade e o primeiro nome de 10 pessoas. Seu programa deve terminar quando uma idade negativa for digitada. Ao terminar, seu programa deve escrever o nome e a idade das pessoas mais jovens e mais velhas.
  21. Aquele problema eu resolvi. Agora estou com um problema de logica... O algoritmo tem dificuldade em ordenar múltiplos numeros consecutivos. Não sei como resolver...E só consegui pegar os números com strings com o traço(-) no lugar do espaço. Segue: #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ char idade_nome[10][30]; char string_op[30]; char conversor[4]; int variavel_op; int idade[10]; // Inserindo dados for(int x=0;x<10;x++){ printf("Digite idade-nome:"); scanf("%s",&idade_nome[x][0]); fflush(stdin); } //Separando numeros para calculo for(int x=0;x<10;x++){ strncpy(conversor,idade_nome[x],2); idade[x]=atoi(conversor); } /* enquanto o idade atual atual for maior que a idade seguinte, pega o valor da variavel atual e coloca em uma variavel provisoria, a variavel atual recebe o valor da variavel seguinte, a variavel a frente recebe o valor da atual */ for(int x=0;x<10;x++){ while(idade[x]>idade[x+1]){ variavel_op=idade[x]; strcpy(string_op,idade_nome[x]); idade[x]=idade[x+1]; strcpy(idade_nome[x],idade_nome[x+1]); idade[x+1]=variavel_op; strcpy(idade_nome[x+1],string_op); } } for(int x=0;x<10;x++){ printf("%s\n",idade_nome[x]); } }
  22. Solucionei o problema. Aparentemente foi falta de atenção. Já posto correção !
  23. Boa tarde. Sou novato em programação. Estou recebendo o erro, da função Atoi(). Não compreendo direito o que está acontecendo. O exercício pede: Receba 10 strings com idade e nome de pessoas, e ordenar pela idade... Aceito outros scripts mas quero saber porque o meu não funciona e como resolvo. Segue: #include<stdio.h> #include<stdlib.h> #include<string.h> void main(void){ char idade_nome[10][30]; char string_op[30]; char conversor[4]; int variavel_op; int idade[10]; // Inserindo dados for(int x=0;x<10;x++){ printf("Digite idade_nome"); scanf("%s",&idade_nome); fflush(stdin); } //Separando numeros para calculo for(int x=0;x<10;x++){ strncpy(conversor,idade_nome[x][0],3); idade=atoi(conversor); /*------------->> ONDE DA O ERRO*/ printf("As respectivas idades sao: %i ",idade); } /* enquanto o idade atual atual for maior que a idade seguinte, pega o valor da variavel atual e coloca em uma variavel provisoria, a variavel atual recebe o valor da variavel seguinte, a variavel a frente recebe o valor da atual */ for(int x=0;x<10;x++){ while(idade[x]>idade[x+1]){ variavel_op=idade[x]; strcpy(string_op,idade_nome[x]); idade[x]=idade[x+1]; strcpy(idade_nome[x],idade_nome[x+1]); idade[x+1]=variavel_op; strcpy(idade_nome[x+1],string_op); } } }
  24. Não entendi o que aconteceu ! Poderia explicar?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!