1. 菜单功能
2. 添加学生信息功能
3. 学生姓名列表
4. 所有学生详细列表功能
5. 按姓名查找功能
6. 按年龄查找功能
7. 按姓别查找功能
8. 按身高查找功能
9. 删除学生信息功能
10. 退出功能
1./*
2. *1. 菜单功能
3. *2. 添加学生信息功能 4. *3. 学生姓名列表
5. *4. 所有学生详细列表功能 6. *5. 按姓名查找功能 7. *6. 按年龄查找功能 8. *7. 按姓别查找功能 9. *8. 按身高查找功能 10. *9. 删除学生信息功能 11. *10. 退出功能 12. * 13. * */ 14.
15.#include
20./*定义一个学生信息结构体*/ 21.struct student 22.{
23. char name[20]; 24. int age;
25. int sex; 26. int height; 27.}; 28.
29./*定义全局变量*/ 30.int i;
31.struct student stu[100]; 32. 33.
34./*添加用户*/
35.struct student addstu(void) 36.{
37. struct student stu; 38. char name[20]; 39.
40. printf(\
41. printf(\ 42.
43. printf(\ 44.
45. printf(\ 46. scanf(\ 47. strcpy(stu.name, name); 48.
49. printf(\ 50. scanf(\ 51.
52. printf(\ 53. scanf(\ 54.
55. printf(\ 56. scanf(\ 57.
58. printf(\ 59.
60. return stu; 61.} 62.
63./*显示用户信息*/
64.void showstu(struct student stu) 65.{
66. printf(\ 67.
68. printf(\
69. printf(\
70. printf(\ 71. printf(\ 72.
73. printf(\ 74. 75.} 76. 77.
78./*删除用户 79. *
80. *说明:
81. *依用户名来查找需要删除的用户, 82. *找到相对应的用户信息后,
83. *将它后面一位学生的信息赋值给它, 84. *依次将后面的的学生信息都向前移一位, 85. *这样就算是删掉了一位用户 86. * */
87.void delstu() 88.{
89. char name[20]; 90. int j,k,t; 91. t=0; 92. 93.
94. printf(\ 95. scanf(\ 96.
97. for(j=0;j
99. if(!strcmp(stu[j].name, name)) 100. {
101. if(j==i) //如果删除的是最后一次,直接将i减一就行 102. {
103. i--; 104. t++; 105. } 106. else 107. {
108. for(k=j;k 110. stu[k] = stu[k+1]; /*如果删除的不是最后一次,依次将后面用户赋值给前一次用户*/ 111. } 112. t++; 113. i--; 114. } 115. } 116. } 117. if(t==0) 118. { 119. printf(\ 120. printf(\ 121. printf(\ 122. } 123. else 124. { 125. printf(\ 126. printf(\删除成功!\\n\ 127. printf(\ 128. } 129.} 130. 131. 132./*依姓名查找学生信息*/ 133.void selbyname() 134.{ 135. char name[20]; 136. int j,t; 137. t=0; 138. 139. printf(\ 140. scanf(\ 141. 142. for(j=0;j 144. if(!strcmp(stu[j].name, name))/*strcmp()比较后,如果相同返回0,而我们需要的是1,所以取反*/ 145. { 146. showstu(stu[j]); 147. t++; 148. } 149. } 150. 151. if(t==0) 152. { 153. printf(\ 154. printf(\ 155. printf(\ 156. } 157.} 158. 159./*依年龄查找学生信息*/ 160.void selbyage() 161.{ 162. int j,k,t,n; 163. n=0; 164. 165. printf(\ 166. scanf(\ 167. 168. printf(\ 169. scanf(\ 170. 171. for(t=0;t 173. if(stu[t].age > k && stu[t].age < j) 174. { 175. showstu(stu[t]); 176. n++; 177. } 178. } 179. 180. if(n==0) 181. { 182. printf(\ 183. printf(\ 184. printf(\ 185. } 186.} 187. 188. 189./*依姓别查找学生信息*/ 190.void selbysex() 191.{ 192. int j,k,n; 193. n=0; 194. printf(\ 195. scanf(\ 196. 197. for(k=0;k