Airline Reservation System In C. kindly help me in debugging my code it currenlt
ID: 3725830 • Letter: A
Question
Airline Reservation System In C.
kindly help me in debugging my code it currenlty keeps on producing this error "In Function : reservation : error : a label can only be part of a statement and a declaration is not a statement".
Also the error is repeated on function 'Seat availability' and 'cancelation'
It is of an airline system but has problems with the labels. I cant get it to work
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
#define ENTER 13
#define BKSPC 8
void information();
void reservation();
void printticket(char [],char [],int,char,int,float);
void schedule();
void seat_avaliblity(char,int);
void seat_check();
void information_specfic(int);
int amount_per_person(char,int,int);
void cancellation();
main(){
system("color C");
information();
}
void information(){
char ch,pass[10];
char emirates[10],choice;
int i=0,j,n=1,see=0;
printf(" |** --------------------------- **| ");
printf(" |** *************************** **| ");
printf(" |** **| ");
printf(" |** **| ");
printf(" |** --------------------------- **| ");
printf(" |** WELCOME TO EMIRATES AIRLINE **| ");
printf(" |** --------------------------- **| ");
printf(" |** **| ");
printf(" |** **| ");
printf(" |** *************************** **| ");
printf(" |** --------------------------- **| ");
again:
printf(" REQUIRED ADMIN PASSWORD:");
i=0;
while(1)
{
ch = getch();
pass[i] = ch;
if(ch==BKSPC)
{
continue;
}
else if (ch==ENTER)
{
break;
}
printf("*");
i++;
}
pass[i] = '';
system("cls");
printf(" Access Granted!!!!");
printf(" DEAR CUSTOMER PLEASE TELL WHAT YOU WANT TO KNOW: ");
start:
// system("cls");
printf(" 1.Reserve a Ticket");
printf(" 2.View all Planes & Fares");
printf(" 3.Cancel Reservation");
printf(" 4.Seat Availiblity");
printf(" 5.Exit :");
scanf(" %c",&choice);
switch(choice){
case '1':
reservation();
goto start;
case '2':
schedule();
char p;
printf(" You to goto Main Index(y/n) :");
scanf(" %c",&p);
if(p=='y'){
goto start;
}else if(p == 'n')break;
case '3':
cancellation();
printf(" Press any to return to Main Menu");
getch();
goto start;
case '4':
seat_check();
system("cls");
printf(" Enter the any letter to return back in main :");
getch();
goto start;
break;
case '5':
printf(" Thankyou for visiting our system");
return;
default:
printf(" wrong choice");
goto start;
break;
}
}
void reservation(){
char telephone[15],name[50],sirname[50],CNIC[100],planee_code[100];
int seat_num,fares;
FILE *fp;
fp=fopen("information.txt","a");
system("cls");
printf(" ENTER CUSTOMER PERSNAL INFORAMTION:");
printf(" Full Name :");
fflush(stdin);
gets(name);
printf(" Sir Name :");
fflush(stdin);
gets(sirname);
printf(" CNIC # :");
fflush(stdin);
gets(CNIC);
printf(" Contact Number :");
fflush(stdin);
gets(telephone);
start2:
schedule();
start1:
printf(" Plane Code :");
scanf("%s",&planee_code);
int plane_code = atoi(planee_code);
if(plane_code >= 1001 && plane_code <=1020){
// printf(" Enter number of Seat you want to avail:");
// scanf("%d",&seat_num);
char opt;
printf(" Press 1 for business & 2 for economy: ");
scanf(" %c",&opt);
int seats;
printf(" Enter the number of seats you want :");
scanf("%d",&seats);
seat_avaliblity(opt,seats);
if(seats==0){
printf(" Press any key to check the schedule for flights:");
getch();
goto start2;
}
int fares;
fares=amount_per_person(opt,plane_code,seats);
printticket(name,CNIC,plane_code,opt,seats,fares);
}else{
printf(" Plane Code is Invalid Try again :");
goto start1;
}
printf(" To Confirm the Ticket press 1 or any key for not confirm :");
start3:
char confirm;
scanf(" %c",&confirm);
if(confirm == '1')
{
fprintf(fp,"%s %d %d ",name,plane_code,fares);
printf(" Reservation Done Press any key to go back to Main menu :");
}
else
{
if(confirm!='1'){
printf(" Reservation Not Done! Press any key to go back to Main menu :");
}
else
{
printf(" Invalid choice entered! Enter again-----> ");
goto start3;
}
}
fclose(fp);
getch();
}
void schedule(){
int n,opt;
printf(" 1.Domestic Timing & Fares 2.International Timing & Fares");
input:
printf(" Enter :");
scanf("%d",&n);
switch(n){
case 1:
printf(" Welcome To Domestic Booking ");
start3:
printf("1.Business Class 2.Economy Class :");
scanf("%d",&opt);
if(opt == 1){
system("cls");
printf(" BUSINESS CLASS");
printf(" Plane.Code Destinations Fares Departure Time ");
printf(" EK-1001 Karachi to Islamabad Rs6000 08:00");
printf(" EK-1002 Islamabad To Karachi Rs6000 09:15");
printf(" EK-1003 Karachi To Lahore Rs5500 09:55");
printf(" EK-1004 Lahore To Karachi Rs5500 11:00");
printf(" EK-1005 Karachi To Multan Rs5000 13:00");
printf(" EK-1006 Multan To Karachi Rs5000 15:00");
printf(" EK-1007 Karachi To Faisalabad Rs4500 18:00");
printf(" EK-1008 Faisalabad To Karachi Rs4500 19:45");
printf(" EK-1009 Karachi To Peshawar Rs7000 22:45");
printf(" EK-1010 Peshawar To Karachi Rs7000 00:15 ");
}else if(opt == 2){
system("cls");
printf(" ECONOMY CLASS");
printf(" Plane.Code Destinations Fares Departure Time ");
printf(" EK-1001 Karachi to Islamabad Rs5000 08:00");
printf(" EK-1002 Islamabad To Karachi Rs5000 09:15");
printf(" EK-1003 Karachi To Lahore Rs4500 09:55");
printf(" EK-1004 Lahore To Karachi Rs4500 11:00");
printf(" EK-1005 Karachi To Multan Rs4000 13:00");
printf(" EK-1006 Multan To Karachi Rs4000 15:00");
printf(" EK-1007 Karachi To Faisalabad Rs3500 18:00");
printf(" EK-1008 Faisalabad To Karachi Rs3500 19:45");
printf(" EK-1009 Karachi To Peshawar Rs6000 22:45");
printf(" EK-1010 Peshawar To Karachi Rs6000 00:15 ");
}else{
system("cls");
printf("Invalid Option ");
goto start3;
}
break;
case 2:
printf(" Welcome To International Booking ");
start2:
printf("1.Business Class 2.Economy Class :");
scanf("%d",&opt);
if(opt== 1){
system("cls");
printf(" BUSINESS CLASS");
printf(" Plane.Code Destinations Fares Departure Time ");
printf(" EK-1011 Karachi to Dubai Rs18000 08:20");
printf(" EK-1012 Dubai To Karachi Rs18000 09:30");
printf(" EK-1013 Karachi To Muscat Rs13000t 10:00");
printf(" EK-1014 Muscat To Karachi Rs13000 11:10");
printf(" EK-1015 Karachi To London Rs46000 13:40");
printf(" EK-1016 London To Karachi Rs46000 15:15");
printf(" EK-1017 Karachi To Toronto Rs66000 17:50");
printf(" EK-1018 Toronto To Karachi Rs66000 19:55");
printf(" EK-1019 Karachi To Newyork Rs72000 23:05");
printf(" EK-1020 Newyork To Karachi Rs72000 00:30 ");
}else if(opt== 2){
system("cls");
printf(" ECONOMY CLASS");
printf(" Plane.Code Destinations Fares Departure Time ");
printf(" EK-1011 Karachi to Dubai Rs17000 08:20");
printf(" EK-1012 Dubai To Karachi Rs16000 09:30");
printf(" EK-1013 Karachi To Muscat Rs12000t 10:00");
printf(" EK-1014 Muscat To Karachi Rs12000 11:10");
printf(" EK-1015 Karachi To London Rs45000 13:40");
printf(" EK-1016 London To Karachi Rs45000 15:15");
printf(" EK-1017 Karachi To Toronto Rs65000 17:50");
printf(" EK-1018 Toronto To Karachi Rs65000 19:55");
printf(" EK-1019 Karachi To Newyork Rs70000 23:05");
printf(" EK-1020 Newyork To Karachi Rs70000 00:30 ");
}else{
system("cls");
printf("Invalid Option ");
goto start2;
}
break;
default:
printf(" Invalid Input choice!!");
goto input;
}
}
int amount_per_person(char decision,int plane_code,int seat_num){
// printf(" y.Business Class n.Economy Class :");
// scanf("%c",&decision);
switch(decision){
case '1':
if (plane_code==1001)
{
return(6000*seat_num);
}
if (plane_code==1002)
{
return(6000*seat_num);
}
if (plane_code==1003)
{
return(5500*seat_num);
}
if (plane_code==1004)
{
return(5500*seat_num);
}
if (plane_code==1005)
{
return(5000*seat_num);
}
if (plane_code==1006)
{
return(5000*seat_num);
}
if (plane_code==1007)
{
return(4500*seat_num);
}
if (plane_code==1008)
{
return(4500*seat_num);
}
if (plane_code==1009)
{
return(7000*seat_num);
}
if (plane_code==1010)
{
return(7000*seat_num);
}
if (plane_code==1011)
{
return(18000*seat_num);
}
if (plane_code==1012)
{
return(18000*seat_num);
}
if (plane_code==1013)
{
return(13000*seat_num);
}
if (plane_code==1014)
{
return(13000*seat_num);
}
if (plane_code==1015)
{
return(46000*seat_num);
}
if (plane_code==1016)
{
return(46000*seat_num);
}
if (plane_code==1017)
{
return(66000*seat_num);
}
if (plane_code==1018)
{
return(66000*seat_num);
}
if (plane_code==1019)
{
return(72000*seat_num);
}
if (plane_code==1020)
{
return(72000*seat_num);
}
break;
case '2':
if (plane_code==1001)
{
return(5000*seat_num);
}
if (plane_code==1002)
{
return(5000*seat_num);
}
if (plane_code==1003)
{
return(4500*seat_num);
}
if (plane_code==1004)
{
return(4500*seat_num);
}
if (plane_code==1005)
{
return(4000*seat_num);
}
if (plane_code==1006)
{
return(4000*seat_num);
}
if (plane_code==1007)
{
return(3500*seat_num);
}
if (plane_code==1008)
{
return(3500*seat_num);
}
if (plane_code==1009)
{
return(6000*seat_num);
}
if (plane_code==1010)
{
return(6000*seat_num);
}
if (plane_code==1011)
{
return(17000*seat_num);
}
if (plane_code==1012)
{
return(16000*seat_num);
}
if (plane_code==1013)
{
return(12000*seat_num);
}
if (plane_code==1014)
{
return(12000*seat_num);
}
if (plane_code==1015)
{
return(45000*seat_num);
}
if (plane_code==1016)
{
return(45000*seat_num);
}
if (plane_code==1017)
{
return(65000*seat_num);
}
if (plane_code==1018)
{
return(65000*seat_num);
}
if (plane_code==1019)
{
return(70000*seat_num);
}
if (plane_code==1020)
{
return(70000*seat_num);
}
}
}
void seat_avaliblity(char choice,int seat){
int total_seats[100],total_seats_eco[100];
int i=0,j=0;
int total,total1,num,num1;
int seat_available[100]={2000},seat_available_eco[100]={2000};
int sn,sn1,seatno,seatno1,seat_nos[100],seat_nos_eco[100],SAL=0,SAL1=0;
char opt,optt;
if(choice == '1'){/*business class*/
business:
FILE *file = fopen("check seats.txt", "r");
while(fscanf(file, "%d", &num)!=EOF)
{
total_seats[i] = num;
i++;
}
fclose(file);
for(i=0;i<10;i++)
{
if (total_seats[i]==0)
{
seat_available[SAL]=i+1;
SAL++;
}
}
total=SAL/2;/*total ko SAL sy divide is liye kiya hai ly hum ko shuru ki 10 seats ki booking mil jye*/
if(total==0)
{
printf(" %d Seats are Not Available in this Flight !!!");
return ;
}
printf(" Seats Number that are Available in Business class ");
for (i=0;i<10;i++){
if (total_seats[i]==0)
printf("%d ",i+1);
}
// printf(" Enter total seats You want = ");
// scanf("%d",&sn);
if(seat>total)
{
printf(" %d Seats are Not Available in this Flight !!!",sn);
printf(" If you want to reserve a seat in Economy class press y :");
scanf("%c",&opt);
if(opt=='y')goto economy;
return;
}
int xx=0;
for (i=0;i<seat;i++)
{
start :
printf(" %d.Enter Seat Number = ",i+1);
scanf("%d",&seatno);
int count=0;
for(int j=0;j<total;j++){
if(seatno==seat_available[j])
{
count++;
seat_nos[xx]=seatno;
xx++;
}
}
if(count==1){
;
}
else{
printf(" This Seat is Not Availabe Enter Again ");
goto start;
}
}
for(i=0;i<seat;i++){
printf(" Your seat nos = ");
printf(" %d ",seat_nos[i]);
}
for(i=0;i<seat;i++){
int a=0;
a=seat_nos[i]-1;
total_seats[a]=1;
}
FILE *f = fopen("check seats.txt", "w");
for(i=0;i<10;i++)
fprintf(f, "%d ", total_seats[i]);
fclose(f);
}else if(choice != 1){ /*Starting of economy class*/
economy:
FILE *file = fopen("economy seats.txt", "r");
while(fscanf(file, "%d", &num1)!=EOF)
{
total_seats_eco[j] = num1;
j++;
}
fclose(file);
for(j=0;j<10;j++)
{
if (total_seats_eco[j]==0)
{
seat_available_eco[SAL1]=j+1;
SAL1++;
}
}
total1=SAL1/2;/*total ko SAL sy divide is liye kiya hai ly hum ko shuru ki 10 seats ki booking mil jye*/
if(total1==0)
{
printf(" %d Seats are Not Available in this Flight !!!");
return;
}
printf(" Seats Number that are Available in Economy class ");
for (j=0;j<10;j++){
if (total_seats_eco[j]==0)
printf("%d ",j+1);
}
// scanf("%d",&sn1);
// printf(" Enter total seats You want = ");
if(seat>SAL1)
{
// printf(" %d Seats are Not Available in this Flight !!!",sn);
printf(" %d Seats are Not Available in this Flight !!!",sn1);
printf(" If you want to reserve a seat in business class press y :");
scanf(" %c",&optt);
if(optt=='y')goto business;
return;
}
for (j=0;j<seat;j++)
{
start1 :
printf(" %d.Enter Seat Number = ",j+1);
scanf("%d",&seatno1);
int count1=0;
for(int k=0;k<SAL1;k++){
if(seatno1==seat_available_eco[k])
count1++;
}
if(count1==1){
for(j=0;j<seat;j++)
{
if(seatno1==seat_nos_eco[j])
{
printf(" You Have Already Selected This Seat...ENTER AGAIN !!! ");
goto start1;
}
}
seat_nos_eco[j]=seatno1;
}
else{
printf(" This Seat is Not Availabe Enter Again ");
goto start1;
}
}
for(j=0;j<seat;j++){
printf(" Your seat nos = ");
printf(" %d ",seat_nos_eco[j]);
}
for(j=0;j<seat;j++){
int a1=0;
a1=seat_nos_eco[j]-1;
total_seats_eco[a1]=1;
}
FILE *f = fopen("economy seats.txt", "w");
for(j=0;j<10;j++)
fprintf(f, "%d ", total_seats_eco[j]);
fclose(f);
// return sn1;
}
}
void information_specific(int plane_code){
if (plane_code==1001)
{
printf(" Plane_code: EK-1001");
printf(" Destination: Karachi to Islamabad");
printf(" Departure: 08:00 ");
}
if (plane_code==1002)
{
printf(" Plane_code: EK-1002");
printf(" Destination: Islamabad to Karachi");
printf(" Departure: 09:15");
}
if (plane_code==1003)
{
printf(" Plane_code: EK-1003");
printf(" Destination: Karachi to Lahore");
printf(" Departure: 09:55");
}
if (plane_code==1004)
{
printf(" Plane_code: EK-1004");
printf(" Destination: Lahore to Karachi");
printf(" Departure: 11:00");
}
if (plane_code==1005)
{
printf(" Plane_code: EK-1005");
printf(" Destination: Karachi to Multan");
printf(" Departure: 13:00");
}
if (plane_code==1006)
{
printf(" Plane_code: EK-1006");
printf(" Destination: Multan to Karachi");
printf(" Departure: 15:00");
}
if (plane_code==1007)
{
printf(" Plane_code: EK-1007");
printf(" Destination: Karachi to Faisalabad");
printf(" Departure: 18:00");
}
if (plane_code==1008)
{
printf(" Plane_code: EK-1008");
printf(" Destination: Faisalabad to Karachi");
printf(" Departure: 19:45");
}
if (plane_code==1009)
{
printf(" Plane_code: EK-1009");
printf(" Destination: Karachi to Peshawar");
printf(" Departure: 22:45");
}
if (plane_code==1010)
{
printf(" Plane_code: EK-1010");
printf(" Destination: Peshawar to Karachi");
printf(" Departure: 00:15");
}
if (plane_code==1011)
{
printf(" Plane_code: EK-1011");
printf(" Destination: Karachi to Dubai");
printf(" Departure: 08:20");
}
if (plane_code==1012)
{
printf(" Plane_code: EK-1012");
printf(" Destination: Dubai to Karachi");
printf(" Departure: 09:30");
}
if (plane_code==1013)
{
printf(" Plane_code: EK-1013");
printf(" Destination: Karachi to Muscat");
printf(" Departure: 10:00");
}
if (plane_code==1014)
{
printf(" Plane_code: EK-1014");
printf(" Destination: Muscat to Karachi");
printf(" Departure: 11:10");
}
if (plane_code==1015)
{
printf(" Plane_code: EK-1015");
printf(" Destination: Karachi to London");
printf(" Departure: 13:40");
}
if (plane_code==1016)
{
printf(" Plane_code: EK-1016");
printf(" Destination: London to Karachi");
printf(" Departure: 15:15");
}
if (plane_code==1017)
{
printf(" Plane_code: EK-1017");
printf(" Destination: Karachi to Toronto");
printf(" Departure: 17:50");
}
if (plane_code==1018)
{
printf(" Plane_code: EK-1018");
printf(" Destination: Toronto to Karachi");
printf(" Departure: 19:55");
}
if (plane_code==1019)
{
printf(" Plane_code: EK-1019");
printf(" Destination: Karachi to Newyork");
printf(" Departure: 23:05");
}
if (plane_code==1020)
{
printf(" Plane_code: EK-1020");
printf(" Destination: Newyork to Karachi");
printf(" Departure: 00:30");
}
}
void seat_check(){
int total_seats[100],total_seats_eco[100];
int choice,i=0,j=0;
int total,total1,num,num1;
int seat_available[100]={2000},seat_available_eco[100]={2000};
int sn,sn1,seatno,seatno1,seat_nos[100],seat_nos_eco[100],SAL=0,SAL1=0;
char opt;
printf(" Enter 1 to check the seats in business class or any other number or letter will proceed to Economy class :");
scanf(" %c",&opt);
if(opt=='1'){
// system("cls");
FILE *file = fopen("check seats.txt", "r");
while(fscanf(file, "%d", &num)!=EOF)
{
total_seats[i] = num;
i++;
}
fclose(file);
for(i=0;i<10;i++)
{
if (total_seats[i]==0)
{
seat_available[SAL]=i+1;
SAL++;
}
}
total=SAL/2;/*total ko SAL sy divide is liye kiya hai ly hum ko shuru ki 10 seats ki booking mil jye*/
if(total==0)
{
printf(" %d Seats are Not Available in this Flight !!!");
}else if(total != 0){
printf(" Seats Number that are Available in Business class ");
for (i=0;i<10;i++){
if (total_seats[i]==0)
printf("%d ",i+1);
}
}
printf(" Press any key to move forward");
getch();
}else if(opt!='1'){
system("cls");
FILE *file = fopen("economy seats.txt", "r");
while(fscanf(file, "%d", &num1)!=EOF)
{
total_seats_eco[j] = num1;
j++;
}
fclose(file);
for(j=0;j<10;j++)
{
if (total_seats_eco[j]==0)
{
seat_available_eco[SAL1]=j+1;
SAL1++;
}
}
total1=SAL1/2;/*total ko SAL sy divide is liye kiya hai ly hum ko shuru ki 10 seats ki booking mil jye*/
if(total1==0)
{
printf(" %d Seats are Not Available in this Flight !!!");
}else if(total1 != 0){
printf(" Seats Number that are Available in Economy class ");
for (j=0;j<10;j++){
if (total_seats_eco[j]==0)
printf("%d ",j+1);
}
}
}
printf(" Press any key to move forward");
getch();
}
void printticket(char name[],char CNIC[],int plane_code,char opt,int seats,float fares){
system("cls");
printf("-------------------TICKET------------------- ");
printf(" Passenger Name: %s",name);
printf(" Number Of Seats: %d",seats);
printf(" CNIC of Passenger: %s",CNIC);
information_specific(plane_code);
printf(" Fare: %.2f",fares);
}
void cancellation(){
char n;
int total_seats[100],total_seats_eco[100];
int i=0,j=0;
int total,total1,num,num1;
int seat_available[100]={2000},seat_available_eco[100]={2000};
int sn,sn1,seatno,seatno1,seat_nos[100],seat_nos_eco[100],SAL=0,SAL1=0;
system("cls");
printf(" Enter the the option to cancel the reservation : 1.Business Class 2.Ecoconmy Class");
scanf(" %c",&n);
if(n=='1'){
printf("*****************Welcome To Bussiness Class Cancellation*******************");
FILE *file = fopen("check seats.txt", "r");
while(fscanf(file, "%d", &num)!=EOF)
{
total_seats[i] = num;
i++;
}
fclose(file);
for(i=0;i<10;i++)
{
if (total_seats[i]!=0)
{
seat_available[SAL]=i+1;
SAL++;
}
}
total=SAL/2;
printf(" Enter total seats You want to cancel = ");
scanf("%d",&sn);
int mxx=0;
for (i=0;i<sn;i++)
{
start :
printf(" %d.Enter Seat Number = ",i+1);
scanf("%d",&seatno);
int count=0;
for(int j=0;j<total;j++){
if(seatno==seat_available[j])
{
count++;
seat_nos[mxx]=seatno;
mxx++;
}
}
if(count==1){
;
}
else{
printf(" Invalid Cancellation ");
goto start;
}
for(i=0;i<sn;i++){
int a=0;
a=seat_nos[i]-1;
total_seats[a]=0;
}
FILE *f = fopen("check seats.txt", "w");
for(i=0;i<10;i++)
fprintf(f, "%d ", total_seats[i]);
fclose(f);
}
printf(" Cancellation is Done Successfully!!!!");
system("cls");
}else if(n=='2'){
printf("*****************Welcome To Economy Class Cancellation*******************");
FILE *file = fopen("economy seats.txt", "r");
while(fscanf(file, "%d", &num1)!=EOF)
{
total_seats_eco[i] = num1;
i++;
}
fclose(file);
for(i=0;i<10;i++)
{
if (total_seats_eco[i]!=0)
{
seat_available_eco[SAL1]=i+1;
SAL1++;
}
}
total1=SAL1/2;
printf(" Enter total seats You want to cancel = ");
scanf("%d",&sn1);
int xx=0;
for (i=0;i<sn1;i++)
{
start1:
printf(" %d.Enter Seat Number = ",i+1);
scanf("%d",&seatno1);
int count1=0;
for(int j=0;j<total1;j++){
if(seatno1==seat_available_eco[j])
{
count1++;
seat_nos_eco[xx]=seatno1;
xx++;
}
}
if(count1==1){
;
}
else{
printf(" Invalid Cancellation ");
goto start1;
}
for(i=0;i<sn1;i++){
int a1=0;
a1=seat_nos_eco[i]-1;
total_seats_eco[a1]=0;
}
FILE *f = fopen("economy seats.txt", "w");
for(i=0;i<10;i++)
fprintf(f, "%d ", total_seats_eco[i]);
fclose(f);
}
printf(" Cancellation is Done Successfully!!!!");
system("cls");
}
}
Explanation / Answer
As you are using label as start1: etc in your code so this label must be followed by a statement in c programme. But you are declaring a variable after label which is not allowed.
So the easiest way to solve this make a statement after each label . You can make statement by simply inserting a semicolon(;) after each label.
Example
In reservation function after each label enter a ;
start1: ;
start2: ;
And do it for all label you are using in other function as well.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.