อยากให้โปรแกรมมันวนรอบการทำงานครับ ช่วยทีครับ
หลังจากที่หายไปหลายอาทิตย์ ผมก็งม ๆ มั่วๆไปแบบของผม งานต้องส่งวันที่ 4 นี้แล้ว แต่ไปไม่ถึงไหนเลย ก็คงต้องส่งเท่าที่ทำได้หละครับ T^T
ตอนนี้ติดปัญหาคืออยากให้โปรแกรมมัน วนรอบการทำงาน อยากให้มันกลับไปที่เมนูคืนครับ
นี้โปรแกรมผมครับ ช่วยทีนะครับ Please
#include <stdio.h> #include <conio.h> #include <ctype.h> #include <stdlib.h> #include <string.h> #include <time.h>
void timee(void) { tm*iTDTimeInfo; time_t rtime;
time(&rtime); iTDTimeInfo=localtime(&rtime);
printf("\t\t\t\t\t\t\t%s\n",asctime(iTDTimeInfo)); }
void starline1(void) { printf("***** **** *** ** * ** *** **** *****\n"); }
void starline2(int k) { int o; for(o=1; o<=k; o++) printf("*"); printf("\n"); }
main() { char choice; timee(); char* t1="\t\t** Wellcome **\n"; char t2[44]="\t\t** To **\n"; char t3[]="\t\t** Study Room **\n"; char t4[6]={'M','.','3','/','5','\0'}; char t5[10]={'S','r','i','n','d','h','o','r','n'}; char t6[]={'S','c','h','o','o','l','\0'};
printf("\t\t");starline1(); printf("\t\t** (^_^ ) **\n"); printf("%s",&t1[0]); printf("%s",&t2); printf("%s",&t3); printf("\t\t** %s **\n",&t4); printf("\t\t** %s **\n",&t5); printf("\t\t** %s **\n",&t6); printf("\t\t** ( ^_^) **\n"); printf("\t\t");starline1(); getch(); printf("\n\n");starline2(37); printf("** Please select the Actions menu. **\n"); starline2(37); printf("a.Results of study\n"); printf("b.Calculator\n"); printf("c.Multiplication table\n"); printf("d.For students to sign\n"); printf("e.Check List for Administrator\n"); printf("f.Add id\n"); scanf("%c",&choice); clrscr();
switch(choice) { case'a': { timee(); int number; printf("[- = > Results of study < = -]\n\n"); printf("Enter your number: "); scanf("%d",&number); if(number>0) { if(number>=30) { printf("You entered the wrong information\n"); } else { int score; printf("Enter your total score: "); scanf("%d",&score); switch(score/10) { case 10: printf("%d is A+\n",score); break; case 9: printf("%d is A\n",score); break; case 8: printf("%d is B\n",score); break; case 7: printf("%d is C\n",score); break; case 6: printf("%d is D\n",score); break; default: printf("%d is F",score); } return 0; }
} else { printf("You entered the wrong information."); } return 0; break; }
case'b': { timee(); double number1 = 0.0; double number2 = 0.0; char operation = 0;
printf("[- = > Calculator < = -]\n\n"); printf("\nEnter the calculation\n"); scanf("%lf %c %lf", &number1, &operation, &number2);
switch(operation) { case '+': printf("= %lf\n", number1+ number2); break;
case '-': printf("= %lf\n", number1 - number2); break;
case '*': printf("= %lf\n", number1 * number2); break;
case '/': if(number2 == 0) printf("\n\n\aDivision by Zero #ERROR!\n"); else printf("= %lf\n", number1 / number2); break;
case '%': if((long)number2 == 0) printf("\n\n\aDevision by Zero #ERROR!\n"); else printf("= %ld\n", (long)number1 % (long)number2); break;
default: printf("\n\n\aIllegal operation!"); } return 0; break; }
case'c': { timee(); printf("\t\t- = > [ Multiplication table ] < = -\n\n"); printf(" 1\t2\t3\t4\t5\t6\t7\t8\t9\t10\t"); printf("\n"); for(int c=1;c<11;c++) { printf("%d|",c); for(int i=1;i<11;i++) { printf("%d\t",i*c); } printf("\n"); } return 0; break; }
case'd': { timee(); FILE *fpt; char loop = 'Y';
struct terng { char name[40]; int number; float money_daily; }; struct terng p;
fpt = fopen("D:/dat/terng.txt","w");
if(fpt==NULL) { printf("Error..cannot open file!\n"); exit(0); }
while(loop == 'Y') { printf("Enter Name, Number and MoneyDaily => "); scanf("%s %d %f",p.name,&p.number,&p.money_daily);
fprintf(fpt,"%s %d %f\n", p.name,p.number,p.money_daily); fflush(fpt);
printf("Add another record [Y/N]: \n"); loop = toupper(getche()); } fclose(fpt); printf("\n\n");
return 0; break; }
case'e': { timee(); FILE *fpt; struct terng1 { char name[40]; int number; float money_daily; };
struct terng1 h;
fpt = fopen("D:/dat/terng.txt","r");
if(fpt==NULL) { printf("Error..cannot open file!\n"); exit(0); }
printf("Name\t Number MoneyDaily\n"); printf("--------------------------\n"); while(fscanf(fpt, "%s %d %f",h.name,&h.number,&h.money_daily) !=EOF) printf("%-10s%2d %9.2f\n", h.name,h.number,h.money_daily);
fclose(fpt); printf("\n");
return 0; break; }
case'f': { timee(); struct terng2 { char name[40]; int number; float money_daily; };
struct new_terng { int id; char name[40]; int number; float money_daily; };
struct terng2 j; struct new_terng u;
FILE *fpt1,*fpt2; fpt1 = fopen("D:/dat/terng.txt","r"); fpt2 = fopen("D:/dat/terng.dat","w");
if(fpt1 == NULL || fpt2 == NULL) { printf("Error..cannot open file!\n\n"); exit(0); }
printf("Name\t Number MoneyDaily id\n"); printf("-----------------------------\n");
while(fscanf(fpt1, "%s %d %f", j.name, &j.number, &j.money_daily) != EOF) { printf("%-10s %2d %8.2f ", j.name, j.number, j.money_daily);
strcpy(u.name, j.name); u.number = j.number; u.money_daily = j.money_daily;
scanf("%d",&u.id); fprintf(fpt2, "%d %s %d %f\n", u.id,u.name,u.number,u.money_daily); fflush(fpt2); }
fclose(fpt1); fclose(fpt2);
remove("D:/dat/terng.txt");
rename("D:/dat/terng.dat","D:/dat/terng.txt");
printf("\nCopy data to new stucture successful.\n\n");
return 0; break; }
}
}
|