zoukankan      html  css  js  c++  java
  • 创建一个三元组

    // Triplet.cpp : 定义控制台应用程序的入口点。
    //

    #include "stdafx.h"
    #include "stdlib.h"
    #define OK 1
    #define ERROE 0

    typedef int Status;

    typedef int *Triplet;//定义Triplet为指针类型;

    void main()
    {

    //构造三元组
    Status InitTriplet(Triplet &T, int v1, int v2, int v3);

    //销毁三元组
    Status DestroyTriplet(Triplet &T);

    //返回三元组的第i个元素并保存在变量e中
    Status Get(Triplet T, int i, int &e);

    //将三元组下标为为i的值替换为e
    Status Put(Triplet &T,int i,int e);

    //判断三元组是否是升序排列
    Status IsAcending(Triplet T);

    //判断三元组是否是降序排列
    Status IsDcending(Triplet T);

    //找出三元组中的最大值并保存在e中
    Status Max(Triplet T,int &e);
    //找出三元组中的最小值并保存在e中
    Status Min(Triplet T, int &e);

    Triplet T;
    int a = 1, b = 2, c = 3,e,max,min;
    //初始化三元组
    InitTriplet(T,a,b,c);
    Get(T, 1, e);
    Put(T,1,-1);

    Max(T,max);

    Min(T,min);

    printf("当前元素的值为%d ",e);

    printf("当前三元组中的最大值为%d ",max);

    printf("当前三元组中的最小值为%d ",min);

    }

    //初始化三元组
    Status InitTriplet(Triplet &T,int v1,int v2,int v3) {

    T = (int *)malloc(sizeof(int)*3);

    T[0] = v1;
    T[1] = v2;
    T[2] = v3;

    if (T == NULL) {
    exit(EOVERFLOW);
    }

    return OK;

    }
    //销毁三元组
    Status Destroy(Triplet &T) {

    free(T);
    return OK;
    }

    //根据下标获取三元组下标的值
    Status Get(Triplet T, int i, int &e) {
    if (i < 1 || i>3) {

    return ERROE;

    }
    e = T[i-1];
    return e;
    }
    //向三元组添加元素
    Status Put(Triplet &T,int i,int e) {
    if (i < 1 || i>3) {
    return ERROE;
    }
    T[i-1] =e ;
    return OK;

    }

    //判断三元组是否是升序排列
    Status IsAcending(Triplet T) {
    if (T[0] < T[1] && T[1] < T[2]) {
    return OK;
    }
    return ERROE;
    }

    //判断三元组是否是降序排列
    Status IsDcending(Triplet T) {
    if (T[0] > T[1] && T[1] > T[2]) {
    return OK;
    }
    return ERROE;
    }

    //获取三元组中的最大值
    Status Max(Triplet T,int &max) {

    max = T[0];
    for (int i = 1; i <3; i++)
    {
    if (max < T[i]) {
    max = T[i];
    }
    }
    return OK;

    }

    //获取三元组中的最小值
    Status Min(Triplet T,int &min) {
    min = T[0];
    for (int i = 0; i <3; i++)
    {
    if (min > T[i]) {
    min = T[i];
    }

    }

    return OK;

    }

  • 相关阅读:
    2019牛客多校第二场H题(悬线法)
    hdu6212 Zuma(区间dp)
    uva1428树状数组
    UVA1395 (最苗条的最小生成树)
    牛客练习赛53 C题bitset
    Love Live!
    Princess principal
    New Game!- 牛客
    P3311 [SDOI2014]数数
    [HNOI2008]GT考试
  • 原文地址:https://www.cnblogs.com/paulversion/p/7511855.html
Copyright © 2011-2022 走看看