回 帖 发 新 帖 刷新版面

主题:我用向量做的小程序,高手指点下

#include<stdio.h>
#include<malloc.h>

 int A[10],N;
 void create(int A[10],int N)
 {int i;
 for(i=0;i<N;++i)
  scanf("%d",&A[i]);
  for(i=0;i<N;++i)
  printf("%d ",A[i]);
    printf("\n");
  printf("The length is %d\n",N);
  }
  void insert(int A[10],int n,int x)
 {int i;
   if(n<0||n>N)
        printf("Wrong position!");
     else
       for(i=N-1;i>=n;--i)
        A[i+1]=A[i];
        A[n]=x;
        N++;
        for(i=0;i<N;++i)
  printf("%d ",A[i]);
   printf("\n");
  printf("The length is %d\n",N);
        }
  void delete(int A[10],int n)
  {int i;
   if(n<0||n>N)
       printf("Wrong position!");
     else
       for(i=N;i>n;--i)
       A[i]=A[i-1];
       A[N]=NULL;
       N--;
       for(i=0;i<N;++i)
       printf("%d ",A[i]);
          printf("\n");
        printf("The length is %d",N);
       }
  void find(int A[10],int x)
   {int i;
    for(i=0;i<N;++i)
     if(A[i]==x)
         printf("It is in %d position",i);
         else continue;
         }
int main()
{ int i,n,x;

A[10]=(int)malloc(sizeof(int)*10);
 printf("press 1 to create:\n");
 printf("press 2 to insert:\n");
 printf("press 3 to insert:\n");
 scanf("%d",&i);
 while(1)
 switch(i)
 {case 1:
        {
          printf("Create\n");
          printf("Input a number below 10 for length:");
          scanf("%d",&N);
           create(A,N);
            scanf("%d",&i);
         } break;
  case 2:
        {
          printf("Insert\n");
          printf("Input two number:");
          scanf("%d%d",&n,&x);
          insert(A,n,x);
           scanf("%d",&i);
          }  break;
  case 3:
         {printf("Find\n");
          printf("Input what you want to find:");
           scanf("%d",&x);
           find(A,x);
            scanf("%d",&i);
           } break;
   default :{printf("Input error!");
            return 0;}

       }
       getch();
       }
能运行的.

回复列表 (共6个回复)

沙发

还行,就是写的不够规范,比如一{后面在回一个行在写语句等等,不过个人觉得有空用c写向量.还不如快把STL学了

板凳

great!
只是排版不太好看,还有主程序最后记得delete().

3 楼

1楼,STL是什么东西? 有什么用?
2楼,c能用delete();释放空间吗?

4 楼

接口设计的不好,最好写成类!

5 楼

STL是标准C++模板,非常强大,也很难学,别学c了快去学C++

6 楼

STL不是一般的强大

学完就会发现C里面很多需要自己实现的东西
在那边都是现成的

我来回复

您尚未登录,请登录后再回复。点此登录或注册