• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于圖元裝接模式由程序流程圖自動(dòng)生成源代碼

    2017-01-17 16:56許秀林李蘊(yùn)華
    軟件工程 2016年11期
    關(guān)鍵詞:程序代碼流程圖C語言

    許秀林+李蘊(yùn)華

    摘 要:針對(duì)程序流程圖到代碼自動(dòng)翻譯過程中,通常需要經(jīng)過代碼優(yōu)化及二次編程,翻譯效率不高,提出基于圖元裝接模式的流程圖到C語言源程序轉(zhuǎn)換的解決方案,實(shí)現(xiàn)流程圖到源程序的雙向轉(zhuǎn)換。由圖元同步產(chǎn)生代碼元,通過裝接自動(dòng)生成程序代碼。所生成的程序代碼無需修改,可直接編譯運(yùn)行。通過詞法分析,識(shí)別并產(chǎn)生代碼元和對(duì)應(yīng)圖元,可逆向生成流程圖。其有效性在原型系統(tǒng)中得到了驗(yàn)證。

    關(guān)鍵詞:C語言;流程圖;程序代碼;自動(dòng)翻譯

    中圖分類號(hào):TP311.5 文獻(xiàn)標(biāo)識(shí)碼:A

    1 引言(Introduction)

    對(duì)于程序設(shè)計(jì)語言初學(xué)者來說,通過畫流程圖來學(xué)習(xí)程序編碼,將程序代碼與直觀的圖形相結(jié)合,可以起到事半功倍的學(xué)習(xí)效果。若用草圖來繪制程序流程圖,并且實(shí)現(xiàn)流程圖的自動(dòng)識(shí)別和代碼生成,不僅符合人的思維習(xí)慣,也將大大方便程序設(shè)計(jì)課程的教學(xué),同時(shí)也可應(yīng)用于程序員的快速程序設(shè)計(jì)和編碼。

    目前,國內(nèi)外很多學(xué)者對(duì)手繪草圖識(shí)別的研究已有較大進(jìn)展,可較好地識(shí)別程序流程圖中的簡單圖元符號(hào)。但是對(duì)程序流程圖控制結(jié)構(gòu)的判別,以及代碼的自動(dòng)翻譯的研究較少。程序流程圖到代碼自動(dòng)生成的流程,通常分為草圖識(shí)別和代碼優(yōu)化兩個(gè)階段,當(dāng)前的研究熱點(diǎn)或技術(shù)難點(diǎn)是圖元的識(shí)別和翻譯,文獻(xiàn)[1,2]設(shè)計(jì)了圖元節(jié)點(diǎn)存儲(chǔ)結(jié)構(gòu),在圖元識(shí)別的基礎(chǔ)上,提出基于上下文的程序流程草圖自動(dòng)翻譯算法,實(shí)現(xiàn)了在線手繪程序流程草圖到C語言代碼的自動(dòng)翻譯。但該系統(tǒng)所能判別的基本圖元比較單一,而且在判斷程序流程圖控制結(jié)構(gòu)時(shí),采用棧技術(shù),若用戶采用非習(xí)慣性思維畫圖,可能會(huì)導(dǎo)致棧頂元素?zé)o法正確判別,在一定程度上影響識(shí)別結(jié)果。文獻(xiàn)[3-5]則是對(duì)程序流程圖到代碼的自動(dòng)生成技術(shù)的研究,然而所研究的程序流程圖到代碼的自動(dòng)生成工具對(duì)流程圖有諸多限制,并不是基于標(biāo)準(zhǔn)的程序流程圖。文獻(xiàn)[6]針對(duì)標(biāo)準(zhǔn)的程序流程圖,實(shí)現(xiàn)程序流程圖到代碼的自動(dòng)生成,并且對(duì)于含有continue/break/return語義的程序流程圖也能夠很好地識(shí)別并生成相應(yīng)的代碼。文獻(xiàn)[7]融合圖形化和文本語言兩種編程方式的優(yōu)點(diǎn),提出流程圖與類C語言雙向?qū)崟r(shí)轉(zhuǎn)換方法:一方面通過遍歷模塊樹并參照功能模塊封裝的庫函數(shù)和語句完成流程圖到類C語言的轉(zhuǎn)換;另一方面采用XML作為中間代碼完成類C語言到流程圖的轉(zhuǎn)換。文獻(xiàn)[8]實(shí)現(xiàn)了程序流程圖的自動(dòng)生成和實(shí)時(shí)修改,提高了程序流程圖的設(shè)計(jì)效率,但沒有實(shí)現(xiàn)程序代碼的同步生成。

    本文結(jié)合上述文獻(xiàn)的研究成果,提出手工草圖→機(jī)繪流程圖→C語言源程序轉(zhuǎn)換的解決方案,目前已實(shí)現(xiàn)了機(jī)繪流程圖到源程序的雙向轉(zhuǎn)換,即按照“圖元+裝接”模式繪制流程圖,同步生成程序代碼;或通過本系統(tǒng)生成的源代碼,逆向生成流程圖。

    2 圖元與代碼元(The graphics primitive and the code primitive)

    2.1 圖元

    C語言流程圖有傳統(tǒng)流程圖(FC)、盒圖(N-S)、PAD等。其中傳統(tǒng)流程圖比較直觀、形式化,易于理解。但由于對(duì)流程連接線的使用沒有嚴(yán)格限制,使流程隨意轉(zhuǎn)來轉(zhuǎn)去,缺少規(guī)律。特別是傳統(tǒng)流程圖繪制后,修改流程圖需要大量移動(dòng)流程連接線,非常煩瑣。為此,我們根據(jù)C語言程序語句基本結(jié)構(gòu),將基本圖形和連接線組合,定義了六種圖元(圖1):if圖元、for圖元、while圖元、do-while圖元、switch圖元、基本語句圖元。圖元中菱形為決策圖標(biāo),矩形為基本語句圖標(biāo),實(shí)線為普通連接線,虛線為圖元裝接線。

    根據(jù)程序語句的基本功能,基本語句圖元又分為文件包含、常量定義、變量定義、鍵盤輸入、屏幕輸出、文件打開、文件關(guān)閉、文件輸入、文件輸出、賦值語句,以及其他基本語句(通用語句)等十類。

    2.2 代碼元

    代碼元是與圖元相對(duì)應(yīng)的程序代碼,分別有if代碼元、for代碼元、while代碼元、do-while代碼元、switch代碼元、基本語句代碼元(表1)。表中的代碼元對(duì)應(yīng)的程序代碼只是其初始狀態(tài),呈現(xiàn)為程序語句的骨架,只有通過進(jìn)一步處理之后,才能成為一條完整的程序語句。

    3 圖元處理與流程圖繪制(Primitive processing and flowchart drawing)

    3.1 圖元生成

    (1)定義圖元基類

    圖元基類包含圖元必備元素和基本操作。必備元素主要有圖元的坐標(biāo)位置、高度、寬度、圖元文本(含量代碼與注釋)、友元信息、圖元裝接信息、圖元編輯信息等。基本操作有位置移動(dòng)、大小改變、選擇、取消選擇、插入圖元、刪除圖元、繪制圖元。

    public class FC_Control //圖元控件基類

    {

    private int x,y; //圖元坐標(biāo)

    private int width,height; //圖元寬度與高度

    private int wLeft,wRight;//圖元左寬與右寬

    private bool selected; //圖元選中標(biāo)識(shí)

    private int child_brother;//圖元裝接信息

    //1 為左孩子結(jié)點(diǎn),2為右孩子結(jié)點(diǎn),0為兄弟結(jié)點(diǎn),-1為初始值(無效)

    private CODE_Control friendObj;//圖元友元信息

    public string[] txtCode=new string[11];//圖元文本信息

    public string[] txtComment=new string[11];//圖元文本信息

    virtual public void moveTo(int x,int y) //移動(dòng)到新坐標(biāo)

    {

    X=x;

    Y=y;

    }

    virtual public void reSize() { } //大小改變操作

    virtual public FC_Control select(int x,int y) { return null; }

    //選擇操作(已知坐標(biāo)位置選擇對(duì)象)

    virtual public bool select(FC_Control obj) { return false; }

    //選擇操作(已知對(duì)象信息,選擇對(duì)象位置)

    virtual public void escape() { bSelected=false; }//取消操作

    virtual public void draw() { }//繪圖操作

    virtual public void delete(FC_Control obj) { }//刪除操作

    virtual public FC_Control insert(int x,int y,F(xiàn)C_Control obj) { return null; }

    //插入操作(已知坐標(biāo)位置,插入特定對(duì)象)

    virtual public void insert(FC_Control insertObj,F(xiàn)C_Control indexObj,int index) { }

    //插入操作(已知對(duì)象信息,插入特定對(duì)象)

    }

    (2)定義圖元類

    圖元類是圖元基類的子類,它繼承了基類的所有屬性和方法,同時(shí)還具有以下兩個(gè)屬性:圖元的孩子對(duì)象集和對(duì)象數(shù)。圖元的孩子對(duì)象包括判斷圖標(biāo)、判斷分支、圖元連接線和圖元裝接線。以while圖元為例,它由1個(gè)判斷圖標(biāo)、2個(gè)判斷分支(Y/N)、2條(5段)圖元連接線和1條圖元裝接線,共計(jì)9個(gè)對(duì)象。下面while圖元類屬性定義及其構(gòu)造方法:

    public class FcWhile : FC_Control //while圖元類

    {

    public int numOfObject=9; //組成圖元的對(duì)象數(shù)

    public FC_Control[] N=new FC_Control[9]; //組成圖元的對(duì)象集

    public image;//畫布

    public FcWhile(int x,int y,F(xiàn)C_image )

    {

    X=x;

    Y=y;

    image=FC_image;

    bool arrow=true;

    int defaultWidth=50;

    int defaultHeight=50;

    N[0]=new FcJudge(X,Y,F(xiàn)C_image);//判斷圖標(biāo)

    N[1]=new FcJudgeBranch(N[0].X,N[0].Y+N[0].H,F(xiàn)C_image,true,LINEWAY.DOWN);//判斷Y分支

    N[2]=new FcCodingLine(N[1].X,N[1].Y+N[1].H,LINE_TYPE.CODINGLINE_IN_FUNCTION,F(xiàn)C_image);//圖元裝接線

    N[3]=new FcLine(N[2].X,N[2].Y+N[2].H,LINEWAY.LEFT,!arrow,LINE_TYPE.NOTCODINGLINE,F(xiàn)C_image);//(左下端)向左連接線

    N[3].W=defaultWidth;

    N[4]=new FcLine(N[3].X-N[3].W,N[3].Y,LINEWAY.UP,!arrow,LINE_TYPE.NOTCODINGLINE,F(xiàn)C_image);//(左邊)向上連接線

    N[4].H=N[1].H+N[2].H+N[0].H/2;

    N[5]=new FcLine(N[4].X,N[4].Y-N[4].H,LINEWAY.RIGHT,arrow,LINE_TYPE.NOTCODINGLINE,F(xiàn)C_image);//(左上端)向右?guī)Ъ^連接線

    N[5].W=N[3].W-N[0].WL;

    N[6]=new FcJudgeBranch(N[0].X+N[0].WR,N[0].Y+N[0].H/2,F(xiàn)C_image,false,LINEWAY.RIGHT);//判斷N分支

    N[7]=new FcLine(N[6].X+N[6].W,N[6].Y,LINEWAY.DOWN,!arrow,LINE_TYPE.NOTCODINGLINE,F(xiàn)C_image);//(右邊)向下連接線

    N[7].H=N[4].H+defaultHeight;

    N[8]=new FcLine(N[7].X,N[7].Y+N[7].H,LINEWAY.LEFT,arrow,LINE_TYPE.NOTCODINGLINE,F(xiàn)C_image);//(右下端)帶箭頭連接線

    N[8].W=N[6].W+N[0].WR;

    WR=N[8].W;

    WL=N[3].W;

    W=WL+WR;//計(jì)算圖元寬度

    H=N[0].H/2+N[7].H;//計(jì)算圖元高度

    txtCode[0]="";

    txtComment[0]="";

    }

    ……

    }

    (3)生成圖元對(duì)象

    當(dāng)用戶通過菜單項(xiàng)或圖標(biāo)工具插入某個(gè)圖元時(shí),生成該圖元對(duì)象。同樣以while圖元為例,在插入while圖元方法中生成圖元對(duì)象。

    public void insert_While(int x,int y)

    {

    int X,Y;

    X=x;

    Y=y;

    FcWhile w=new FcWhile(X,Y,F(xiàn)C_image); //生成while圖元對(duì)象

    … …

    }

    3.2 圖元裝接

    圖元裝接是將圖元對(duì)象按指定的坐標(biāo)位置插入到圖元裝接線上。圖2是流程圖的初始畫面,從開始到結(jié)束之間,是由兩條裝接線組成。上端黃色裝接線用于插入帶#的圖元對(duì)象,下端藍(lán)色裝接線用于插入其他圖元對(duì)象。圖元裝接根據(jù)裝接對(duì)象的位置關(guān)系分為順序裝接和嵌入裝接兩類:對(duì)于某個(gè)已裝接的圖元對(duì)象A,當(dāng)待裝接的圖元對(duì)象B與圖元對(duì)象處于同一條裝接線,則為順序裝接如圖3(a)所示;當(dāng)圖元對(duì)象B處于圖元對(duì)象A內(nèi)部的裝接線時(shí),則屬于嵌入裝接如圖3(b)所示。

    3.3 圖元文本編輯

    圖元裝接只是決定了了流程圖的流程走向,程序功能則需要通過圖元文本編輯,確定每個(gè)圖元的具體功能。現(xiàn)以while圖元為例,說明圖元文本編輯的過程。while圖元的文本編輯,主要是while循環(huán)條件表達(dá)式的編輯。先選中while圖元,然后打開該圖元的屬性頁進(jìn)行相關(guān)的文字編輯,如圖4所示。編輯后的while圖元在左上方添加了條件表達(dá)式,如圖5所示。

    3.4 示例

    任務(wù):輸入兩個(gè)正整數(shù)a、b,求兩個(gè)數(shù)的最大公約數(shù)。

    算法:

    ①定義變量a、b、c為正整數(shù)

    ②鍵盤輸入a和b

    ③if (a

    ④if b≠0 goto ④,否則goto ⑧

    ⑤c←a除b的余數(shù);

    ⑥a←b

    ⑦b←c

    ⑧goto ④

    ⑨輸出公約數(shù)a

    ⑩結(jié)束

    本任務(wù)主要使用一個(gè)if圖元和while圖元和若干基本語句圖元。通過圖元裝接和圖元編輯后,所繪制的流程圖,如圖6所示。

    4 代碼程序自動(dòng)生成(The program code beingautomatically generated)

    與圖元處理相同,代碼元處理同樣有生成、裝接和編輯等操作。由于代碼元與圖元一一對(duì)應(yīng),圖元處理和代碼元處理同步完成。當(dāng)流程圖繪制完畢時(shí),對(duì)應(yīng)的源程序也生成完畢,處理過程如圖7所示。

    為了確保圖元對(duì)象與代碼元對(duì)象一一對(duì)應(yīng),在圖元基類和代碼元基類中均設(shè)置了一個(gè)友元屬性變量friendObj,分別存儲(chǔ)對(duì)方信息。在圖元基類和代碼元基類定義的相關(guān)代碼為:

    public class FC_Control //圖元控件基類

    {

    … …

    private CODE_Control friendObj;//圖元友元信息

    … …

    }

    public class CODE_Control //圖元控件基類

    {

    … …

    private FC_Control friendObj;//代碼元友元信息

    … …

    }

    在圖元和代碼元生成時(shí),相互記錄對(duì)方的信息,仍以圖元while為例:

    FcWhile w1=new FcWhile(X,Y,F(xiàn)C_image);

    CodeWhile w2=new CodeWhile(0,0,CODE_image);

    w1.friend=w2; //friend 是設(shè)置或獲取屬性

    //變量friendObj值的方法

    w2.friend=w1;

    當(dāng)在流程圖中插入圖元對(duì)象w1時(shí),也在程序代碼中插入代碼元對(duì)象w2,同步完成裝接。由流程圖(圖6)同步生成的程序代碼如圖8所示。

    5 代碼元識(shí)別與流程圖逆生成(The identification of code primitive and the flowchart being produced reverse from the source program)

    對(duì)于生成的C語言源程序文件,通過詞法分析器對(duì)關(guān)鍵詞的識(shí)別,生成相應(yīng)的代碼元對(duì)象,并同步生成圖元對(duì)象。再經(jīng)過圖元裝接,逆向生成流程圖。由于流程圖文件是圖片格式,一旦形成圖片文件,再轉(zhuǎn)換成圖元對(duì)象,比文本識(shí)別要困難得多。通過程序代碼文本文件閱讀和識(shí)別,生成代碼元對(duì)象,再通過代碼元生成圖元對(duì)象,然后接裝為流程圖,方便流程圖的保存和修改。流程圖逆向生過程如圖9所示。

    代碼元識(shí)別算法如下:

    void codeRead(string s)

    {

    if (s==“if”)

    {

    FcIf o1=new FcIf(X,Y,F(xiàn)C_image);

    CodeIf o2=new CodeIf(0,0,CODE_image);

    o1.friend=o2;

    o2.friend=o1;

    FC_p.insert(o1);

    CODE_p.insert(o2);

    }

    else

    if(s==“for”)

    {

    FcFor o1=new FcFor(X,Y,F(xiàn)C_image);

    CodeFor o2=new CodeFor(0,0,CODE_image);

    o1.friend=o2;

    o2.friend=o1;

    FC_p.insert(o1);

    CODE_p.insert(o2);

    }

    else

    if(s==“while”)

    {

    FcWhile o1=new FcWhile (X,Y,F(xiàn)C_image);

    CodeWhile o2=new CodeWhile(0,0,CODE_image);

    o1.friend=o2;

    o2.friend=o1;

    FC_p.insert(o1);

    CODE_p.insert(o2);

    }

    else

    if(s==“do”)

    {

    FcDowhile o1=new Dowhile (X,Y,F(xiàn)C_image);

    CodeDowhile o2=new Dowhile(0,0,CODE_image);

    o1.friend=o2;

    o2.friend=o1;

    FC_p.insert(o1);

    CODE_p.insert(o2);

    }

    else

    if(s==“switch”)

    {

    FcSwitch o1=new FcSwitch (X,Y,F(xiàn)C_image);

    CodeSwitch o2=new CodeSwitch(0,0,CODE_image);

    o1.friend=o2;

    o2.friend=o1;

    FC_p.insert(o1);

    CODE_p.insert(o2);

    }

    else

    }

    5 結(jié)論(Conclusion)

    本文提出了一個(gè)基于圖元裝接的流程圖繪制原型系統(tǒng),用戶可以通過鼠標(biāo)點(diǎn)擊圖元控件,在繪圖區(qū)域繪制C程序傳統(tǒng)流程圖,并同步生成C語言源程序。所繪制的流程圖以JPG文件格式、源程序以文本格式分別保存到磁盤。同時(shí)還具有源程序到流程圖逆生成功能,通過源代碼可以進(jìn)行流程圖二次編輯和修改。今后,我們將完成流程圖手繪草圖的識(shí)別和轉(zhuǎn)換研究,將手工流程圖的圖元,轉(zhuǎn)換為本系統(tǒng)的圖元,裝接后生成機(jī)繪流程圖,再同步生成源程序,提高流程圖的識(shí)別效率。

    參考文獻(xiàn)(References)

    [1] 何驊,諸彬,徐從富.程序流程草圖的存儲(chǔ)表示及自動(dòng)翻譯算法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2009,18(4):57-60.

    [2] 諸彬,何驊,徐從富.基于草圖的程序流程圖自動(dòng)識(shí)別翻譯系統(tǒng)[J].計(jì)算機(jī)應(yīng)用與軟件,2010,27(5):55-56.

    [3] Martin C C,et al.RAPTOR:Introducing Programming to Non-Majors with Flowcharts[J].Journal of Computing Science in Colleges,2004,19(4):52-60.

    [4] Kains C Somkiat W.Visual Programming Using Flowchart[C].Communications and information Technologies.Bangkok:ISCIT'06 2006:1062-1065.

    [5] Drazen L,Ivan F.A.Visual Programming Language for Drawing and Executing Flowcharts[C].Proc of the 34th international Convention.Opatija:IEEE,2011:1679-1684.

    [6] 王黎明,等.程序流程圖到代碼的自動(dòng)生成算法[J].西安電子科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,39(6):70-77.

    [7] 鐘志超,等.流程圖與類C語言實(shí)時(shí)轉(zhuǎn)換方法[J].東南大學(xué)學(xué)報(bào)(自然科學(xué)版),2009,39(3):503-507.

    [8] 才忠勝,等.流程圖的自動(dòng)生成系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013,22(12):43-46.

    作者介紹:

    許秀林(1965-),男,碩士,教授.研究領(lǐng)域:軟件工程,智能算法.

    李蘊(yùn)華(1965-),女,碩士,副教授.研究領(lǐng)域:圖像處理,信號(hào)系統(tǒng).

    猜你喜歡
    程序代碼流程圖C語言
    新工科背景下Matlab對(duì)高等數(shù)學(xué)課堂教學(xué)輔助作用的探討
    基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
    淺談專利審查中程序代碼的審查技巧
    基于C語言的計(jì)算機(jī)軟件編程
    高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
    專利申請(qǐng)審批流程圖
    專利申請(qǐng)審批流程圖
    論子函數(shù)在C語言數(shù)據(jù)格式輸出中的應(yīng)用
    寧??h村級(jí)權(quán)力清單36條
    《天津醫(yī)藥》稿件處理流程圖
    啦啦啦在线观看免费高清www| 日日撸夜夜添| 国产男女内射视频| 美女xxoo啪啪120秒动态图| 日本av手机在线免费观看| 国产av国产精品国产| 国产精品久久久久成人av| 另类精品久久| 热99久久久久精品小说推荐| 熟女电影av网| 日韩制服骚丝袜av| 人人妻人人添人人爽欧美一区卜| 国产黄色视频一区二区在线观看| 欧美97在线视频| 国产精品.久久久| 国产黄色免费在线视频| 国产精品 欧美亚洲| 9191精品国产免费久久| 中文字幕制服av| 80岁老熟妇乱子伦牲交| 母亲3免费完整高清在线观看 | 女性被躁到高潮视频| 纯流量卡能插随身wifi吗| 国产av一区二区精品久久| 国产熟女欧美一区二区| 日韩一卡2卡3卡4卡2021年| 9色porny在线观看| 韩国av在线不卡| 国产成人精品一,二区| 欧美激情极品国产一区二区三区| 欧美bdsm另类| 在线观看美女被高潮喷水网站| 久久久久精品性色| 日韩欧美一区视频在线观看| 免费女性裸体啪啪无遮挡网站| 欧美日韩精品成人综合77777| 久久午夜综合久久蜜桃| 国产精品免费视频内射| 两个人免费观看高清视频| 熟女电影av网| av免费在线看不卡| 男男h啪啪无遮挡| 丰满饥渴人妻一区二区三| 久久婷婷青草| freevideosex欧美| 精品一区在线观看国产| 亚洲国产色片| 国产日韩欧美在线精品| 亚洲国产精品一区二区三区在线| 一边亲一边摸免费视频| 男人爽女人下面视频在线观看| 国产在线一区二区三区精| 亚洲久久久国产精品| 91午夜精品亚洲一区二区三区| 日韩中文字幕视频在线看片| 午夜91福利影院| 18禁动态无遮挡网站| 蜜桃在线观看..| 国产女主播在线喷水免费视频网站| 七月丁香在线播放| 色播在线永久视频| 国产乱人偷精品视频| 国产一区二区三区综合在线观看| 91aial.com中文字幕在线观看| 黑人猛操日本美女一级片| 欧美人与性动交α欧美软件| 巨乳人妻的诱惑在线观看| 人体艺术视频欧美日本| 国产一区亚洲一区在线观看| 国产老妇伦熟女老妇高清| 国产在线一区二区三区精| 国产欧美亚洲国产| 日韩精品有码人妻一区| 一本久久精品| 久久国产精品男人的天堂亚洲| 久久久久久久久久人人人人人人| 精品国产一区二区久久| 9191精品国产免费久久| 国产日韩欧美在线精品| 久久久久久久久久久久大奶| av一本久久久久| 曰老女人黄片| 欧美精品高潮呻吟av久久| 精品国产露脸久久av麻豆| 久久久精品国产亚洲av高清涩受| 国产精品久久久久久av不卡| 十八禁高潮呻吟视频| 女人久久www免费人成看片| videosex国产| 26uuu在线亚洲综合色| 久久青草综合色| 激情视频va一区二区三区| 亚洲精品一二三| a级毛片在线看网站| 高清av免费在线| 不卡av一区二区三区| 午夜福利视频在线观看免费| 永久免费av网站大全| 国产亚洲欧美精品永久| 国产精品国产三级国产专区5o| 欧美变态另类bdsm刘玥| 日本av免费视频播放| 久久久久人妻精品一区果冻| 一区二区三区激情视频| 亚洲精品一二三| 超色免费av| 制服人妻中文乱码| 欧美成人精品欧美一级黄| 久久鲁丝午夜福利片| 久久99蜜桃精品久久| 美女xxoo啪啪120秒动态图| 韩国高清视频一区二区三区| 亚洲av电影在线进入| 亚洲欧美成人综合另类久久久| 国产成人免费无遮挡视频| 亚洲国产欧美日韩在线播放| 成人亚洲欧美一区二区av| av片东京热男人的天堂| 美国免费a级毛片| 男女午夜视频在线观看| 国产女主播在线喷水免费视频网站| 大片电影免费在线观看免费| 精品国产超薄肉色丝袜足j| 高清在线视频一区二区三区| 肉色欧美久久久久久久蜜桃| 成人影院久久| 久久久久久久国产电影| 国产熟女欧美一区二区| 国产精品 欧美亚洲| 国产精品国产三级国产专区5o| 欧美激情 高清一区二区三区| av在线观看视频网站免费| 亚洲国产精品一区三区| 婷婷成人精品国产| 色网站视频免费| 女人精品久久久久毛片| 一二三四在线观看免费中文在| 热99久久久久精品小说推荐| 亚洲精品,欧美精品| 观看美女的网站| 国产精品久久久久久久久免| 人体艺术视频欧美日本| 欧美国产精品一级二级三级| 另类精品久久| 在线天堂最新版资源| 一本—道久久a久久精品蜜桃钙片| 又黄又粗又硬又大视频| 国产免费又黄又爽又色| 亚洲美女黄色视频免费看| av国产精品久久久久影院| 三上悠亚av全集在线观看| 免费高清在线观看日韩| 免费av中文字幕在线| 一级黄片播放器| 伦精品一区二区三区| 最黄视频免费看| 欧美日韩国产mv在线观看视频| 丁香六月天网| 2022亚洲国产成人精品| 卡戴珊不雅视频在线播放| 99久久人妻综合| 免费观看在线日韩| 国产一区二区 视频在线| 老汉色∧v一级毛片| 国产在线免费精品| 欧美日韩亚洲国产一区二区在线观看 | 久久婷婷青草| 婷婷色综合大香蕉| 国产精品熟女久久久久浪| 两个人免费观看高清视频| 午夜av观看不卡| 亚洲精品av麻豆狂野| 久久精品国产a三级三级三级| 久久国产精品大桥未久av| 久久久久国产一级毛片高清牌| 日韩 亚洲 欧美在线| 一本一本久久a久久精品综合妖精 国产伦在线观看视频一区 | 性色avwww在线观看| 国产日韩欧美在线精品| 亚洲美女黄色视频免费看| 久久 成人 亚洲| tube8黄色片| av网站免费在线观看视频| 亚洲av电影在线观看一区二区三区| 超碰97精品在线观看| 国产一区二区激情短视频 | 精品一品国产午夜福利视频| 69精品国产乱码久久久| 国产精品嫩草影院av在线观看| 精品人妻在线不人妻| 91国产中文字幕| 美女福利国产在线| 另类亚洲欧美激情| 精品国产乱码久久久久久小说| 夜夜骑夜夜射夜夜干| 午夜免费观看性视频| 国产黄频视频在线观看| 不卡av一区二区三区| 亚洲视频免费观看视频| 少妇人妻久久综合中文| 曰老女人黄片| 久久久国产精品麻豆| 大码成人一级视频| 欧美日韩亚洲高清精品| 国产女主播在线喷水免费视频网站| 国产精品一区二区在线不卡| videos熟女内射| 亚洲一区二区三区欧美精品| 久久精品国产综合久久久| 日韩电影二区| 久久精品国产自在天天线| 最近手机中文字幕大全| 亚洲成av片中文字幕在线观看 | 久久精品久久久久久久性| 黄色一级大片看看| 男女边吃奶边做爰视频| 国产深夜福利视频在线观看| 这个男人来自地球电影免费观看 | 亚洲精品国产av蜜桃| 亚洲第一区二区三区不卡| 伦理电影免费视频| 一个人免费看片子| 亚洲天堂av无毛| 大片免费播放器 马上看| 日韩视频在线欧美| 欧美bdsm另类| 日本爱情动作片www.在线观看| 国产精品蜜桃在线观看| 亚洲第一区二区三区不卡| 在线观看美女被高潮喷水网站| av在线app专区| 亚洲精品自拍成人| 亚洲欧美清纯卡通| 国产在线视频一区二区| 色哟哟·www| 女人被躁到高潮嗷嗷叫费观| 日本-黄色视频高清免费观看| 欧美精品av麻豆av| 亚洲国产精品国产精品| 亚洲美女黄色视频免费看| av电影中文网址| 18禁国产床啪视频网站| av又黄又爽大尺度在线免费看| 久久久久久免费高清国产稀缺| 亚洲av电影在线进入| 欧美另类一区| 午夜影院在线不卡| 免费在线观看黄色视频的| 国产成人aa在线观看| 久久久国产精品麻豆| 黑人猛操日本美女一级片| 精品亚洲乱码少妇综合久久| 久久99蜜桃精品久久| 午夜福利影视在线免费观看| 黄色一级大片看看| 黄片播放在线免费| 天天躁狠狠躁夜夜躁狠狠躁| 99香蕉大伊视频| 中文乱码字字幕精品一区二区三区| 美女高潮到喷水免费观看| 日本猛色少妇xxxxx猛交久久| 亚洲国产欧美日韩在线播放| freevideosex欧美| 曰老女人黄片| 香蕉丝袜av| 成人漫画全彩无遮挡| videos熟女内射| 亚洲熟女精品中文字幕| 色播在线永久视频| 久久av网站| 亚洲精品乱久久久久久| 欧美成人精品欧美一级黄| 国产精品 国内视频| 一二三四中文在线观看免费高清| 国产毛片在线视频| 男女边吃奶边做爰视频| 精品一区二区三卡| 极品人妻少妇av视频| 一级黄片播放器| 欧美激情高清一区二区三区 | 999精品在线视频| 天堂中文最新版在线下载| 久久久久久久久免费视频了| 高清在线视频一区二区三区| 中文欧美无线码| 欧美 亚洲 国产 日韩一| 99re6热这里在线精品视频| 欧美精品国产亚洲| 国产乱人偷精品视频| 男人操女人黄网站| 成年人午夜在线观看视频| 国产白丝娇喘喷水9色精品| 欧美另类一区| 日韩视频在线欧美| 成年女人毛片免费观看观看9 | 午夜免费鲁丝| kizo精华| av又黄又爽大尺度在线免费看| 天天躁夜夜躁狠狠躁躁| 天天躁夜夜躁狠狠久久av| av卡一久久| 蜜桃在线观看..| 大片电影免费在线观看免费| 丁香六月天网| 精品一区二区三区四区五区乱码 | 国产精品女同一区二区软件| 一区二区日韩欧美中文字幕| 美女国产视频在线观看| 伊人久久大香线蕉亚洲五| 国产精品国产三级专区第一集| 久久国内精品自在自线图片| 99国产精品免费福利视频| 夫妻午夜视频| 成年动漫av网址| 国产成人91sexporn| 韩国高清视频一区二区三区| 美女大奶头黄色视频| 亚洲精品国产av成人精品| 九草在线视频观看| 久久久久久久精品精品| 免费看不卡的av| 熟女少妇亚洲综合色aaa.| 九九爱精品视频在线观看| 国产极品天堂在线| 又黄又粗又硬又大视频| 肉色欧美久久久久久久蜜桃| 嫩草影院入口| 国产精品.久久久| 久久综合国产亚洲精品| 亚洲欧美成人精品一区二区| 欧美另类一区| 亚洲第一av免费看| 日日撸夜夜添| 十八禁高潮呻吟视频| 日本色播在线视频| 亚洲精品在线美女| 国产精品国产三级专区第一集| 男人爽女人下面视频在线观看| 成人亚洲欧美一区二区av| 啦啦啦中文免费视频观看日本| 亚洲欧美成人精品一区二区| 亚洲精品国产色婷婷电影| 国产色婷婷99| 亚洲成国产人片在线观看| 国产欧美日韩一区二区三区在线| 男人操女人黄网站| 国产无遮挡羞羞视频在线观看| 国产精品 国内视频| 欧美 亚洲 国产 日韩一| 久久女婷五月综合色啪小说| 久久精品久久精品一区二区三区| 久久久久精品人妻al黑| 日本av手机在线免费观看| 国产精品不卡视频一区二区| 国产一区二区 视频在线| 久久久精品免费免费高清| 一本—道久久a久久精品蜜桃钙片| 日韩制服丝袜自拍偷拍| 亚洲av成人精品一二三区| 18禁动态无遮挡网站| 久久99蜜桃精品久久| 少妇 在线观看| 一级片免费观看大全| 国产精品熟女久久久久浪| 最近中文字幕2019免费版| 一二三四中文在线观看免费高清| 久久精品人人爽人人爽视色| 国产av国产精品国产| 欧美人与善性xxx| 亚洲欧洲精品一区二区精品久久久 | 久久久久久人妻| 黄片无遮挡物在线观看| 亚洲成人一二三区av| 最新的欧美精品一区二区| a级毛片黄视频| 高清黄色对白视频在线免费看| 一级毛片我不卡| 伦理电影大哥的女人| 啦啦啦中文免费视频观看日本| 91精品三级在线观看| 丰满迷人的少妇在线观看| 赤兔流量卡办理| 国产亚洲午夜精品一区二区久久| 国产精品国产av在线观看| 亚洲精品国产一区二区精华液| 波多野结衣av一区二区av| 最近最新中文字幕免费大全7| 男人舔女人的私密视频| 26uuu在线亚洲综合色| 国产精品久久久久久久久免| 成人国产麻豆网| 狠狠精品人妻久久久久久综合| 青草久久国产| 国产成人欧美| 亚洲美女视频黄频| 亚洲美女搞黄在线观看| 免费高清在线观看视频在线观看| 不卡av一区二区三区| 在线看a的网站| 99久国产av精品国产电影| 叶爱在线成人免费视频播放| av不卡在线播放| 肉色欧美久久久久久久蜜桃| 国产精品嫩草影院av在线观看| 欧美xxⅹ黑人| 久久久久精品性色| 亚洲一区二区三区欧美精品| 激情视频va一区二区三区| 男人操女人黄网站| 天天躁夜夜躁狠狠躁躁| 性少妇av在线| 国产亚洲av片在线观看秒播厂| 少妇人妻久久综合中文| av在线老鸭窝| 午夜激情久久久久久久| 赤兔流量卡办理| 国产亚洲最大av| 热99久久久久精品小说推荐| 午夜免费鲁丝| 看十八女毛片水多多多| 一区二区三区乱码不卡18| 一级毛片黄色毛片免费观看视频| 国产精品久久久久成人av| 制服丝袜香蕉在线| 在线免费观看不下载黄p国产| 2022亚洲国产成人精品| 国产精品久久久久久精品古装| 免费观看a级毛片全部| 如何舔出高潮| 精品一区二区三区四区五区乱码 | 一本大道久久a久久精品| 免费观看av网站的网址| 久久久久精品性色| 国产精品成人在线| 久久久久久久国产电影| 久久久久久伊人网av| 巨乳人妻的诱惑在线观看| 一边亲一边摸免费视频| 亚洲精品一二三| 国产极品粉嫩免费观看在线| 女性被躁到高潮视频| 肉色欧美久久久久久久蜜桃| a级毛片黄视频| 母亲3免费完整高清在线观看 | 纵有疾风起免费观看全集完整版| 久久精品夜色国产| 欧美人与性动交α欧美精品济南到 | 精品少妇黑人巨大在线播放| 国精品久久久久久国模美| videosex国产| 毛片一级片免费看久久久久| 午夜福利在线观看免费完整高清在| 亚洲精品国产av成人精品| 国产免费福利视频在线观看| 秋霞在线观看毛片| 欧美人与性动交α欧美精品济南到 | 看免费成人av毛片| 99久久综合免费| 精品国产一区二区三区久久久樱花| 久久国内精品自在自线图片| 这个男人来自地球电影免费观看 | 日本黄色日本黄色录像| 91精品国产国语对白视频| 国产av精品麻豆| 中文乱码字字幕精品一区二区三区| 美女大奶头黄色视频| 国产乱来视频区| 日韩伦理黄色片| 精品人妻一区二区三区麻豆| 一边亲一边摸免费视频| 国产精品二区激情视频| 99久久综合免费| 日本-黄色视频高清免费观看| 久久久久国产精品人妻一区二区| 国产精品无大码| 天天躁夜夜躁狠狠躁躁| 中文精品一卡2卡3卡4更新| h视频一区二区三区| 成人18禁高潮啪啪吃奶动态图| 国产在线视频一区二区| 一本久久精品| 91午夜精品亚洲一区二区三区| 久久久久久免费高清国产稀缺| 一区二区av电影网| 欧美97在线视频| 国产精品一区二区在线不卡| 亚洲经典国产精华液单| 99久国产av精品国产电影| 亚洲精品视频女| 如何舔出高潮| 一本—道久久a久久精品蜜桃钙片| 成年动漫av网址| 我的亚洲天堂| 久久女婷五月综合色啪小说| 五月天丁香电影| 久久99蜜桃精品久久| 久久人人97超碰香蕉20202| 成人国语在线视频| 久久久欧美国产精品| 精品第一国产精品| 人人妻人人澡人人爽人人夜夜| a级毛片黄视频| 成人手机av| 久久久久久人妻| av网站在线播放免费| kizo精华| 精品少妇内射三级| 边亲边吃奶的免费视频| 亚洲av综合色区一区| 菩萨蛮人人尽说江南好唐韦庄| 男女无遮挡免费网站观看| 黑人欧美特级aaaaaa片| 色94色欧美一区二区| av女优亚洲男人天堂| 中文欧美无线码| 亚洲伊人色综图| 欧美少妇被猛烈插入视频| 亚洲成av片中文字幕在线观看 | 不卡视频在线观看欧美| 午夜老司机福利剧场| 日韩人妻精品一区2区三区| 久久久久久人人人人人| 最近最新中文字幕免费大全7| 热99久久久久精品小说推荐| 久久国产亚洲av麻豆专区| 国产熟女欧美一区二区| 建设人人有责人人尽责人人享有的| 成人国产麻豆网| 秋霞伦理黄片| 亚洲 欧美一区二区三区| 永久网站在线| 妹子高潮喷水视频| 成人国产av品久久久| videosex国产| 丝袜脚勾引网站| 哪个播放器可以免费观看大片| 久久久久久久亚洲中文字幕| 国产日韩一区二区三区精品不卡| 99国产综合亚洲精品| 日韩 亚洲 欧美在线| 看非洲黑人一级黄片| 国产精品香港三级国产av潘金莲 | 国产精品 欧美亚洲| 亚洲国产日韩一区二区| 色婷婷久久久亚洲欧美| 国产精品成人在线| 亚洲第一av免费看| 观看美女的网站| 日本免费在线观看一区| 亚洲av综合色区一区| 一本色道久久久久久精品综合| 1024香蕉在线观看| 一区二区三区乱码不卡18| 这个男人来自地球电影免费观看 | 在线天堂最新版资源| 亚洲欧美日韩另类电影网站| 亚洲av成人精品一二三区| 午夜免费观看性视频| 精品少妇内射三级| 日韩av在线免费看完整版不卡| 久久人人97超碰香蕉20202| 黑人猛操日本美女一级片| 看十八女毛片水多多多| 国产成人aa在线观看| 亚洲国产av影院在线观看| 欧美变态另类bdsm刘玥| 午夜老司机福利剧场| 国产极品天堂在线| av在线app专区| 国产精品女同一区二区软件| 香蕉丝袜av| 老汉色∧v一级毛片| 亚洲国产欧美在线一区| 国产一区二区三区综合在线观看| 国产精品久久久久久精品电影小说| 日韩中字成人| 一区福利在线观看| 王馨瑶露胸无遮挡在线观看| 亚洲精品自拍成人| 十八禁高潮呻吟视频| 国产精品女同一区二区软件| 免费女性裸体啪啪无遮挡网站| 国产精品久久久久久久久免| 大片电影免费在线观看免费| 九草在线视频观看| 久久久久国产精品人妻一区二区| 精品一区二区三区四区五区乱码 | 日韩中文字幕欧美一区二区 | 观看av在线不卡| 日韩电影二区| 国产精品久久久久久av不卡| 免费高清在线观看视频在线观看| 国产亚洲av片在线观看秒播厂| 校园人妻丝袜中文字幕| 成人毛片60女人毛片免费| 中文字幕制服av| 欧美精品av麻豆av| 国产熟女欧美一区二区| 另类精品久久| 欧美中文综合在线视频| 精品人妻熟女毛片av久久网站| a 毛片基地| 免费播放大片免费观看视频在线观看| 成人午夜精彩视频在线观看| videossex国产| 国产精品成人在线| 免费少妇av软件| 国产精品久久久久久av不卡| 2022亚洲国产成人精品| 国产成人精品一,二区| 亚洲精品av麻豆狂野| freevideosex欧美| 欧美av亚洲av综合av国产av | 久久精品国产a三级三级三级| 在线观看国产h片|