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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? studinfomanager.cpp

?? 一個DOS下的學生信息管理系統,使用了多中數值算法,有HASH查找,歸并排序,快速排序,對排序
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
// StudInfoManager.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "StudInfoManager.h"
#include "TypeDef.h"
#include "conio.h"
#include "Taxis.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// The one and only application object

CWinApp theApp;
using namespace std;
HANDLE	hStdOut=GetStdHandle(STD_OUTPUT_HANDLE);
STUDINFO pStudInfo[10];				//學生信息
bool bIsLoaded=false;				//是否已加載學生信息

bool GetStudInfo(FILENAME* pFile);	//從文件中得到學生信息
void PrintStudInfo(STUDINFO studInfo,UINT uiSpecial); 
									//打印學生信息
UINT GetGrade(UINT uiStudNum);      //從學號中得到年級
UINT HashSelect(UINT uiStudNum);    //選擇哈希地址
void SelectError();                 //選擇錯誤
void CoolBeep(UINT uiCbSort);       //非常酷的蜂鳴聲
void AnimatePrint(char* pStr);      //動態顯示

void LoadStudInfo();                //加載學生信息
void SearchStudInfo();              //查詢學生信息
void TaxisStudInfo();               //排序學生信息
void StatisticsStudInfo();          //統計學生信息
void DispHelpInfo();
void AboutMe(); 
void Exit();					    //退出系統
void PressAnyKey();                 //按任意鍵繼續

void DispAllStudInfo(UINT uiSpecial);           
									//顯示所有學生信息
void SearchByStudNum();             //按學號查找
void SearchByName();                //按姓名查找
void SearchBySex();                 //按性別查找
void SearchByGradeCourse();         //按年級課程查找
void SearchByTeacher();             //按教師查找
void SearchByCourse();              //按課程查找

void TaxisByStudNum();              //按學號排序
void TaxisByAge();                  //按年齡排序
void TaxisByAllMark();              //按總成績排序

void StatisticsBoyGirlCount();      //男女生人數
void StatisticsPersonAverageMark(); //個人平均成績
void StatisticsGradeAverageAge();   //年級平均年齡
void StatisticsCourseAverageMark(); //各門課得平均成績

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
	int nRetCode = 0;

	// initialize MFC and print and error on failure
	if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
	{
		// TODO: change error code to suit your needs
		cerr << _T("Fatal Error: MFC initialization failed") << endl;
		nRetCode = 1;
	}

	UCHAR ucSelection;//選擇號

	SetConsoleTitle("學生信息管理系統");//設置標題
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
	MessageBox(NULL,"學生信息管理系統!!!","熱烈歡迎",MB_ICONINFORMATION);

Select:
	cout<<"                         學生信息管理系統"<<endl;
	cout<<"                    1-----------------學生信息加載系統"<<endl;
	cout<<"                    2-----------------學生信息查詢系統"<<endl;
	cout<<"                    3-----------------學生信息排序系統"<<endl;
	cout<<"                    4-----------------學生信息統計系統"<<endl;
	cout<<"                    5-----------------幫助主題"<<endl;
	cout<<"                    6-----------------關于作者"<<endl;
	cout<<"                    7-----------------退出系統"<<endl;
	cout<<"請選擇:";
	SetConsoleTextAttribute(hStdOut,FOREGROUND_RED);

Input:
	ucSelection=getch();
	if(ucSelection<'1' || ucSelection>'7')
		goto Input;

	putchar(ucSelection);
	getch();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	switch(ucSelection)
	{
	case '1':
		LoadStudInfo();
		break;

	case '2':
		SearchStudInfo();
		break;

	case '3':
		TaxisStudInfo();
		break;

	case '4':
		StatisticsStudInfo();
		break;

	case '5':
		DispHelpInfo();
		break;

	case '6':
		AboutMe();
		break;

	case '7':
		Exit();
		CoolBeep(CB_OK);
		PressAnyKey();
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		break;

	default:
		SelectError();
		PressAnyKey();	
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		break;
	}	

	goto Select;

	return nRetCode;
}

//加載學生信息
void LoadStudInfo()
{
	CString strStudInfoFile;
	char* pStudInfoFile;
	CFileDialog m_OpenDlg(TRUE,NULL,"學生信息\\StudInfo.txt",0,"任何文件(*.*)|*.*||");
	
	if(m_OpenDlg.DoModal()==IDOK) 
	{
		strStudInfoFile=m_OpenDlg.GetPathName();
		pStudInfoFile=(LPSTR)(LPCTSTR)strStudInfoFile;
	}
	else
	{
		SetConsoleTextAttribute(hStdOut,0x0005);
		cout<<endl<<endl<<"你取消了打開文件!"<<endl;		
		PressAnyKey();
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		return;
	}

	if(!GetStudInfo(pStudInfoFile))
	{
		SetConsoleTextAttribute(hStdOut,0x0005);
		cout<<endl<<endl<<"打開文件失敗!"<<endl;
		CoolBeep(CB_ERROR);
		PressAnyKey();
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		return;
	}

	bIsLoaded=true;

	SetConsoleTextAttribute(hStdOut,0x0005);
	cout<<endl<<endl<<"學生信息加載成功!"<<endl;
	CoolBeep(CB_OK);
	PressAnyKey();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);		
}

void SearchStudInfo()
{
	SetConsoleTextAttribute(hStdOut,0x0005);
	if(!bIsLoaded)
	{
		cout<<endl<<endl<<"請先加載學生信息!"<<endl;
		CoolBeep(CB_ERROR);
		PressAnyKey();
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		return;
	}	
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	system("cls");
	UCHAR ucSelection;//選擇號

Select:
	cout<<"                         學生信息查詢系統"<<endl;
	cout<<"                    1-----------------顯示所有學生信息"<<endl;
	cout<<"                    2-----------------按學號查找"<<endl;
	cout<<"                    3-----------------按姓名查找"<<endl;
	cout<<"                    4-----------------按性別查找"<<endl;
	cout<<"                    5-----------------按年級課程查找"<<endl;
	cout<<"                    6-----------------按教師查找"<<endl;
	cout<<"                    7-----------------按課程查找"<<endl;
	cout<<"                    8-----------------返回主菜單"<<endl;
	cout<<"                    9-----------------退出系統"<<endl;
	cout<<"請選擇:";
	SetConsoleTextAttribute(hStdOut,FOREGROUND_RED);

Input:
	ucSelection=getch();
	if(ucSelection<'1' || ucSelection>'9')
		goto Input;

	putchar(ucSelection);
	getch();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	switch(ucSelection)
	{
	case '1':
		SetConsoleTextAttribute(hStdOut,0x0005);
		DispAllStudInfo(SPECIAL_NONE);
		CoolBeep(CB_OK);
		break;

	case '2':
		SearchByStudNum();
		break;

	case '3':
		SearchByName();
		break;

	case '4':
		SearchBySex();
		break;

	case '5':
		SearchByGradeCourse();
		break;

	case '6':
		SearchByTeacher();
		break;

	case '7':
		SearchByCourse();
		break;

	case '8':
		system("cls");
		return;
		break;

	case '9':
		Exit();
		CoolBeep(CB_OK);
		break;

	default:
		SelectError();
		break;
	}
	PressAnyKey();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	goto Select;
}

//學生信息排序系統
void TaxisStudInfo()
{
	SetConsoleTextAttribute(hStdOut,0x0005);
	if(!bIsLoaded)
	{
		cout<<endl<<endl<<"請先加載學生信息!"<<endl;
		CoolBeep(CB_ERROR);
		PressAnyKey();
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		return;
	}
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	system("cls");
	UCHAR ucSelection;//選擇號

Select:
	cout<<"                         學生信息排序系統"<<endl;
	cout<<"                    1-----------------按學號排序"<<endl;
	cout<<"                    2-----------------按年齡排序"<<endl;
	cout<<"                    3-----------------按總成績排序"<<endl;
	cout<<"                    4-----------------返回主菜單"<<endl;
	cout<<"                    5-----------------退出系統"<<endl;
	cout<<"請選擇:";

	SetConsoleTextAttribute(hStdOut,FOREGROUND_RED);

Input:
	ucSelection=getch();
	if(ucSelection<'1' || ucSelection>'5')
		goto Input;

	putchar(ucSelection);
	getch();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	switch(ucSelection)
	{
	case '1':
		TaxisByStudNum();
		break;

	case '2':
		TaxisByAge();
		break;

	case '3':
		TaxisByAllMark();
		break;

	case '4':
		system("cls");
		return;
		break;

	case '5':
		Exit();
		break;

	default:
		SelectError();
		break;
	}
	CoolBeep(CB_OK);
	PressAnyKey();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
	goto Select;
}

void TaxisByStudNum()
{
	CTaxis taxis(pStudInfo,TAXISBY_STUDNUM);

	DispAllStudInfo(SPECIAL_STUDNUM);
}

void TaxisByAge()
{
	CTaxis taxis(pStudInfo,TAXISBY_AGE);

	DispAllStudInfo(SPECIAL_AGE);
}

void TaxisByAllMark()
{
	CTaxis taxis(pStudInfo,TAXISBY_ALLMARK);

	DispAllStudInfo(SPECIAL_MARK);
}

void StatisticsStudInfo()
{
	SetConsoleTextAttribute(hStdOut,0x0005);
	if(!bIsLoaded)
	{
		cout<<endl<<endl<<"請先加載學生信息!"<<endl;
		CoolBeep(CB_ERROR);
		PressAnyKey();
		SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
		return;
	}
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);
	
	system("cls");
	UCHAR ucSelection;//選擇號

Select:
	cout<<"                         學生信息統計系統"<<endl;
	cout<<"                    1-----------------男女生人數"<<endl;
	cout<<"                    2-----------------各人平均成績"<<endl;
	cout<<"                    3-----------------年級平均年齡"<<endl;
	cout<<"                    4-----------------各門課平均成績"<<endl;
	cout<<"                    5-----------------返回主菜單"<<endl;
	cout<<"                    6-----------------退出系統"<<endl;
	cout<<"請選擇:";
	SetConsoleTextAttribute(hStdOut,FOREGROUND_RED);

Input:
	ucSelection=getch();
	if(ucSelection<'1' || ucSelection>'6')
		goto Input;

	putchar(ucSelection);
	getch();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	switch(ucSelection)
	{
	case '1':
		StatisticsBoyGirlCount();
		break;

	case '2':
		StatisticsPersonAverageMark();
		break;

	case '3':
		StatisticsGradeAverageAge();
		break;

	case '4':
		StatisticsCourseAverageMark();
		break;

	case '5':
		system("cls");
		return;
		break;

	case '6':
		Exit();
		break;

	default:
		SelectError();
		break;
	}
	CoolBeep(CB_OK);
	PressAnyKey();
	SetConsoleTextAttribute(hStdOut,FOREGROUND_GREEN);

	goto Select;
}

void StatisticsBoyGirlCount()
{
	UINT i;
	UINT uiBoyCount=0,uiGirlCount=0;

	for(i=0;i<10;i++)
		if(!strcmp(pStudInfo[i].pSex,"男") || !strcmp(pStudInfo[i].pSex,"M") || !strcmp(pStudInfo[i].pSex,"m"))
			uiBoyCount++;
		else
			uiGirlCount++;

	SetConsoleTextAttribute(hStdOut,0x0005);
	cout<<endl<<endl;
	cout<<"男生數:"<<uiBoyCount<<endl;
	cout<<"女生數:"<<uiGirlCount<<endl;
}

void StatisticsPersonAverageMark()
{
	UINT i;
	float uiTemp;

	SetConsoleTextAttribute(hStdOut,0x0005);
	cout<<endl<<endl;
	printf("%-10s%-8s\n","姓名","平均成績");	
	for(i=0;i<10;i++)
	{
		uiTemp=(pStudInfo[i].pCourseInfo->uiMark+pStudInfo[i].pCourseInfo->pNext->uiMark)*1.0/2;
		printf("%-10s%-8f\n",pStudInfo[i].pName,uiTemp);
	}
}

void StatisticsGradeAverageAge()
{
	int pGrade[10];			   //年級數組
	UINT pGradeAllAge[10]={0}; //各年級總年齡
	UINT pStudCount[10]={0};   //各年級人數
	float pGradeAverageAge[10];//各年級平均年齡
	UINT i,j,uiPos=0;
	bool bIsFind;
	UINT uiCount=0;
	
	//初始化
	for(i=0;i<10;i++)
		pGrade[i]=-1;

	for(i=0;i<10;i++)
	{
		bIsFind=false;

		//分析該學生所在年級是否已在年級數組
		for(j=0;j<10;j++)
			if(GetGrade(pStudInfo[i].uiStudNum)==pGrade[j])
			{
				bIsFind=true;
				break;
			}

		if(!bIsFind)
		{
			pGrade[uiPos]=GetGrade(pStudInfo[i].uiStudNum);
			pGradeAllAge[uiPos]=pStudInfo[i].uiAge;
			pStudCount[uiPos]=1;
			uiPos++;			
		}
		else
		{
			pStudCount[j]++;
			pGradeAllAge[j]+=pStudInfo[i].uiAge;
		}
	}

	for(i=0;i<uiPos;i++)
		pGradeAverageAge[i]=pGradeAllAge[i]*1.0/pStudCount[i];

	SetConsoleTextAttribute(hStdOut,0x0005);
	cout<<endl<<endl;
	printf("%-8s%-8s\n","年級","平均年齡");
	for(i=0;i<uiPos;i++)
		if(pGrade[i]>9)
			printf("%-8d%-8f\n",pGrade[i],pGradeAverageAge[i]);
		else
			printf("0%-7d%-8f\n",pGrade[i],pGradeAverageAge[i]);
}

void StatisticsCourseAverageMark()
{
	UINT pCourseAllMark[20]={0}; //各門課總分
	float pCourseAverageMark[20];//各門課平均分
	UINT pStudCount[10]={0};     //各門課人數
	char* pCourse[20]={NULL};    //各門課數組
	UINT i,j;
	bool bIsFind1,bIsFind2;
	UINT uiPos=0;

	for(i=0;i<10;i++)
	{
		bIsFind1=false;
		bIsFind2=false;

		//分析該學生的課程1是否已在課程數組
		for(j=0;j<20;j++)
			if(pCourse[j]!=NULL)
				if(!strcmp(pCourse[j],pStudInfo[i].pCourseInfo->pCourse))
			{
				bIsFind1=true;
				break;
			}
				
		if(!bIsFind1)
		{
			pCourse[uiPos]=pStudInfo[i].pCourseInfo->pCourse;
			pCourseAllMark[uiPos]=pStudInfo[i].pCourseInfo->uiMark;
			pStudCount[uiPos]=1;
			uiPos++;
		}
		else
		{
			pStudCount[j]++;
			pCourseAllMark[j]+=pStudInfo[i].pCourseInfo->uiMark;
		}

		//分析該學生的課程2是否已在課程數組
		for(j=0;j<20;j++)
			if(pCourse[j]!=NULL)
				if(!strcmp(pCourse[j],pStudInfo[i].pCourseInfo->pNext->pCourse))
			{
				bIsFind2=true;
				break;
			}
				
		if(!bIsFind2)
		{
			pCourse[uiPos]=pStudInfo[i].pCourseInfo->pNext->pCourse;
			pCourseAllMark[uiPos]=pStudInfo[i].pCourseInfo->pNext->uiMark;
			pStudCount[uiPos]=1;
			uiPos++;
		}
		else
		{
			pStudCount[j]++;
			pCourseAllMark[j]+=pStudInfo[i].pCourseInfo->pNext->uiMark;
		}
	}

	for(i=0;i<uiPos;i++)
		pCourseAverageMark[i]=pCourseAllMark[i]*1.0/pStudCount[i];

	SetConsoleTextAttribute(hStdOut,0x0005);
	cout<<endl<<endl;
	printf("%-8s%-8s\n","課程","平均成績");
	for(i=0;i<uiPos;i++)
		printf("%-8s%-8f\n",pCourse[i],pCourseAverageMark[i]);
}

bool GetStudInfo(FILENAME* pFile)
{
	COURSEINFO* pCourseInfo;
	COURSEINFO* pNext;
	FILE* fp;
	UINT i;
	UINT uiHashAddr;   //哈希地址
	char pName[10];    //姓名
	UINT uiStudNum;    //學號,規定為9位,如080210114
	UINT uiAge;        //年齡

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本在线不卡视频一二三区| 成人综合婷婷国产精品久久蜜臀 | 中文字幕中文字幕一区| 亚洲色图在线视频| 美日韩一区二区三区| 91丨porny丨蝌蚪视频| 日韩欧美亚洲另类制服综合在线| 国产精品免费观看视频| 美女视频免费一区| 欧美在线|欧美| 亚洲欧洲另类国产综合| 亚洲美女屁股眼交3| 69av一区二区三区| 国产精品久久久久久福利一牛影视| 男人操女人的视频在线观看欧美| 色婷婷狠狠综合| 国产精品天天看| 亚洲美女免费视频| 99精品在线免费| 亚洲一级电影视频| 欧美本精品男人aⅴ天堂| 成人av在线一区二区| 亚洲精品第1页| 欧美精品一区二区蜜臀亚洲| 99r国产精品| 麻豆成人综合网| 国产精品久久久久久户外露出| 欧美三级中文字幕在线观看| 精品亚洲成a人| 一区二区免费视频| www国产亚洲精品久久麻豆| 91啦中文在线观看| 精品制服美女丁香| 一区二区三区成人| 国产日韩精品视频一区| 欧美人牲a欧美精品| 成人精品小蝌蚪| 欧美a级理论片| 亚洲黄色性网站| www成人在线观看| 91丨九色丨黑人外教| 亚洲一区二区视频在线| 日韩一区二区三区免费观看| 成人一区二区视频| 免费成人在线网站| 亚洲精品视频免费看| 久久久久99精品国产片| 777午夜精品免费视频| 99久久久久久99| 国产麻豆9l精品三级站| 首页综合国产亚洲丝袜| 亚洲三级在线播放| 久久精品亚洲麻豆av一区二区| 欧美日韩情趣电影| 91蜜桃视频在线| 成人av在线网| 国产一区二区三区四区五区美女| 亚洲mv在线观看| 亚洲乱码国产乱码精品精98午夜 | 欧美精品日日鲁夜夜添| 国产91精品在线观看| 五月综合激情婷婷六月色窝| 亚洲特黄一级片| 国产精品色呦呦| 国产性色一区二区| 欧美精品一区二区不卡| 日韩一区二区三区视频在线| 欧美日韩一级片网站| 91国产免费看| 日本精品免费观看高清观看| 成人av集中营| eeuss鲁一区二区三区| 国产麻豆精品theporn| 国内欧美视频一区二区| 免费观看久久久4p| 麻豆精品一区二区av白丝在线| 五月天视频一区| 天天爽夜夜爽夜夜爽精品视频| 亚洲影院久久精品| 亚洲精品你懂的| 亚洲精品日日夜夜| 国产91精品在线观看| 久久99精品久久久久久| 亚洲一区二区三区激情| 一区二区三区高清在线| 亚洲精品国产a| 亚洲与欧洲av电影| 亚洲高清视频在线| 三级久久三级久久| 琪琪久久久久日韩精品| 激情文学综合丁香| 国产成人精品综合在线观看 | 18成人在线观看| 亚洲天堂福利av| 一区二区三区视频在线看| 亚洲国产精品影院| 日韩精品1区2区3区| 激情综合网av| 成人精品免费视频| 91久久线看在观草草青青| 欧美午夜寂寞影院| 欧美一区二区三区日韩视频| 一区二区高清视频在线观看| 国产精品激情偷乱一区二区∴| 亚洲国产精品精华液2区45| 国产精品免费aⅴ片在线观看| 中文字幕中文在线不卡住| 亚洲一区二区三区四区五区中文 | 久久久www成人免费无遮挡大片| 国产无一区二区| 亚洲精品你懂的| 另类的小说在线视频另类成人小视频在线 | 欧美精品一区二区精品网| 国产精品私人自拍| 亚洲gay无套男同| 国产精品一区免费视频| 91豆麻精品91久久久久久| 欧美大片在线观看一区二区| 国产欧美一区二区精品秋霞影院 | 久久在线免费观看| 亚洲精品日韩综合观看成人91| 日日夜夜精品视频天天综合网| 久久99国产精品麻豆| 色综合天天做天天爱| 日韩欧美一级片| 一区二区三区四区视频精品免费| 久久精品国内一区二区三区| 91在线播放网址| 精品国产乱码久久久久久浪潮 | 久久久高清一区二区三区| 一区二区三区资源| 国产成人在线视频网站| 欧美日韩国产经典色站一区二区三区 | 亚洲国产欧美在线| 国产不卡高清在线观看视频| 欧美日本视频在线| 亚洲日本韩国一区| 国产精品一区二区黑丝| 欧美一区二区三区男人的天堂| 亚洲人成网站在线| 国产suv精品一区二区6| 日韩一级高清毛片| 亚洲一区二区欧美| 99久久国产综合精品女不卡| 2024国产精品| 日本免费在线视频不卡一不卡二| 91丝袜国产在线播放| 国产欧美综合在线观看第十页| 裸体在线国模精品偷拍| 欧美日韩午夜在线视频| 亚洲视频小说图片| kk眼镜猥琐国模调教系列一区二区| 精品久久人人做人人爰| 日韩成人一级片| 欧美日韩国产片| 亚洲综合免费观看高清完整版 | www.亚洲免费av| 国产香蕉久久精品综合网| 美女www一区二区| 91精品国产欧美一区二区18| 午夜欧美电影在线观看| 在线精品亚洲一区二区不卡| 亚洲婷婷在线视频| av亚洲精华国产精华| 国产精品理论片在线观看| 国产成人一区在线| 国产欧美日韩亚州综合 | 91精品久久久久久久久99蜜臂| 亚洲午夜免费福利视频| 欧美自拍偷拍一区| 亚洲国产综合在线| 欧美亚洲国产怡红院影院| 亚洲国产成人av| 一区二区国产视频| 18欧美乱大交hd1984| 国产69精品久久99不卡| 国产欧美在线观看一区| 成人美女视频在线看| 国产精品萝li| 91一区一区三区| 一级精品视频在线观看宜春院| 欧美色图第一页| 日本最新不卡在线| 精品久久久久久久久久久久久久久久久| 精品一区二区在线视频| www国产成人| 成人国产精品视频| 亚洲制服欧美中文字幕中文字幕| 精品视频在线视频| 久久99精品国产麻豆婷婷| 久久精品人人做人人综合| av不卡一区二区三区| 亚洲成人在线免费| 日韩免费一区二区三区在线播放| 国产精品一区二区在线观看网站| 中文字幕一区免费在线观看| 欧美午夜精品理论片a级按摩| 久久精品国产免费看久久精品| 国产欧美中文在线| 欧美日韩视频在线观看一区二区三区 |