栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

2021-10-23

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-10-23

数据结构 c语言 三元组实现

三元组实现

#ifndef _NODE_H
#define _NODE_H
typedef int Element; 
typedef Element* Triplet;
 	void InitTriplet (Triplet *pT,Element v1,Element v2,Element v3){	
 	*pT=(Triplet)malloc(3*sizeof(Element));
 		if(!pT){
 				printf ("Error!");
 					}else{
 						(*pT)[0]=v1;	
 						(*pT)[1]=v2;	
 						(*pT)[2]=v3;
 				}
 				}
 void Get(Triplet T,int i,Element *g){
 	*g=T[i-1];
 	printf("三元组数为%dn",*g);
 	}
void  Put(Triplet p, int t,Element v1){
p[t-1]=v1; 	
printf("你已成功改变三元组%d位上的值n",t);
	}	
void  IsAscending(Triplet T){
	if(T[0]T[1]&&T[1]>T[2]){
			printf("三元组降序排列!n") ; 	
						}else{			
			printf("三元组非降序排列n"); 
							}
							}	
void	Max(Triplet T){	
int i=0;	
while(i>1){	
i++;
	if(T[i]>T[0])
	{		T[0]=T[i];	
	}
	}	
printf("最大值为%d",T[0]);
}
void  Min(Triplet T){	
int i=0;	while(i>1){	
i++;	
if(T[i] 

主函数

#include 
#include 
#include "note.h"
int main(){
		Element v1,v2,v3;			
				Element g;	
					v1=0;	
							v2=0;	
										v3=0;	
											Triplet T;	
	printf("三元组初始化中......n三元组初始化完成:0 0 0,n请输入三元组三个数,数字之间用空格间隔n");		
	InitTriplet (&T,v1,v2,v3);	
		scanf("%d %d %d",&v1,&v2,&v3); 
								T[0]=v1;		
												T[1]=v2;	
																	T[2]=v3;							           int i;			
		printf("返回三元组元素请输入:0n") ;	
				printf("改变三元组元素请输入:1n");		
			printf("查看三元组是否升序排列请输入:2n"); 		
			printf("查看三元组是否降序排列请输入:3n");	
					printf("返回三元组最大元素请输入:4n");		
				printf("返回三元组最小元素请输入:5n");		
				printf("销毁三元组并结束请输入:-1n");	
			do{		
				printf("请选择你接下来的操作:");
						scanf("%d",&i);	
								int t;	
										int n;	
											switch(i){		
						case 0:		
															printf("请输入要查询的元素位数:");
																//	返回地i元素值				
																	scanf("%d",&t);		
																		if(t>0&&t<4){			
																		Get(T,t,&g);	
																				}else{
																								printf("Error!超出范围,请输入1-3之间的数字。n");
																											}	
																										break; 
																																case 1:	
																																			 	printf("请输入要改变的元素位数:");
																																			 							scanf("%d",&n);	
																																			 									printf("请输入要改变的元素值:");	
																																			 											scanf("%d",&v1);		
																																			 												if(n>0&&n<4){	
																																			 														Put(&(*T),n,v1);	
																																			 																	}else{	
																																			 																				printf("Error!超出范围,请输入位数1-3之间的数字。");	
																																			 																						}	//	改变T的值		
																																			 																							break; 	
																																			 																									case 2:		
																																			 																											IsAscending(T);		
																																			 																												break; 		
																																			 																													case 3:	
																																			 																																IsDecending(T);	
																																			 																																		break; 	
																																			 																																				case 4:		
																																			 																																						Max(T);		
																																			 																																								break;
																																			 																																						 			case 5:			
																																			 																																					Min(T);	
																																			 																																							break; 	
																																			 																																									case -1:		
																																			 																																											Deatroy(&(*T)); 	
																																			 																																													break; 	
																																			 																																															}																																							 																																																//	降序排列?
																																			 																																																}
																																			 																																																		while(i!=-1); 	
																																			 																																																			return 0;	}

运行图片

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/346998.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号