Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

求救!到底哪错了?

Posted by shenfangyi at 2006-07-25 20:39:01 on Problem 2849
#include<stdio.h>
#include<string.h>
unsigned char m[32768];
char p[128001],s[1000000],o[10000000];
main()
{
    int n;
    scanf("%d",&n);
    for(int z=1;z<=n;z++)
    {
        int l=0;
        gets(s);
        int c=0;
        while(strcmp("end",s)&&(c>=0)&&(c<2))
        {
            char *t=s;
            while(*t)
            {
                if((*t=='<')||(*t=='>')||(*t=='+')||(*t=='-')||(*t=='.')||(*t=='[')||(*t==']'))
                {
                    if(*t=='[')c++;
                    else if(*t==']')c--;
                    p[l++]=*t;
                }
                else if(*t=='%')break;
                t++;
            }
            gets(s);
        }
        printf("PROGRAM #%d:\n",z);
        if(c)puts("COMPILE ERROR");
        else
        {
            for(int i=0;i<32768;i++)m[i]=0;
            char *t=p,*q=o;
            *q=0;
            int a=0,c=1;
            while(((t-p)<l))
            {
                switch(*t)
                {
                    case '>':a=(a+1)%32768;break;
                    case '<':a=(a+32767)%32768;break;
                    case '+':m[a]++;break;
                    case '-':m[a]--;break;
                    case '.':*q=m[a];*(++q)=0;break;
                    case '[':
                        if(!m[a])
                        {
                            while(((t-p)<l)&&(*t!=']'))t++;
                        }
                        break;
                    case ']':
                        if(m[a])
                        {
                            while((t>=p)&&(*t!='['))t--;
                        }
                            break;
                }
                t++;
            }
            puts(o);
        }
    }
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator