亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ga.c

?? ga 遺傳算法
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include<stdio.h>
#include<stdlib.h>
#include<graphics.h>
#include<math.h>
#include<time.h>
#include<string.h>
#include "graph.c"
/* 宏定義 */
#define TL1      20          /* 植物性食物限制時間 */
#define TL2      5           /* 動物性食物限制時間 */
#define NEWFOODS 3           /* 植物性食物每代生成數(shù)目  */
#define MUTATION 0.05        /* 變異概率     */
#define G_LENGTH  32         /* 個體染色體長度  */
#define MAX_POP  100         /* 個體總數(shù)的最大值  */
#define MAX_FOOD 100         /* 食物總數(shù)的最大值  */
#define MAX_WX    60         /* 虛擬環(huán)境的長度最大值 */
#define MAX_WY    32         /* 虛擬環(huán)境的寬度最大值 */
#define SX1      330         /* 虛擬環(huán)境圖左上角點x坐標(biāo)  */
#define SY1      40          /* 虛擬環(huán)境圖左上角點y坐標(biāo)  */
#define GX       360         /* 個體數(shù)進化圖形窗口的左上角點X坐標(biāo)  */
#define GY       257         /* 個體數(shù)進化圖形窗口的左上角點Y坐標(biāo)  */
#define GXR      250         /* 個體數(shù)進化圖形窗口的長度    */
#define GYR      100         /* 個體數(shù)進化圖形窗口的寬度    */
#define GSTEP     2          /* 個體數(shù)進化圖形窗口的X方向步長    */
#define R_LIFE  0.05         /* 初期產(chǎn)生生物數(shù)的環(huán)境比率 */
#define R_FOOD  0.02         /* 初期產(chǎn)生食物數(shù)的環(huán)境比率 */
#define SL_MIN    10         /* 個體壽命最小值   */
/* 全局變量 */
unsigned  char  gene[MAX_POP][G_LENGTH];     /* 遺傳基因      */
unsigned  char  iflg[MAX_POP];               /* 個體死活狀態(tài)標(biāo)志變量  */
unsigned  char  fflg[MAX_FOOD];              /* 食物有無狀態(tài)標(biāo)志變量  */
unsigned  char  world[MAX_WX][MAX_WY];       /* 虛擬環(huán)境的數(shù)據(jù)    */
unsigned char                                /* 各中行為模式數(shù)據(jù) */
life1[5][5]={{0,0,1,0,0},{0,1,0,1,0},{1,0,0,0,1},{0,1,0,1,0},{0,0,1,0,0}};
unsigned char
life2[5][5]={{1,1,1,1,1},{1,0,0,0,1},{1,0,0,0,1},{1,0,0,0,1},{1,1,1,1,1}};
unsigned char
food1[5][5]={{0,0,0,1,0},{0,0,1,1,0},{0,1,0,1,0},{0,0,1,1,0},{0,0,0,1,0}};
unsigned char
food2[5][5]={{0,0,0,1,0},{0,0,1,1,0},{0,1,1,1,0},{0,0,1,1,0},{0,0,0,1,0}};
int pop_size;                   /* 個體總數(shù)   */
int iatr[MAX_POP][4];           /* 個體屬性   */
                                /* iatr[][0]  個體當(dāng)前位置x坐標(biāo)  */
                                /* iatr[][1]  個體當(dāng)前位置y坐標(biāo)  */
                                /* iatr[][2]  內(nèi)部能量  */
                                /* iatr[][3]  年齡屬性  */
int food_size;                  /* 食物總數(shù)  */
int fatr[MAX_FOOD][4];          /* 食物屬性  */
                                /* fatr[][0]  食物當(dāng)前位置x坐標(biāo)  */
                                /* fatr[][1]  食物當(dāng)前位置y坐標(biāo)  */
                                /* fatr[][2]=0 : 植物性 =1:動物性 */
                                /* fatr[][3]  新鮮程度    */
int wx,wy;                      /* 虛擬環(huán)境的長寬度  */

void uni_crossover(gene,g1,g2,g3,ratio1,g_length)    /* 均勻交叉 */
unsigned char *gene;                                 /* 遺傳基因 */
int g1,g2,g3;                                        /* g1 g2 父個體編號  g3 子個體編號  */
double ratio1;                                       /*  父個體g1被選中的概率  */
int g_length;                                        /* 個體遺傳基因的位長  */
{
   unsigned char *gene1;        /*  父1遺傳基因的指針 */
   unsigned char *gene2;        /*  父2遺傳基因的指針 */
   unsigned char *gene3;        /*  子遺傳基因的指針 */
   double rnd,r1;
   int i;
   gene1=gene+g_length*g1;
   gene2=gene+g_length*g2;
   gene3=gene+g_length*g3;
   r1=(int)(10000.0*ratio1);
   for(i=0;i<g_length;i++)
   {  rnd=random(10000);
      if(rnd<=r1)    *(gene3+i)=*(gene1+i);
      else           *(gene3+i)=*(gene2+i);
   }
}

void g_disp_unit(x,y,n)
/* 繪制虛擬環(huán)境的一個單元  */
int x,y;        /* x=0,1,2....,wx-1;   y=0,1,2,....,wy-1  */
int n;          /* n=0: =1: 生物1  =2:生物2   =3:植物性食物  =4:障礙物  =5:動物性食物 */
{
   int gx,gy,i,j;
   unsigned char col;
   gx=SX1+5*x;gy=SY1+5*y;
   for(i=0;i<5;i++)
     for(j=0;j<5;j++)
     {  switch(n)
   { case 0: col=0;             break;
     case 1: col=life1[j]  [ i]*2; break;
     case 2: col=life2[j]  [ i]*4; break;
     case 3: col=food1[j]  [ i]*6; break;
     case 4: col=7;             break;
     case 5: col=food2[j]  [ i]*11;
    }
  g_pset(gx+j,gy+i,col);
       }
   }

void g_draw_world()         /* 顯示虛擬環(huán)境畫面  */
{
int i,j;
for(i=0;i<wy;i++)
  for(j=0;j<wx;j++)
  g_disp_unit(j,i,world[j] [ i]);
}

void g_draw_frame(x1,y1,x2,y2,c1,c2,c3,c4,text)
int x1,y1,x2,y2,c1,c2,c3,c4;
char *text;
{  int n,x3;
   g_rectangle(x1,y1,x2,y2,c1,1);
   g_rectangle(x1,y1,x2,y2,c2,0);
   g_rectangle(x1,y1,x2,y1+16,c3,1);
   g_rectangle(x1,y1,x2,y1+16,c2,0);
   n=strlen(text);
   x3=x1+((x2-x1-n*8)/2);
   disp_hz16(text,x3,y1,c4);
}

void g_init_frames()      /*  初始化畫面  */
{
  int i,j,cx,cy,x,y;
  char text[17];
  g_draw_frame(0,0,639,399,15,0,4,15,
      "基于遺傳算法的人工生命模擬");
  g_draw_frame(0,16,320,170,7,0,8,15,"設(shè)定參數(shù)");
  y=48;
   setcolor(9);
  disp_hz16("植物食物限制時間",16,y,15);
  sprintf(text,"%d",TL1);
  g_text(200,y+8,4,text);
  y=y+24;
   setcolor(9);
  disp_hz16("動物食物限制時間",16,y,15);
  sprintf(text,"%d",TL2);
  g_text(200,y+8,4,text);
  y=y+24;
   setcolor(9);
  disp_hz16("植物食物每代生成個數(shù)",16,y,15);
  sprintf(text,"%d",NEWFOODS);
  g_text(200,y+8,4,text);
  y=y+24;
   setcolor(9);
  disp_hz16("變異概率",16,y,15);
  i=(int)(MUTATION*100.0);
  sprintf(text,"%d",i);
  g_text(152,y+8,4,text);
  g_draw_frame(0,170,320,399,7,0,8,15,"最佳基因型");
  x=16;y=194;
   setcolor(9);
  disp_hz16("SP:物種號........",x,y,15);y=y+16;
  disp_hz16("SL:壽命..........",x,y,15);y=y+16;
  disp_hz16("VF:視野..........",x,y,15);y=y+16;
  disp_hz16("TM:基本移動模式..",x,y,15);y=y+16;
  disp_hz16("CM:移動特點......",x,y,15);y=y+16;
  disp_hz16("LM:移動能耗......",x,y,15);y=y+16;
  disp_hz16("CA:行動特點......",x,y,15);y=y+16;
  disp_hz16("CR:善變性........",x,y,15);y=y+16;
  disp_hz16("SA:攻擊速度......",x,y,15);y=y+16;
  disp_hz16("DA:防御能力......",x,y,15);y=y+16;
  disp_hz16("LA:攻擊能耗......",x,y,15);y=y+16;
  disp_hz16("EF:食物吸取效率..",x,y,15);y=y+16;
  g_draw_frame(320,16,639,207,7,0,8,15,"虛擬世界");
  g_draw_frame(320,207,639,399,7,0,8,15,"世代個體數(shù)目變化");
  }

void g_init_graph()
/*  個體數(shù)進化圖初始化  */
{
   g_rectangle(GX,GY,GX+GXR,GY+GYR,0,1);
   g_rectangle(GX,GY,GX+GXR,GY+GYR,6,0);
   setcolor(1);
   disp_hz16( "生物 1",GX+5,GY-18,15);
   g_line(GX+90,GY-10,GX+110,GY-10,1);
   setcolor(4);
   disp_hz16( "生物 2",GX+120,GY-18,15);
   g_line(GX+205,GY-10,GX+225,GY-10,4);
   setcolor(0);
   disp_hz16("世代數(shù)",GX+168,GY+GYR+10,15);
   g_text(GX-25,GY,0,"100");
   g_text(GX-14,GY+GYR,0,"0");
}

void g_plot_population(gen_num,n1,n2,n1old,n2old)
int gen_num,n1,n2,n1old,n2old;
{
  int x,y,gx,gy,x_old,y_old;
  char text[8];
  if(gen_num%10==0)
  {
     x=GX+(gen_num-1)*GSTEP;
     g_line(x,GY+1,x,GY+GYR-1,1);
     sprintf(text,"%d",gen_num);
     if(gen_num<100||gen_num%20==0)
      g_text(x-8,GY+GYR+5,15,text);
  }
  x_old=GX+(gen_num-1)*GSTEP;
  x=x_old+GSTEP;
  y_old=GY+GYR-n1old;
  y=GY+GYR-n1;
  g_line(x_old,y_old,x,y,1);
  y_old=GY+GYR-n2old;
  y=GY+GYR-n2;
  g_line(x_old,y_old,x,y,4);
}

void g_disp_genotype()             /* 顯示最佳個體的遺傳基因型  */
{
  int i,j,n0,n1,x,y;
  unsigned char g[G_LENGTH];
  unsigned char bits[12][2]=
  { {0,0},{1,4},{5,6},{7,8},{9,11},{12,12},{13,15},
    {16,18},{19,21},{22,24},{25,27},{28,31}};
   /*  畫面消除  */
   g_rectangle(200,187,319,398,7,1);
    if(pop_size!=0)
    {
     /* 獲取各遺傳因子 */
      for(i=0;i<G_LENGTH;i++)
      {
n0=0;n1=0;
for(j=0;j<pop_size;j++)
  if(gene[j] [ i]==0) n0++;
  else  n1++;
  if(n0>=n1) g [ i]=0; else g [ i]=1;
      }
      x=220;
      for(i=0;i<12;i++)
      {
y=202+i*16;
for(j=bits [ i][0];j<=bits [ i][1];j++)
if(g[j]==0)
   g_text(x+(j-bits [ i][0])*16,y,4,"0");
   else
   g_text(x+(j-bits [ i][0])*16,y,4,"1");
   }
      }
  }

void g_disp_char(x,y,x1,y1,x2,y2,v)
int x,y,x1,y1,x2,y2;
unsigned char v;
{
   char c[10];
   if(x>=x1&& x<=x2-8 && y>=y1 && y<=y2-10)
   {
   switch(v)
    {
case 0: strcpy(c,"0\0");break;
case 1: strcpy(c,"+\0");break;
case 2: strcpy(c,"-\0");break;
case 3: strcpy(c,"x\0");
   }
   g_text(x,y,15,c);
   }
}
void remove_life(n)               /* 消除第n個個體  */
int n;
{
  iflg[n]=0;
  world[iatr[n][0]][iatr[n][1]]=0;
  g_disp_unit(iatr[n][0],iatr[n][1],0);
  if(food_size+1<=MAX_FOOD)
  {
  food_size++;
  fatr[food_size-1][0]=iatr[n][0];
  fatr[food_size-1][1]=iatr[n][1];
  fatr[food_size-1][2]=1;
  fatr[food_size-1][3]=0;
  fflg[food_size-1]=1;
  world[iatr[n][0]][iatr[n][1]]=5;
  g_disp_unit(iatr[n][0],iatr[n][1],5);
  }
}

void  remove_food(n)              /* 消除第n個食物 */
int n;
{
  fflg[n]=0;
  world[fatr[n][0]][fatr[n][1]]=0;
  g_disp_unit(fatr[n][0],fatr[n][1],0);
  }

void make_lives_and_foods()         /* 設(shè)置虛擬環(huán)境中生物與食物  */
{
  int x,y,i,j;
  pop_size=0;
  food_size=0;
  for(y=0;y<wy;y++)
    for(x=0;x<wx;x++)
    {
      if(world[x][y]==1||world[x][y]==2)
      {
       if(pop_size+1<=MAX_POP)
       {
  pop_size++;
/* 生成遺傳因子 */
           gene[pop_size-1][0]=world[x][y]-1;
    for(i=1;i<G_LENGTH;i++)
      gene[pop_size-1] [ i]=random(2);
           /*  設(shè)定屬性  */
     iatr[pop_size-1][0]=x;
     iatr[pop_size-1][1]=y;
     iatr[pop_size-1][2]=70+random(30);
     iatr[pop_size-1][3]=random(SL_MIN);
     }
       }
       if(world[x][y]==3||world[x][y]==5)
       {
  if(food_size+1<=MAX_FOOD)
  {
  food_size++;
         /* 設(shè)定屬性  */
  fatr[food_size-1][0]=x;
  fatr[food_size-1][1]=y;
  if(world[x][y]==3)
       fatr[food_size-1][2]=0;
  else
       fatr[food_size-1][2]=1;
fatr[food_size-1][3]=random(TL1-1)+1;
}
      }
    }
}

void find_empty(x,y)              /* 尋找虛擬環(huán)境中的空處,返回坐標(biāo)  */
  int *x,*y;
  {
  int ok;
  ok=0;
  while(ok==0)
  {
   *x=random(wx);*y=random(wy);
   if(world[*x][*y]==0) ok=1;
   }
  }

void make_world()                 /* 隨機設(shè)定人工環(huán)境  */
{
int i,j,k,num,x,y;
int ok,overlap;
char choice[3];
double size;
wx=0;
while(wx<10||wx>MAX_WX)
{
     setcolor(15);
     disp_hz16("虛擬環(huán)境長度(10-60)",10,210,20);
     gscanf(300,210,4,0,3,"%s",choice);
     wx=atoi(choice);
  }
wy=0;
while(wy<10||wy>MAX_WY)
{
     setcolor(15);
     disp_hz16("虛擬環(huán)境寬度(10-32)",10,240,20);
     gscanf(300,240,4,0,3,"%s",choice);
     wy=atoi(choice);
  }
for(i=0;i<wy;i++)
  for(j=0;j<wx;j++)
   if(i==0||i==wy-1||j==0||j==wx-1)
    world[j] [ i]=4;
    else    world[j] [ i]=0;
/* 設(shè)定障礙物  */
size=(double)(wx*wy);
num=(int)(size/40.0);
if(num>MAX_POP)  num=MAX_POP;
for(i=0;i<num;i++)
{
   find_empty(&x,&y);
   world[x][y]=4;
   }
num=(int)(size/5.0);
if(num>MAX_FOOD) num=MAX_FOOD;
for(i=0;i<num;i++)
{
ok=0;
while(ok==0)
{
    x=random(wx);y=random(wy);
    if((world[x][y]!=4) &&
       (world[x][y-1]==4 || world[x][y+1]==4 ||
        world[x-1][y]==4 || world[x+1][y]==4))
{  world[x][y]=4;
    ok=1;
    }
    }
}

  for(y=0;y<wy;y++)
  for(x=0;x<wx;x++)
    if(world[x][y]==0)
    {
    num=0;
    for(i=-1;i<=1;i++)
     for(j=-1;j<=1;j++)
       if(get_world(x+j,y+i)==4)
       num++;
       if(num>=6) world[x][y]=4;
       }
  /*  設(shè)定生物  */
  num=(int)(size*R_LIFE);
  for(i=0;i<num;i++)
  {  find_empty(&x,&y);
     world[x][y]=random(2)+1;
     }
  /* 設(shè)定食物  */
  num=(int)(size*R_FOOD);
  for(i=0;i<num;i++)
     {
     find_empty(&x,&y);
     world[x][y]=3;
}
}

void load_world_file()         /* 讀取虛擬環(huán)境數(shù)據(jù)文件設(shè)定  */
{
FILE *fopen(),*fpt;
char st[100],c;
int i,j;
if((fpt=fopen("\\ga\\world","r"))==NULL) exit(-1);
else
{
   fscanf(fpt,"%d",&wx);
   fscanf(fpt,"%d",&wy);
   for(i=0;i<wy;i++)
    for(j=0;j<wx;j++)
    fscanf(fpt,"%d",&world[j] [ i]);
    fclose(fpt);
    }
}

int get_world(x,y)             /*坐標(biāo)(x,y)處環(huán)境值  */
int x,y;
{
   if(x>=0 && x<wx && y>=0 && y<wy)
   return(world[x][y]);
  else
  return(-1);
}

int  decode_gene(n,sb,bw)               /* 第n個個體基因型解碼  */
int  n,sb,bw;                           /*  sb開始位  bw位長 */
{
  int i,sum;
  sum=0;
  for(i=sb;i<sb+bw;i++)
  sum=sum*2+gene[n] [ i];
  return(sum);
  }

void  move_pos(n,x1,y1,x2,y2)          /* 個體n從(x1,y1)移動到(x2,y2)   */
int n,x1,y1,x2,y2;
{
  int sp,loss;
  loss=decode_gene(n,12,1)+1;          /* 移動消耗 */
  iatr[n][2]=iatr[n][2]-loss;          /*  內(nèi)部能量更新 */
  if(iatr[n][2]<=0)  remove_life(n);
  else
  {
    /* 個體屬性更新 */
    iatr[n][0]=x2;iatr[n][1]=y2;       /* x,y坐標(biāo)更新 */
    /* 顯示更新 */
    sp=gene[n][0]+1;
    g_disp_unit(x1,y1,0);              /*  當(dāng)前位置(x,y)圖形消除 */
    world[x1][y1]=0;
    g_disp_unit(x2,y2,sp);             /*  新位置圖形表示 */
    world[x2][y2]=sp;
  }
}

void  move_randomly(n)                /*  個體n按照移動模式隨機移動 */
int n;
{
  
/* 基本移動模式1  */
int  pat1[8][2]={{1,0},{1,1},{0,1},{-1,1},
    {-1,0},{-1,-1},{0,-1},{1,-1}};
  /* 基本移動模式2與3  */
int pat2_3[2][4][2]={{{1,0},{0,1},{-1,0},{0,-1}},
    {{1,1},{-1,1},{-1,-1},{1,-1}}};
int pat,x1,y1,x2,y2,rndnum;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡的av电影| 午夜欧美在线一二页| 国产黑丝在线一区二区三区| 久久精品一区二区三区四区| 国产精品乡下勾搭老头1| 欧美激情一区二区三区| 成人av网址在线| 亚洲一区二区三区自拍| 欧美一区二区三区视频在线观看| 久久se精品一区二区| 亚洲欧美一区二区视频| 欧美亚洲综合在线| 精品一区二区三区在线观看| 国产色爱av资源综合区| 91久久人澡人人添人人爽欧美| 亚洲成人免费视频| 久久久综合网站| 一本一本大道香蕉久在线精品 | 一区二区三区四区精品在线视频| 欧美日韩国产一二三| 九九久久精品视频| 中文字幕日韩一区| 51精品久久久久久久蜜臀| 国产精品99久久久久久似苏梦涵| 亚洲精品成人精品456| 欧美电影免费提供在线观看| 成人免费观看av| 日韩和欧美的一区| 国产女人aaa级久久久级 | 亚洲欧洲成人精品av97| 69堂精品视频| 99免费精品在线观看| 日韩精品乱码av一区二区| 国产目拍亚洲精品99久久精品 | 欧美一区二区大片| 成人av网站在线| 免费xxxx性欧美18vr| 亚洲精品国产视频| 欧美激情一区二区三区在线| 91精品国产一区二区三区蜜臀| 欧美精品乱码久久久久久按摩| 懂色av噜噜一区二区三区av| 天堂蜜桃一区二区三区| 中文字幕一区在线| 亚洲精品一区二区三区香蕉 | 免费观看在线综合色| 亚洲视频一区二区免费在线观看| 精品日韩成人av| 欧美三级三级三级爽爽爽| 成人丝袜视频网| 久久不见久久见免费视频1| 亚洲电影欧美电影有声小说| 国产精品免费av| 久久这里都是精品| 日韩一区二区三区高清免费看看| 91色porny蝌蚪| 成人在线综合网站| 国产精品一区免费在线观看| 麻豆极品一区二区三区| 天天综合色天天| 亚洲一区二区在线免费观看视频| 国产精品久久久久久久久免费桃花 | 日韩精品亚洲一区| 亚洲一级二级在线| 一区二区三区日韩欧美| 亚洲免费观看高清| 国产精品毛片a∨一区二区三区| www国产成人免费观看视频 深夜成人网| 欧美高清hd18日本| 欧美美女一区二区三区| 欧美色精品天天在线观看视频| 色8久久人人97超碰香蕉987| 色噜噜久久综合| 欧美在线免费视屏| 欧美日韩国产一二三| 在线播放中文一区| 日韩精品最新网址| 日韩一区二区精品在线观看| 91精品国产色综合久久| 91精品国产综合久久福利软件| 91精品国产综合久久香蕉的特点| 337p亚洲精品色噜噜狠狠| 91精品国模一区二区三区| 日韩欧美综合在线| 久久理论电影网| 综合婷婷亚洲小说| 亚洲在线视频一区| 美女视频黄久久| 国产一区二区在线视频| 国产成人在线网站| 91小视频免费观看| 欧美视频自拍偷拍| 日韩欧美资源站| 久久蜜桃香蕉精品一区二区三区| 日本一区二区不卡视频| 亚洲欧美另类久久久精品| 亚洲成人精品一区| 六月丁香综合在线视频| 成人综合婷婷国产精品久久| 色综合久久久久综合体桃花网| 欧美日韩国产小视频在线观看| 日韩欧美电影在线| 国产精品久久久久婷婷二区次| 一区二区激情视频| 国内精品在线播放| 色婷婷av一区二区三区软件| 91精品欧美综合在线观看最新| 久久久久久久综合狠狠综合| 伊人开心综合网| 男女男精品视频| caoporn国产一区二区| 欧美精品精品一区| 国产亚洲福利社区一区| 亚洲一区二区偷拍精品| 国产伦精品一区二区三区在线观看| 99精品国产热久久91蜜凸| 欧美一区二区视频观看视频| 亚洲欧洲精品成人久久奇米网| 欧美aaaaa成人免费观看视频| 高清不卡一二三区| 8x福利精品第一导航| 自拍偷拍亚洲欧美日韩| 美女一区二区三区在线观看| 91香蕉视频在线| 26uuu精品一区二区三区四区在线| 1024成人网色www| 久久99热国产| 欧美性生活久久| 国产精品人妖ts系列视频| 无吗不卡中文字幕| 色综合色综合色综合| 精品国产电影一区二区| 亚洲五码中文字幕| 成人晚上爱看视频| 精品国产在天天线2019| 亚洲成人免费在线| 色哟哟日韩精品| 中文字幕va一区二区三区| 久久国产视频网| 欧美精品丝袜久久久中文字幕| 国产精品青草综合久久久久99| 久久草av在线| 欧美一区二区免费观在线| 亚洲一区二区三区视频在线播放| 成人av一区二区三区| 日本一区二区三区在线观看| 久久成人免费电影| 欧美va亚洲va| 青娱乐精品在线视频| 欧美日韩精品福利| 亚洲午夜成aⅴ人片| 色又黄又爽网站www久久| 国产精品久久久久一区二区三区共| 国产精品正在播放| 精品国产髙清在线看国产毛片| 日本v片在线高清不卡在线观看| 欧美在线观看一区| 亚洲免费观看在线视频| 99视频有精品| 亚洲丝袜精品丝袜在线| 91麻豆国产自产在线观看| 中文字幕日韩欧美一区二区三区| 国产成人精品免费网站| 亚洲国产高清aⅴ视频| 高清shemale亚洲人妖| 中文一区在线播放| 不卡视频免费播放| 亚洲日本中文字幕区| 色婷婷精品大在线视频| 亚洲影视在线播放| 欧美人成免费网站| 日本欧美久久久久免费播放网| 91精品国产综合久久小美女| 蜜臀av国产精品久久久久| 欧美成人福利视频| 国产一区二区三区在线观看免费| 久久久亚洲精品石原莉奈| 粉嫩一区二区三区在线看| 18成人在线视频| 色婷婷综合久色| 五月婷婷欧美视频| 日韩欧美一二三四区| 国产福利91精品一区二区三区| 中文字幕一区视频| 欧美色网一区二区| 久久国产精品99精品国产| 国产欧美一区在线| 91久久精品一区二区| 日韩有码一区二区三区| 国产午夜亚洲精品不卡| 9人人澡人人爽人人精品| 亚洲一二三四久久| 欧美不卡一二三| av在线不卡网| 天天综合网天天综合色| 日本一区二区视频在线观看| 欧美日韩综合不卡| 国产永久精品大片wwwapp| 亚洲欧美经典视频| 精品国产成人系列|