int main() { Student stu[10000]; int i; for(i=0;i<10000;i++) { stu[i].num=0; } int type; do { readdate(stu); printf("\n请输入序号选择相应功能\n"); printf("******** 1.显示基本信息 ********\n"); printf("******** 2.基本信息管理 ********\n"); printf("******** 3.学生成绩管理 ********\n"); printf("******** 4.考试成绩统计 ********\n"); printf("******** 5.根据条件查询 ********\n"); printf("******** 0.退出 ********\n"); scanf("%d",&type); switch(type) { case 0:printf("");break; case 1:printbase(stu);break; case 2:managebase(stu);break; case 3:managescore(stu);break; case 4:rankscore(stu);break; case 5:checkbase(stu);break; default:printf("没有该选项,请重输");break; } }while(type!=0); return 0; }
void mktranstables(state_t *state) { transition_t *transitions; int base; base = 0; while (base < state_count) { if (checkbase(state, base)) break; base += 1; } assert(base < state_count); basetbl[state->num] = base; transitions = state->transitions; while (transitions) { assert(checktbl[basetbl[state->num] + map[transitions->value]] == -1); checktbl[basetbl[state->num] + map[transitions->value]] = state->num; nexttbl[basetbl[state->num] + map[transitions->value]] = transitions->state->num; transitions = transitions->next; } transitions = state->transitions; while (transitions) { mktranstables(transitions->state); transitions = transitions->next; } }
int ft_atoi_base(char *str, char *base) { if (!checkbase(base)) return (-506); if (!find(base, '-') && !find(base, '+')) return (-505); if (ft_strlen(str) == 0) return (-504); if(ft_strlen(base) <= 1) return (-503); if(!checkstr(str, base)) return (-502); return ft_atoi_base_r(str, base); }
int main(int argc, char *argv[]) { if(argc!=4){ printf("Wrong number of arguments\n"); return 0; } char *s; int q,base1,base2; base1 = atoi(argv[1]); base2 = atoi(argv[2]); s = argv[3]; char temp; if (checkbase(s,base1)) { q=base10(s,base1); ConvertToBase(q,base2); } else printf("Output: 0\n"); return 0; }