fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stdbool.h> //lider com variaveis booleans
  4. #define NUM_DEF 7
  5.  
  6. struct dicionario
  7. {
  8. char palavra[20];
  9. char definicao[50];
  10. };
  11.  
  12. bool compString( const char palavra1[], const char palavra2[])
  13. {
  14. //confere os caracteres das palavras
  15. int i=0;
  16. while (palavra1[i]==palavra2[i] && palavra1[i] != '\0' &&
  17. palavra2[i] != '\0')
  18. {
  19. ++i;
  20.  
  21. }
  22. if (palavra1[i]=='\0'&&palavra2[i]=='\0')
  23. {
  24. return true;
  25. }
  26. else
  27. {
  28. return false;
  29. }
  30. }
  31.  
  32. int procString (const struct dicionario lingua[],const char procurar[], int numPalavra) //busca a palavra no dicionario
  33. {
  34. int i=0;
  35. for (i=0;i < numPalavra; ++i){
  36. if(compString(procurar,lingua[i].palavra))
  37. {
  38. return i;
  39. }
  40. }
  41.  
  42. return -1;
  43. }
  44.  
  45.  
  46. int main(void)
  47. {
  48.  
  49. char palavra[20];
  50. int resultPesq;
  51.  
  52. const struct dicionario portu[NUM_DEF] =
  53. {
  54. {"pao","comida de farinha"},
  55. {"feijao","comida brasileira"},
  56. {"tropeiro","tipo de feijao"},
  57. {"queijo","comida de minas"},
  58. {"macarrao","comida de vo"},
  59. {"mortadela","comida de carne"},
  60. {"pizza","comida da italia"}
  61. };
  62.  
  63. printf("Digite uma palavra:\n");
  64. scanf("%s",palavra);
  65.  
  66. resultPesq = procString(portu,palavra,NUM_DEF);
  67.  
  68. if (resultPesq != -1)
  69. {
  70. printf("%s\n",portu[resultPesq].definicao);
  71. }
  72. else
  73. {
  74. printf("Palavra n encontrada");
  75. }
  76.  
  77. return 0;
  78. }
  79.  
Success #stdin #stdout 0s 9432KB
stdin
ioasjdoias
stdout
Digite uma palavra:
Palavra n encontrada