Advertisement
asiffff

p1

Feb 19th, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.52 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 Teacher ID:\n");
  126. scanf("%d",&new_node->id);
  127. printf("\nEnter Teacher 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. break;
  225. }
  226. case 4:
  227. {
  228. create1();
  229. break;
  230. }
  231. case 5:
  232. {
  233. dis1();
  234. getch();
  235. system("cls");
  236. break;
  237. }
  238. case 6:
  239. {
  240. printf("Enter Id:\n");
  241. int k;
  242. scanf("%d",&k);
  243. int pos1 = search1(k);
  244. if(pos1==-1)
  245. {
  246. printf("\n Not Found\n");
  247. }
  248. else
  249. {
  250. struct teacher *c;
  251. c=start1;
  252. int j;
  253. for(j=0; j<pos1-1; j++)
  254. {
  255. c=c->next;
  256. }
  257. printf("\nTeacher ID:%d\n",c->id);
  258. printf("Your group:%s\n",c->group);
  259. printf("Teacher Name:%s\n",c->name);
  260. printf("Teacher Gender:%s\n",c->gender);
  261. printf("Teacher Phone number:%ld\n",c->phnum);
  262. getch();
  263. system("cls");
  264.  
  265. }
  266. break;
  267. }
  268. }
  269. }
  270. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement