Guest User

Untitled

a guest
Nov 27th, 2016
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.44 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>
  4.  
  5. typedef struct{
  6.     char* name;
  7.     char* mean;
  8. } Words;
  9.  
  10. typedef struct{
  11.     Words* word;
  12.     int size;
  13. } Dictionary;
  14.  
  15. Dictionary createNewDictionary();
  16. Words createNewWord();
  17. void addNewWord(Words newword, Dictionary *dic);
  18.  
  19. Dictionary createNewDictionary(){
  20.     Dictionary dic;
  21.     dic.size = 0;
  22.     dic.word = (Words*)malloc(dic.size*sizeof(Words));
  23.     return dic;
  24. }
  25.  
  26. Words createNewWord(){
  27.     Words newword;
  28.     newword.name = (char*)malloc(30*sizeof(char));
  29.     newword.mean = (char*)malloc(30*sizeof(char));
  30.     printf("============================\n");
  31.     printf("Enter word: ");
  32.     scanf("%s", newword.name);
  33.     fflush(stdin);
  34.     printf("\nEnter meaning: ");
  35.     scanf("%s", newword.mean);
  36.     return newword;
  37. }
  38.  
  39. void addNewWord(Words newword, Dictionary *dic){
  40.     dic->size++;
  41.     dic->word = (Words*)realloc(dic->word, dic->size*sizeof(Words));
  42.     dic->word[dic->size-1].name = (char*)malloc(30*sizeof(char));  //added
  43.     dic->word[dic->size-1].mean = (char*)malloc(30*sizeof(char));  //added
  44.     strcpy(dic->word[dic->size-1].name, newword.name);
  45.     strcpy(dic->word[dic->size-1].mean, newword.mean);
  46. }
  47.  
  48. int main(){
  49.     Dictionary d = createNewDictionary();
  50.     for (int i=0;i<3;i++){
  51.         addNewWord(createNewWord(), &d);
  52.     }
  53.     for (int i=0;i<3;i++){
  54.         printf("%s %s\n", d.word[i].name, d.word[i].mean);
  55.     }
  56.     return 0;
  57. }
Add Comment
Please, Sign In to add comment