Advertisement
asiffff

Project

Feb 19th, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.51 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <windows.h>
  4. #include <conio.h>
  5. struct student
  6. {
  7. int id;
  8. int cla;
  9. char group[20];
  10. char name[20];
  11. char gender[20];
  12. struct student *next,*prev;
  13. }*start=NULL,*end=NULL,*current;
  14.  
  15. void create()
  16. {
  17. if(start==NULL && end==NULL)
  18. {
  19. struct student *new_node;
  20. new_node=(struct student*)malloc(1*sizeof(struct student));
  21. printf("\nEnter Name:\n");
  22. scanf("%s",&new_node->name);
  23. printf("Enter Class:");
  24. scanf("%d",&new_node->cla);
  25. printf("Enter ID:\n");
  26. scanf("%d",&new_node->id);
  27. printf("Enter Group:\n");
  28. scanf("%s",&new_node->group);
  29. printf("Enter Gender:\n");
  30. scanf("%s",&new_node->gender);
  31. new_node->next=NULL;
  32. new_node->prev=NULL;
  33. start=new_node;
  34. end=new_node;
  35. current=new_node;
  36. system("cls");
  37. }
  38. else
  39. {
  40. struct student *new_node;
  41. new_node=(struct student*)malloc(1*sizeof(struct student));
  42. printf("\nEnter Name:\n");
  43. scanf("%s",&new_node->name);
  44. printf("Enter Class:");
  45. scanf("%d",&new_node->cla);
  46. printf("Enter ID:");
  47. scanf("%d",&new_node->id);
  48. printf("Enter Group:\n");
  49. scanf("%s",&new_node->group);
  50. printf("Enter Gender:\n");
  51. scanf("%s",&new_node->gender);
  52. new_node->next=NULL;
  53. new_node->prev=NULL;
  54. current->next=new_node;
  55. new_node->prev=current;
  56. end=new_node;
  57. current=new_node;
  58. system("cls");
  59. }
  60. }
  61. void dis()
  62. {
  63. struct student *c;
  64. c=start;
  65. while(c!=NULL)
  66. {
  67. printf("\n Name : %s ID : %d\n Gender : %s Group : %s\n",c->name,c->id,c->gender,c->group);
  68. c=c->next;
  69. }
  70. }
  71. int search(int a)
  72. {
  73. struct student *c;
  74. c=start;
  75. int po=0;
  76. while(c!=NULL)
  77. {
  78. po++;
  79. if(c->id==a)
  80. {
  81. return po;
  82. }
  83. c=c->next;
  84. }
  85. return -1;
  86. }
  87. struct teacher
  88. {
  89. int id;
  90. char name[20];
  91. char gender[20];
  92. char group[20];
  93. long int phnum;
  94. struct teacher *next,*prev;
  95.  
  96. }*start1=NULL,*end1=NULL,*current1;
  97. void create1()
  98. {
  99. struct teacher *new_node;
  100. if(start1==NULL && end1==NULL)
  101. {
  102. new_node=(struct teacher*)malloc(1*sizeof(struct teacher));
  103. printf("\nEnter the number of teacher id:\n");
  104. scanf("%d",&new_node->id);
  105. printf("\nEnter your group:\n");
  106. scanf("%s",&new_node->group);
  107. printf("\nEnter the teacher name:\n");
  108. scanf("%s",&new_node->name);
  109. printf("\nEnter the teacher gender:\n");
  110. scanf("%s",&new_node->gender);
  111. printf("\nEnter the teacher phone number:\n");
  112. scanf("%ld",&new_node->phnum);
  113. new_node->next=NULL;
  114. new_node->prev=NULL;
  115.  
  116. start1=new_node;
  117. end1=new_node;
  118. current1=new_node;
  119. system("cls");
  120.  
  121. }
  122. else
  123. {
  124. new_node=(struct teacher*)malloc(1*sizeof(struct teacher));
  125. printf("\nEnter the number of teacher id:\n");
  126. scanf("%d",&new_node->id);
  127. printf("\nEnter your group:\n");
  128. scanf("%s",&new_node->group);
  129. printf("\nEnter the teacher name:\n");
  130. scanf("%s",&new_node->name);
  131. printf("\nEnter the teacher gender:\n");
  132. scanf("%s",&new_node->gender);
  133. printf("\nEnter the teacher phone number:\n");
  134. scanf("%ld",&new_node->phnum);
  135. new_node->next=NULL;
  136. new_node->prev=NULL;
  137.  
  138. current1->next=new_node;
  139. new_node->prev=current1;
  140. current1=new_node;
  141. end1=new_node;
  142. system("cls");
  143. }
  144.  
  145.  
  146.  
  147. }
  148. int search1(int a)
  149. {
  150. struct teacher *c;
  151. c=start1;
  152. int po=0;
  153. while(c!=NULL)
  154. {
  155. po++;
  156. if(c->id==a)
  157. {
  158. return po;
  159. }
  160. c=c->next;
  161. }
  162. return -1;
  163. }
  164. void dis1()
  165. {
  166. struct teacher *c;
  167. c=start1;
  168. while(c!=NULL)
  169. {
  170. printf("\nTeacher ID:%d\n",c->id);
  171. printf("Your group:%s\n",c->group);
  172. printf("Teacher Name:%s\n",c->name);
  173. printf("Teacher Gender:%s\n",c->gender);
  174. printf("Teacher Phone number:%ld\n",c->phnum);
  175. c=c->next;
  176. }
  177. }
  178.  
  179. int main()
  180. {
  181. int x;
  182. while(1)
  183. {
  184. printf("1.Enter Student Details.\n2.View All Student Details\n3.Search Student Details.\n");
  185. printf("4.Enter Teacher Details.\n5.View All Teacher Details\n6.Search Teacher Details.\n");
  186. scanf("%d",&x);
  187. switch(x)
  188. {
  189. case 1:
  190. {
  191. create();
  192. break;
  193. }
  194. case 2:
  195. {
  196. dis();
  197. getch();
  198. system("cls");
  199. break;
  200. }
  201. case 3:
  202. {
  203. printf("Enter Id:\n");
  204. int n;
  205. scanf("%d",&n);
  206. int pos = search(n);
  207. if(pos==-1)
  208. {
  209. printf("\n Not Found\n");
  210. }
  211. else
  212. {
  213. struct student *b;
  214. b=start;
  215. int j;
  216. for(j=0; j<pos-1; j++)
  217. {
  218. b=b->next;
  219. }
  220. printf("\n Name:%s ID:%d\n Gender:%s Group:%s\n",b->name,b->id,b->gender,b->group);
  221. getch();
  222. system("cls");
  223. }
  224. }
  225. case 4:
  226. {
  227. create1();
  228. break;
  229. }
  230. case 5:
  231. {
  232. dis1();
  233. getch();
  234. system("cls");
  235. break;
  236. }
  237. case 6:
  238. {
  239. printf("Enter Id:\n");
  240. int k;
  241. scanf("%d",&k);
  242. int pos1 = search1(k);
  243. if(pos1==-1)
  244. {
  245. printf("\n Not Found\n");
  246. }
  247. else
  248. {
  249. struct teacher *c;
  250. c=start1;
  251. int j;
  252. for(j=0; j<pos1-1; j++)
  253. {
  254. c=c->next;
  255. }
  256. printf("\nTeacher ID:%d\n",c->id);
  257. printf("Your group:%s\n",c->group);
  258. printf("Teacher Name:%s\n",c->name);
  259. printf("Teacher Gender:%s\n",c->gender);
  260. printf("Teacher Phone number:%ld\n",c->phnum);
  261. getch();
  262. system("cls");
  263.  
  264. }
  265. break;
  266. }
  267. }
  268. }
  269. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement