t;length].stuScore <0 || p_seq->elem[p_seq->length].stuScore > 100)
299 {
300 printf("The score is percentage system\n");
301 sleep(1);
302 system("cls");
303 }
304 else
305 {
306 break;
307 }
308 }
309 p_seq->length++;
310 }
311
312
313 void NodeDelete(SqList *p_seq, int locate)
314 {
315 for (int i=locate; i<=p_seq->length; i++)
316 {
317 memccpy((p_seq->elem[i-1]).stuID, (p_seq->elem[i]).stuID, '\0', ID_SIZE);
318 memccpy((p_seq->elem[i-1]).stuName, (p_seq->elem[i]).stuName, '\0', NAME_SIZE);
319 (p_seq->elem[i-1]).stuScore = (p_seq->elem[i]).stuScore;
320 }
321 p_seq->length--;
322 }
323
324
325 stuPtr search(stuPtr p, size_t len, char *target)
326 {
327 for (unsigned i=0; i<len; i++)
328 {
329 if (strcmp(p[i].stuID, target) == 0)
330 {
331 return (p+i);
332 }
333 else if (strcmp(p[i].stuName, target)== 0)
334 {
335 return (p+i);
336 }
337 }
338 return NULL;
339 }
340
341
342 void print(StuData *elem, size_t len)
343 {
344 printf(" ID Name Score\n");
345 printf(" -----------------------------------------------\n");
346 if (len <= 0)
347 {
348 printf("\a\n\t\tWarning: NO data exist!\n");
349 }
350 else
351 {
352 unsigned count = 0;
353 for (unsigned i=0; i<len; i++)
354 {
355 printf("%3d-", ++count);
356 printf(" %s\t\t", elem[i].stuID);
357 printf(" %s\t\t", elem[i].stuName);
358 printf(" %.2lf\n", elem[i].stuScore);
359 }
360 printf(" num: %lu\n", len);
361 }
362 printf(" -----------------------------------------------\n");
363 }
364
365 void save(FILE *stream, stuPtr p, size_t len)
366 {
367 if (len <= 0)
368 {
369 printf("\a\n\n\t\tSorry: No data exist!\n");
370 sleep(2);
371 return;
372 }
373 else
374 {
375 unsigned count = 0;
376 fprintf(stream, " ID Name Score\n");
377 fprintf(stream, " -------------------------------------------------\n");
378 for (unsigned i=0; i<len; i++)
379 {
380 fprintf(stream, "%3d-", ++count);
381 fprintf(stream, " %s\t\t", p[i].stuID);
382 fprintf(stream, " %s\t\t", p[i].stuName);
383 fprintf(stream, " %.2lf\n", p[i].stuScore);
384 }
385 fprintf(stream,"\n -------------------------------------------------\n");
386 printf("\a\n\n\tSave successfully!\n\n");
387 }
388 }
|