?? digui.c
字號:
#include <stdio.h>
int E();
int E1();
int T();
int T1();
int F();
int k=0,error=0;
char str[100];
int E()
{if(str[k]=='('||str[k]=='i')
{T(str[k]);
E1(str[k]);
}
else
{
printf("\nerror1");error=1;
}
return(k);
}
int E1()
{
if(str[k]=='+')
{k++;
T(str[k]);
E1(str[k]);return(k);
}
else if(str[k]=='#'||str[k]==')')return(k);
else
{
printf("\nerror2");error=1;return(k);
}
}
int T()
{if(str[k]=='('||str[k]=='i')
{F(str[k]);
T1(str[k]);
}
else
{
printf("\nerror3");error=1;
}
return(k);
}
int T1()
{if(str[k]=='*')
{k++;
F(str[k]);
T1(str[k]); return(k);
}
else if(str[k]=='#'||str[k]=='+'||str[k]==')') return(k);
else
{
printf("\nerror%d",k+1);error=1; return(k);
}
}
int F()
{if(str[k]=='(')
{k++;
E(str[k]);
if(str[k]==')')
k++;
else
{printf("\nerror%d",k+1);error=1;}
}
else if(str[k]=='i')
k++;
else
{printf("\nerror%d",k+1);error=1;}
return(k);
}
main()
{
int i,b;
printf("\n請輸入一條語句:");
for(i=0;i<100;i++)
{scanf("%c",&str[i]);
if(str[i]=='#')
break;
} // b=i;printf("%d",b);
//for(i=0;i<b;i++)
//printf("\n%c",str[i]);
E(str[k]);
//printf("\n%d",k);
if(str[k]=='#'&&error==0)
printf("\nright!");
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -