level 5
wyc890618
楼主
花了我好久好久的时间,若各位能找出错误,允许不回帖!
#include "stdio.h"#
include "math.h"#include "time.h"void main(){ void first(); void second(); int third(); time_t t; int close=0; char get; clrscr(); srand((unsigned) time(&t)); for(;;) { clrscr(); printf("24 POINTS SYSTEM v2.2\n"); printf("MADE BY DANTE WANG\n"); printf("Jul.28th 2006\n\n"); printf("Please choose mode!\n\n"); printf("1. Game Mode\n"); printf("2. Count Mode\n"); printf("3. Quit\n\n"); get=getch(); switch(get) { case '1': first(); break; case '2': second();break; case '3': close=third(); break; default: printf("Please input 1, 2 or 3!\n"); getch(); } if(close) break; }}void first(){ int jdgsgn(int a,int b,int c,int d); int n[4],i; char ch[100],ch1[100]; int check(char *p); int exam2(char *p,int a,int b,int c,int d); void sign(int a,int b,int c,int d); double figure(char *p); void draw(int *p); for(;;) { for(i=0;i<4;i++) { n[i]=rand()%13+1; } draw(n); if(!jdgsgn(n[0],n[1],n[2],n[3])) { printf("No answer!"); getch(); continue; } gets(ch); if(!strcmp(strlwr(ch),"quit")) break; else { strcpy(ch1,ch); if(!check(ch)&&!exam2(ch,n[0],n[1],n[2],n[3])&&fabs(figure(ch1)-24)<=0.000001) {printf("\nGood job!\n");getch(); } else {printf("\nWrong!\n\nAnswer: ");sign(n[0],n[1],n[2],n[3]);getch(); } } }}void second(){ int n[4],i; char c[4][10]; int exam(char *p); void sign(int a,int b,int c,int d); double recog(char *p); clrscr(); printf("Input 0 to leave.\n\n"); for(;;) { for(i=0;i<4;i++) { scanf("%s",&c[i]); if(exam(c[i])) {printf("GRAMMER ERROR!\n");i--;continue; } n[i]=(int)recog(c[i]); if(n[i]==0)break; } if(n[0]&&n[1]&&n[2]&&n[3]) sign(n[0],n[1],n[2],n[3]); else break; }}int third(){ printf("Thanks for using this software!\n\n"); printf("If you have any advices or suggestions,\n\n"); printf("welcome to send email to [email protected].\n\n"); getch(); return(1);}void sign(int a,int b,int c,int d){ char *change(int x); double figure(char *p); int i[4],n,n1,n2,n3,n4,s1,s2,s3,t,flag=0; char s[4][2]={"+","-","*","/"},p[64]={0},p1[64]={0}; i[0]=a; i[1]=b; i[2]=c; i[3]=d; for(n1=0;n1<4;n1++) { for(n2=0;n2<4;n2++) { if(n2==n1)continue; for(n3=0;n3<4;n3++) {if(n3==n2||n3==n1) continue;for(n4=0;n4<4;n4++){ if(n4==n3||n4==n2||n4==n1) continue; for(s1=0;s1<4;s1++) { for(s2=0;s2<4;s2++) { for(s3=0;s3<4;s3++) {strcat(p,change(i[n1]));strcat(p,s[s1]);strcat(p,change(i[n2]));strcat(p,s[s2]);strcat(p,change(i[n3]));strcat(p,s[s3]);strcat(p,change(i[n4]));
2006年08月07日 07点08分
1
#include "stdio.h"#
include "math.h"#include "time.h"void main(){ void first(); void second(); int third(); time_t t; int close=0; char get; clrscr(); srand((unsigned) time(&t)); for(;;) { clrscr(); printf("24 POINTS SYSTEM v2.2\n"); printf("MADE BY DANTE WANG\n"); printf("Jul.28th 2006\n\n"); printf("Please choose mode!\n\n"); printf("1. Game Mode\n"); printf("2. Count Mode\n"); printf("3. Quit\n\n"); get=getch(); switch(get) { case '1': first(); break; case '2': second();break; case '3': close=third(); break; default: printf("Please input 1, 2 or 3!\n"); getch(); } if(close) break; }}void first(){ int jdgsgn(int a,int b,int c,int d); int n[4],i; char ch[100],ch1[100]; int check(char *p); int exam2(char *p,int a,int b,int c,int d); void sign(int a,int b,int c,int d); double figure(char *p); void draw(int *p); for(;;) { for(i=0;i<4;i++) { n[i]=rand()%13+1; } draw(n); if(!jdgsgn(n[0],n[1],n[2],n[3])) { printf("No answer!"); getch(); continue; } gets(ch); if(!strcmp(strlwr(ch),"quit")) break; else { strcpy(ch1,ch); if(!check(ch)&&!exam2(ch,n[0],n[1],n[2],n[3])&&fabs(figure(ch1)-24)<=0.000001) {printf("\nGood job!\n");getch(); } else {printf("\nWrong!\n\nAnswer: ");sign(n[0],n[1],n[2],n[3]);getch(); } } }}void second(){ int n[4],i; char c[4][10]; int exam(char *p); void sign(int a,int b,int c,int d); double recog(char *p); clrscr(); printf("Input 0 to leave.\n\n"); for(;;) { for(i=0;i<4;i++) { scanf("%s",&c[i]); if(exam(c[i])) {printf("GRAMMER ERROR!\n");i--;continue; } n[i]=(int)recog(c[i]); if(n[i]==0)break; } if(n[0]&&n[1]&&n[2]&&n[3]) sign(n[0],n[1],n[2],n[3]); else break; }}int third(){ printf("Thanks for using this software!\n\n"); printf("If you have any advices or suggestions,\n\n"); printf("welcome to send email to [email protected].\n\n"); getch(); return(1);}void sign(int a,int b,int c,int d){ char *change(int x); double figure(char *p); int i[4],n,n1,n2,n3,n4,s1,s2,s3,t,flag=0; char s[4][2]={"+","-","*","/"},p[64]={0},p1[64]={0}; i[0]=a; i[1]=b; i[2]=c; i[3]=d; for(n1=0;n1<4;n1++) { for(n2=0;n2<4;n2++) { if(n2==n1)continue; for(n3=0;n3<4;n3++) {if(n3==n2||n3==n1) continue;for(n4=0;n4<4;n4++){ if(n4==n3||n4==n2||n4==n1) continue; for(s1=0;s1<4;s1++) { for(s2=0;s2<4;s2++) { for(s3=0;s3<4;s3++) {strcat(p,change(i[n1]));strcat(p,s[s1]);strcat(p,change(i[n2]));strcat(p,s[s2]);strcat(p,change(i[n3]));strcat(p,s[s3]);strcat(p,change(i[n4]));