C :1:错误:预期为&x2018=’‘’‘’‘;asm&x2019;或‘__属性’;在‘之前;{&x2019;代币

C :1:错误:预期为&x2018=’‘’‘’‘;asm&x2019;或‘__属性’;在‘之前;{&x2019;代币,c,arrays,C,Arrays,我是新来的 我犯了这个错误 gcc -Wall -o "merge" "merge.c" (in directory: /home/jenson/Documents) Compilation failed. merge.c: In function ‘part’: merge.c:7:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token { ^ merge.c:18:1:

我是新来的 我犯了这个错误

gcc -Wall -o "merge" "merge.c" (in directory: /home/jenson/Documents)  
Compilation failed.  
merge.c: In function ‘part’: 
merge.c:7:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token  
 {  
 ^  
merge.c:18:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token  
 {  
 ^  
merge.c:37:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token  
 {  
 ^  
merge.c:3:6: error: old-style parameter declarations in prototyped function definition  
void part(int a[], int n)  
     ^  
merge.c:54:1: error: expected ‘{’ at end of input  
 }  
 ^
代码是:

#include<stdio.h>
#include<stdlib.h>
void part(int a[], int n)
void merge(int a[],int n);
void sort(int[],int[],int n);
void main()
{
    int arr[10],i,n;
    printf("enter the 10 numbers :\n");
    for(i=0;i<10;i++)
    {
        scanf("%d",&arr[i]);
    }
    n=10;
    part(arr,n);
}
void sort(int a[],int b[],int n)
{
int i=0,j=0,t=0,c[10];
    while(i<n&&j<n)
    {
        if(a[i]>b[j])
        {
            c[t]=b[j];
            j++;
            t++
        }
        else
        {
            c[t]=a[i];
            i++;
            t++;
        }
    }
}
void part(int f[],int n)
{
    int f[10],g[10];
    if(n>=1)
    {
        int i;
        for(i=0;i<floor(n/2);i++)
        {
            f[i]=d[i];
        }
        part(f,floor(n/2));
        for(i=floor(n/2);i<n;i++)
        {
            g[i]=d[i];
        }
        part(f,feil(n/2));
    }
    sort(f,g,n);
}
#包括
#包括
无效部分(整数a[],整数n)
无效合并(int a[],int n);
无效排序(int[],int[],int n);
void main()
{
int-arr[10],i,n;
printf(“输入10个数字:\n”);

对于(i=0;i分号在原型声明中缺失)

void part(int a[], int n)
                         ^
sort()
函数中缺少另一个函数,位于
if

t++
   ^

您的代码,在多次重新编译之后,应该是这样的,我想我确实帮助了您

#include<stdio.h>
#include<stdlib.h>
#include <math.h>
void part(int a[], int n);
void merge(int a[],int n);
void sort(int[],int[],int n);
void main()
{
    int arr[10],i,n;
    printf("enter the 10 numbers :\n");
    for(i=0;i<10;i++)
    {
        scanf("%d",&arr[i]);
    }
    n=10;
    part(arr,n);
}
void sort(int a[],int b[],int n)
{
int i=0,j=0,t=0,c[10];
    while(i<n&&j<n)
    {
        if(a[i]>b[j])
        {
            c[t]=b[j];
            j++;
            t++;
        }
        else;
        {
            c[t]=a[i];
            i++;
            t++;
        }
    }
}
void part(int f[] ,int n)
{
    int a[10],g[10],d[10];
    if(n>=1)
    {
        int i;
        for(i=0;i<(floor(n/2));i++)
        {
            f[i]=d[i];
        }
        part(f,floor(n/2));
        for(i=floor(n/2);i<n;i++)
        {
            g[i]=d[i];
        }
        part(f,ceil(n/2));
    }
    sort(f,g,n);
}
#包括
#包括
#包括
无效部分(int a[],int n);
无效合并(int a[],int n);
无效排序(int[],int[],int n);
void main()
{
int-arr[10],i,n;
printf(“输入10个数字:\n”);
对于(i=0;iAlso part()有两个“f”的声明(一个是参数),0个“d”的声明(已使用,但未声明),我认为“feil”应该是“ceil”(用于天花板而不是地板)。可能还需要
#包括