WFR 发表于 2020-4-26 14:59:45

怎么改才能够白提示的错误去除???

#include<stdio.h>
#define N 10
typedef struct list
{
        int a;
        int length;
}info;
void    VOID(info*p);
void SCANF(info*p);
void SUM(info *p, info *n);
void change(info *p);
void swap(info *p, int m);
int main()
{
        info A, B, C;
        VOID(&A);
        VOID(&B);
        VOID(&C);
        SCANF(&A);
        SCANF(&B);
        C = SUM(&A, &B);//合并两个顺序表
        void swap(C,5);//将顺序表改变顺序后
        return0;
};
void    VOID(info*p)// 将顺序表清空
{
        p->length = 0;

}
void SCANF(info*p)//向顺序表内输入数据;
{
        char ch;
        int x;
        //首先进行判满操作
        if (p->length>N)
                printf("表已经满了,无法输入数据");
        else
        {
                /* 进行数据的输入 */
                while (ch == 'y' || ch == 'Y')
                {
                        scanf("%c", &ch);
                        printf("是否还要添加元素(y|n):");
                        scanf("%d", &x);
                        p->a = x;

                }while (ch == 'y' || ch == 'Y');

        }
        void SUM(info *p, info *n)//合并两个顺序表
        {
                int i, j;
                info C;
                printf("A和B的合集为:")
                for (i = 0; i<p->length; i++)
                {
                        for (j = 0; j<n->length; j++)
                        {
                                if (p->a - n->a == 0)
                                {
                                        C.a = p->a;
                                        C.length++;
                                        printf("C.a");
                                }
                        }
                }

                void change(info *p)//将顺序表中的元素逆置
                {
                        int i, k;
                        for (i = 0; i<(p->length) / 2; i++)
                        {
                                k = p->a;
                                p->a = p->a;
                                p->a = k;

                        }
                       
                        for (i = 0; i < p->length; i++)
                        {
                                printf("%d", p->a);
                        }

                }
                void swap(info *p, int m)//将顺序表改变顺序后
                {
                        int i, j, n;
                        for (i = 0; i<p->length; i++)
                        {
                                if (p->a<p-> && i>m)
                                {
                                        n = p->a;
                                        for (j = 0; j<p->length; j++)
                                        {
                                                p->a = p->a;
                                                p->a = n;
                                        }
                                }
                        }
                }

提示一堆错误,还不会改,求救求救,
怎么才能改正??
        }

sunrise085 发表于 2020-4-26 15:58:52

问题实在太多了,改了之后就已经不记得都修改过哪里了。
#include<stdio.h>
#define N 10
typedef struct list
{
      int a;
      int length;
}info;
void VOID(info*p);
void SCANF(info*p);
void SUM(info *p, info *n);
void change(info *p);
void swap(info *p, int m);
int main()
{
      info A, B, C;
      VOID(&A);
      VOID(&B);
      VOID(&C);
      SCANF(&A);
      SCANF(&B);
      SUM(&A, &B);//合并两个顺序表
      swap(&A,2);//将顺序表改变顺序后
      return0;
};
void    VOID(info*p)// 将顺序表清空
{
      p->length = 0;

}
void SCANF(info*p)//向顺序表内输入数据;
{
      char ch;
      int x;
      //首先进行判满操作
      if (p->length>N)
                printf("表已经满了,无法输入数据");
      else
      {
                /* 进行数据的输入 */
                do
                {
                        scanf("%d", &x);
                        p->a = x;
                        getchar();
                        printf("是否还要添加元素(y|n):");
                        scanf("%c", &ch);

                }while (ch == 'y' || ch == 'Y');

      }
}
void SUM(info *p, info *n)//合并两个顺序表
{
      int i, j;
      info C;
      printf("A和B的合集为:");
      for (i = 0; i<p->length; i++)
      {
                for (j = 0; j<n->length; j++)
                {
                        if (p->a - n->a == 0)
                        {
                              C.a = p->a;
                              C.length++;
                              printf("%d",C.a);
                        }
                }
      }
      printf("\n");
}
void change(info *p)//将顺序表中的元素逆置
{
      int i, k;
      for (i = 0; i<(p->length) / 2; i++)
      {
                k = p->a;
                p->a = p->a;
                p->a = k;

      }
      
      for (i = 0; i < p->length; i++)
      {
                printf("%d", p->a);
      }

}
void swap(info *p, int m)//将顺序表改变顺序后
{
      int i, j, n;
      for (i = 0; i<p->length; i++)
      {
                if (p->a<p->a && i>m)
                {
                        n = p->a;
                        for (j = i; j>0; j--)
                        {
                              p->a = p->a;
                              
                        }p->a = n;
                }
      }
      for (i = 0; i < p->length; i++)
      {
                printf("%d ", p->a);
      }
}

WFR 发表于 2020-4-26 16:18:33

sunrise085 发表于 2020-4-26 15:58
问题实在太多了,改了之后就已经不记得都修改过哪里了。

谢谢大哥{:7_146:}

WFR 发表于 2020-4-26 16:19:26

WFR 发表于 2020-4-26 16:18
谢谢大哥

错误        5        error C1075: 与左侧的 大括号“{”(位于“w:\visual studio 2013\projects\consoleapplication4\consoleapplication4\源.c(30)”)匹配之前遇到文件结束        w:\visual studio 2013\projects\consoleapplication4\consoleapplication4\源.c        102        1        ConsoleApplication4
这个怎么改的呢???
页: [1]
查看完整版本: 怎么改才能够白提示的错误去除???