向量vector的实现(初学着)

类别:编程语言 点击:0 评论:0 推荐:

//向量的长度为全局变量

#include <stdio.h>
#include <ctype.h>
#include<stdlib.h>
#include <stdarg.h>

#define MAX 100
typedef  int vector[MAX];
int n=10; //向量A的大小;
//向量的建立
//输入n个整数,产生一个存储这些整数的向量A的函数
void create(vector A,int n)
{
 if(n>MAX)
 {
  printf("error\n");
  exit(0);
 }
 else{
  int i;
     for(i=1;i<=n;i++)
  {
  scanf("%d ",&A[i]);
  }
 }
}//end void create(vector A,int n)

//向量的插入
void insert(vector A,int location, int x)
{
 if( location>n || location<1 || n+1>MAX)
 {
  printf("error\n");
  exit(0);
 }
 else {
  for(int j=n;j>=location;j--)
   A[j+1]=A[j];
  A[location]=x;
  n++;
 }
};//end void insert(vector A,int location, int x)

//删除向量A中第i个元素的函数
void del(vector A, int location)
{
 if( location<1 || location>n)
 {
  printf("error\n");
  exit(0);
 }
 else{
  for(int j=location;j<=n-1;j++)
   A[j]=A[j+1];
  n--;
 }
}

void find(vector A,int x)
{
 int j=1;
 for(;j<=n && A[j]!=x;j++)
  NULL;
 if(j>n)
 {
  printf("not find!\n");
  exit(1);
 }
 else
 {
  printf("find!\n");
  exit(1);
 }
}

void print (vector A,int n)
{
 for(int j=1;j<=n;j++)
  printf("%d ",A[j]);
}

void main(void)
{
 vector A;
 create(A,n);
 print(A,n);
}

 

本文地址:http://com.8s8s.com/it/it22051.htm