麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

【C語(yǔ)言 數(shù)據(jù)結(jié)構(gòu)】三元組的實(shí)現(xiàn)

2019-11-06 06:47:41
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
#include<stdio.h>#include<stdlib.h>//定義常量 方便操作//可能也沒(méi)多方便 #define Status int#define Time 1000 /**定義一系列三元組的操作 C語(yǔ)言中的函數(shù) *///初始化 Status* InitTriplet(Status* T, Status v1, Status v2, Status v3);//銷(xiāo)毀三元組 Status* DestroyTriplet(Status *T);//返回第i個(gè)位置的的元素 void Get(Status* T, Status i);//改變第i個(gè)位置的元素的值 Status* Put(Status* T, Status i, Status e);//判斷是否升序排列 void isAscending(Status* T);//判斷是否降序排列 void isDescending(Status* T);//返回最大值 void Max(Status* T);//返回最小值 void Min(Status* T); /**UI 邏輯 函數(shù) */ void Show();Status* Logic(Status* T, char key);void isTrue(Status* T);//打印三元組 void PRintTriplet(Status *T);int main(){	char key;	Status* T = NULL;		while(1){		Show();		scanf(" %c", &key);		T = Logic(T, key);		} } void isTrue(Status* T){	if(NULL == T){		printf("/n抱歉 未分配內(nèi)存/n");		exit(0);	}}void Show(){	system("cls"); 	printf("*****************************************************/n");	printf("/n	");	printf("/n");	printf("/n		1.初始化三元組");	printf("/n		2.銷(xiāo)毀三元組");	printf("/n		3.獲取第i個(gè)位置的元素值");	printf("/n		4.改變第i個(gè)位置的元素值");	printf("/n		5.判斷三元組是否為升序排列");	printf("/n		6.判斷三元組是否為降序排列");	printf("/n		7.返回三元組中最大值");	printf("/n		8.返回三元組中最小值");	printf("/n		9.打印三元組");	printf("/n");	printf("		###########################/n");	printf("/n		請(qǐng)問(wèn)您需要執(zhí)行什么操作?");	printf("/n		請(qǐng)輸入相應(yīng)數(shù)字并按回車(chē)執(zhí)行");	printf("	/n");	printf("*****************************************************/n");}void PrintTriplet(Status *T){	isTrue(T);	printf("第一個(gè)元素為 :%d/n", *T);	printf("第二個(gè)元素為 :%d/n", *(T+1));	printf("第三個(gè)元素為 :%d/n", *(T+2));	}Status* InitTriplet(Status* T, Status v1, Status v2, Status v3){	T = (Status*)malloc(3*sizeof(Status));	T[0] = v1;	T[1] = v2;	T[2] = v3;	return T;}Status* DestroyTriplet(Status *T){	isTrue(T);	if(NULL != T){	free(T);	T = NULL; 		}	return T;}void Get(Status* T, Status i){	isTrue(T);	printf("第%d個(gè)元素是%d/n", i, T[i - 1]);	}Status* Put(Status* T, Status i, Status e){	isTrue(T);	*(T + i - 1) = e;	printf("您改變第%d個(gè)位置的元素為%d/n", i, e);	return T;}void isAscending(Status* T){	isTrue(T);	if(T[0] > T[1] && T[1] > T[2]){		printf("/n該三元組是升序排列/n");	}else{	printf("/n該三元組不是升序排列/n");	} }void isDescending(Status* T){	isTrue(T);	if(T[0] < T[1] && T[1] < T[2]){		printf("/n該三元組是降序排列/n");	}else{	printf("/n該三元組是升序排列/n");	} }void Max(Status* T){	isTrue(T);	int i;	i = T[0] > T[1]?T[0] : T[1];	i = i > T[2]?i : T[2]; 	printf("/n三元組中最大值是%d/n", i);}void Min(Status* T){	isTrue(T);	int i;	i = T[0] < T[1]?T[0] : T[1];	i = i < T[2]?i : T[2]; 	printf("/n三元組中最小值是%d/n", i);}Status* Logic(Status* T, char key){	switch(key){			case '1':				system("cls");				printf("/n請(qǐng)輸入您想初始化三元組的值"); 				printf("/n輸入三個(gè)int數(shù)據(jù) 以空格分開(kāi)/n");				int i, j, k;				scanf("%d %d %d", &i, &j, &k);				T = InitTriplet(T, i, j, k);				system("cls");				printf("/n初始化完成");				printf("/n您初始化的數(shù)據(jù)為 %d %d %d/n", i, j, k);				_sleep(Time);				break;			case '2':				system("cls");				T = DestroyTriplet(T);				printf("/n三元組已銷(xiāo)毀...");			 	_sleep(Time);			 	break;		 	case '3':			 	system("cls"); 			 	printf("/n您想獲得第幾個(gè)位置的元素?/n");				printf("請(qǐng)輸入/n");				int m;				scanf("%d", &m);				Get(T, m); 				_sleep(Time);				break;			case '4':				system("cls"); 				printf("您想改變第幾個(gè)位置的元素?/n");				scanf("%d", &i);				printf("改變?yōu)槎嗌伲?n");				scanf("%d", &m); 				Put(T, i, m);				system("cls"); 				printf("您已經(jīng)改變第%d個(gè)元素為%d", i, m);				_sleep(Time);				break;			case '5':				system("cls"); 				isAscending(T);				_sleep(Time);				break;			case '6':				system("cls"); 				isDescending(T);				_sleep(Time);				break;			case '7':				system("cls"); 				Max(T);				_sleep(Time);				break;			case '8':				system("cls"); 				Min(T);				_sleep(Time);				break;			case '9':				system("cls"); 				PrintTriplet(T);				_sleep(Time);				break;					} 	return T;}
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产精品久久久久久久午夜片 | 视频一区国产精品 | 国产91丝袜在线播放 | 伦理三区| 日本精品一区二区 | 水卜樱一区二区av | 成人在线观看免费视频 | 99精品电影| 午夜小视频免费观看 | 国产99久久精品一区二区 | 久色视频网站 | 黄 色 免费网 站 成 人 | 中文有码一区二区 | 国产精品一区二av18款 | 丰满年轻岳中文字幕一区二区 | 国产精品久久久久久久久久iiiii | 国产国语毛片 | 高清视频一区二区 | 草草视频免费观看 | 午夜视频福利 | a免费看| 又黄又爽免费无遮挡在线观看 | 日本不卡中文字幕 | 黄片毛片一级 | av手机在线免费播放 | 国产亚洲欧美日韩在线观看不卡 | 91网站链接| 国产精品视频 | av在线等 | 在线视频观看一区二区 | 精品一区视频 | 九九午夜 | 久久免费视频7 | 久久91精品久久久久清纯 | av在线免费网| 久久精品九九 | 国产精品久久久久久久久久电影 | 男女羞羞的视频 | 色妞欧美 | 国产一区视频在线免费观看 | 成人免费观看在线视频 |