C言語のソースコードでエラーが出ますが、原因がわかりません。
助けて頂ければ幸いです。

C:\Users\dell-\Desktop\annd.c(33) : error C2143: syntax error :
missing ';' before 'type' C:\Users\dell-\Desktop\annd.c(34) : error
C2143: syntax error : missing ';' before 'type'

annd.exe - 1 error(s), 0 warning(s)

#include<stdio.h>  
#include<math.h>  
#include <stdlib.h>  
#include <time.h> 

int x[2];// 入力层 
double w[2][2];//入力层と中间层の重み 
double a[2];//中间层 
double cw[2];//中间层と出力层の重み 
double o;//出力层 
double sum;//中间层と出力层の重みと中间层の挂け算の総和 
double bias;//バイアス 
double hoge;
int T;//教师信号 
double dnn_sig(double in){  //sigmoid
    return 1.0/(1.0+exp(-1.0*in));  // ゲインを1.0に 
}  
int A_nd(int x,int y) {//AND関数 
    if(x==1&&y==1) 
    return 1;
    else 
    return 0;
}

int main()
{int i,j,n;
int t=0;
n=0;
bias=0.5;
double w[2][2]={0.2,0.2,0.4,0.7};//入力层と中间层の重み 
double cw[2]={0.3,0.4};
sum=0;
hoge=0;
do
{ srand(time(NULL));
   for(i=0;i<2;i++)//ランダム and 
   {
      x[i]=rand()%2;
   }
   T=A_nd(x[0],x[1]);
   for(j=0;j<2;j++)
   {
     for(i=0;i<2;i++)
      {
      hoge+=w[j][i]*x[i];
     }
     a[j]=dnn_sig(hoge);
    hoge=0;
    sum+=a[j]*cw[j];
    }
   o=dnn_sig(sum-bias);
   sum=0;
  for(j=0;j<2;j++)
   {
    cw[j]+=0.1*(T-o)*a[j];
    }
    bias-=0.1*(T-o);
printf("%.9f\n",T-o);
n++;
}while( (double)o!=(int) T&&n<1000000);
}