File:
[LON-CAPA] /
capa /
capa51 /
Historic /
student_stats.c
Revision
1.3:
download - view:
text,
annotated -
select for diffs
Mon Aug 7 20:47:29 2000 UTC (24 years, 1 month ago) by
albertel
Branches:
MAIN
CVS tags:
version_2_9_X,
version_2_9_99_0,
version_2_9_1,
version_2_9_0,
version_2_8_X,
version_2_8_99_1,
version_2_8_99_0,
version_2_8_2,
version_2_8_1,
version_2_8_0,
version_2_7_X,
version_2_7_99_1,
version_2_7_99_0,
version_2_7_1,
version_2_7_0,
version_2_6_X,
version_2_6_99_1,
version_2_6_99_0,
version_2_6_3,
version_2_6_2,
version_2_6_1,
version_2_6_0,
version_2_5_X,
version_2_5_99_1,
version_2_5_99_0,
version_2_5_2,
version_2_5_1,
version_2_5_0,
version_2_4_X,
version_2_4_99_0,
version_2_4_2,
version_2_4_1,
version_2_4_0,
version_2_3_X,
version_2_3_99_0,
version_2_3_2,
version_2_3_1,
version_2_3_0,
version_2_2_X,
version_2_2_99_1,
version_2_2_99_0,
version_2_2_2,
version_2_2_1,
version_2_2_0,
version_2_1_X,
version_2_1_99_3,
version_2_1_99_2,
version_2_1_99_1,
version_2_1_99_0,
version_2_1_3,
version_2_1_2,
version_2_1_1,
version_2_1_0,
version_2_12_X,
version_2_11_X,
version_2_11_5_msu,
version_2_11_5,
version_2_11_4_uiuc,
version_2_11_4_msu,
version_2_11_4,
version_2_11_3_uiuc,
version_2_11_3_msu,
version_2_11_3,
version_2_11_2_uiuc,
version_2_11_2_msu,
version_2_11_2_educog,
version_2_11_2,
version_2_11_1,
version_2_11_0_RC3,
version_2_11_0_RC2,
version_2_11_0_RC1,
version_2_11_0,
version_2_10_X,
version_2_10_1,
version_2_10_0_RC2,
version_2_10_0_RC1,
version_2_10_0,
version_2_0_X,
version_2_0_99_1,
version_2_0_2,
version_2_0_1,
version_2_0_0,
version_1_99_3,
version_1_99_2,
version_1_99_1_tmcc,
version_1_99_1,
version_1_99_0_tmcc,
version_1_99_0,
version_1_3_X,
version_1_3_3,
version_1_3_2,
version_1_3_1,
version_1_3_0,
version_1_2_X,
version_1_2_99_1,
version_1_2_99_0,
version_1_2_1,
version_1_2_0,
version_1_1_X,
version_1_1_99_5,
version_1_1_99_4,
version_1_1_99_3,
version_1_1_99_2,
version_1_1_99_1,
version_1_1_99_0,
version_1_1_3,
version_1_1_2,
version_1_1_1,
version_1_1_0,
version_1_0_99_3,
version_1_0_99_2,
version_1_0_99_1,
version_1_0_99,
version_1_0_3,
version_1_0_2,
version_1_0_1,
version_1_0_0,
version_0_99_5,
version_0_99_4,
version_0_99_3,
version_0_99_2,
version_0_99_1,
version_0_99_0,
version_0_6_2,
version_0_6,
version_0_5_1,
version_0_5,
version_0_4,
stable_2002_spring,
stable_2002_july,
stable_2002_april,
stable_2001_fall,
release_5-1-3,
loncapaMITrelate_1,
language_hyphenation_merge,
language_hyphenation,
conference_2003,
bz6209-base,
bz6209,
STABLE,
HEAD,
GCI_3,
GCI_2,
GCI_1,
CAPA_5-1-6,
CAPA_5-1-5,
CAPA_5-1-4_RC1,
BZ4492-merge,
BZ4492-feature_horizontal_radioresponse,
BZ4492-feature_Support_horizontal_radioresponse,
BZ4492-Support_horizontal_radioresponse
- fixed license notices the reference the GNU GPL rather than the GNU LGPL
1: /* some statistics generation
2: Copyright (C) 1992-2000 Michigan State University
3:
4: The CAPA system is free software; you can redistribute it and/or
5: modify it under the terms of the GNU General Public License as
6: published by the Free Software Foundation; either version 2 of the
7: License, or (at your option) any later version.
8:
9: The CAPA system is distributed in the hope that it will be useful,
10: but WITHOUT ANY WARRANTY; without even the implied warranty of
11: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12: General Public License for more details.
13:
14: You should have received a copy of the GNU General Public
15: License along with the CAPA system; see the file COPYING. If not,
16: write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17: Boston, MA 02111-1307, USA.
18:
19: As a special exception, you have permission to link this program
20: with the TtH/TtM library and distribute executables, as long as you
21: follow the requirements of the GNU GPL in regard to all of the
22: software in the executable aside from TtH/TtM.
23: */
24:
25: #ifdef NeXT
26: #include <stdlib.h>
27: #include <bsd/curses.h>
28: #else
29: #include <malloc.h>
30: double atof();
31: #include <curses.h>
32: #endif
33:
34: #include <stdio.h>
35: #include <ctype.h>
36: #include <sys/types.h>
37: #include <signal.h>
38: #include <math.h>
39: #include <string.h>
40:
41: #include "capaCommon.h"
42:
43:
44: main (int argc, char **argv)
45: {
46:
47: T_student *head_p, *c_p;
48: T_header a_header;
49: T_entry a_entry;
50: int student_cnt, set_idx;
51: int sec, set_scores, set_valids;
52: char *answers_p, wgt[128], pcr[128];
53: int MaxSec;
54: int MaxSet=9;
55: int total_scores, total_set_valids;
56: int count;
57: int *cnt_arry;
58: int inputNotOK=1;
59: char path[FILE_NAME_LENGTH];
60: char filename[FILE_NAME_LENGTH];
61: /* char classlist[FILE_NAME_LENGTH];
62: char studentclass[FILE_NAME_LENGTH]; */
63: char *classlist;
64: char *studentclass;
65: char *progname;
66:
67: if(argc>1) {
68: sec = atol(argv[2]);
69: } else {
70: sec =1;
71: }
72:
73: while ( inputNotOK ) {
74: puts("Enter the ABSOLUTE path of class");
75: scanf("%s", path);
76: if( access(path, F_OK) == -1 ) {
77: } else {
78: sprintf(filename,"%s/records",path);
79: if( access(filename, F_OK) == -1 ) {
80: puts("There isn't a records dir in this CLASS directory");
81: puts("Please Specify another calss");
82: } else {
83: inputNotOK = 0;
84: }
85: }
86: }
87:
88: chdir(path);
89:
90:
91: for (sec=1;sec<30; sec++){
92: if ((count=capa_get_section(&head_p,sec))>0)
93: MaxSec=sec;
94: }
95:
96: for (sec=1;sec<MaxSec;sec++){
97: student_cnt = capa_sorted_section(&head_p, sec, 2);
98: printf("Section #%d Set ",sec);
99: for (set_idx=1; set_idx<MaxSet; set_idx++) {
100: printf(" %2d ",set_idx);
101: }
102: printf(" Total\n");
103: for (c_p=head_p ; c_p ; c_p=c_p->s_next){
104: total_scores=0;
105: total_set_valids=0;
106: printf("%s (%s)",c_p->s_nm,c_p->s_sn);
107: for (set_idx=1; set_idx<MaxSet; set_idx++) {
108: set_scores = capa_get_score(c_p->s_sn,set_idx,&set_valids,&answers_p);
109: if (set_scores == -1) { /* never login to do assignments */
110: printf(" -",set_valids);
111: total_set_valids=total_set_valids+set_valids;
112: } else {
113: printf(" %2d",set_scores,set_valids);
114: total_scores=total_scores+set_scores;
115: total_set_valids=total_set_valids+set_valids;
116: }
117: capa_mfree(answers_p);
118: }
119: printf(" %3d/%3d \n",total_scores,total_set_valids);
120: }
121:
122: printf("Total students = %d\n\n\n",student_cnt);
123: free_students(head_p);
124: }
125:
126: }
127:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>