首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在C语言中打印排序数组时出错?

在C语言中打印排序数组时出错?
EN

Stack Overflow用户
提问于 2018-10-22 23:27:49
回答 1查看 64关注 0票数 0

我正在尝试为数组创建排序函数。我按升序使用选择排序,但我不知道我的"output“函数有什么问题,我知道在堆栈溢出时也有人问过类似的问题,但答案对我帮助不大。Dev token上的错误显示为"Error a function-definition is not allowed here like '{‘C++“.

代码语言:javascript
复制
#include<stdio.h>
#include<stdlib.h>

void sort(int arr[], int n)
{
    int minindex;
    int t,i,j;
    for(i=0;i<n-1;i++)
    {
        minindex=i;
        for(j=i+1; j<n; j++)
        {
        if(arr[minindex]>arr[j])
        minindex=j;
    }
    if(minindex>1)
    {
        int t=arr[minindex];
        arr[minindex]=arr[i];
        arr[i]=t;
    }
}

void output(int arr[], int n)
{
    for(int i=0; i<n; i++)
    {
        printf("%5d", arr[i]);
    }
}

int main()
{
    int arr[]={1,3,5,7,9,2,4,6,8,0};
    int*a=(int*)calloc(10,sizeof(int));
    sort(a,10);
    ouput(a,10);
    getchar(); getchar();
    return 0;
}
EN

回答 1

Stack Overflow用户

发布于 2018-10-23 01:07:47

  1. 如果你使用CodeBlocks,你可以进入插件->源代码格式化程序(AStyle)自动格式化你的代码。不知道DevC++。
  2. 数组名称本身就是指向内存中第一个数组项位置的指针。不需要创建int* (它没有在你的代码中使用)
  3. 在使用之前不要定义一个变量。
  4. 要比较两个文件,在Linux上运行一个比较风格的程序(或者在两个窗口中并排打开文件)。如果你使用的是windows,你可以在函数之前使用meld.exe.
  5. main() on。参见main()之前的函数声明。它被认为是更好的。更好的方法是将函数移到大括号'{‘上的另一个file.
  6. Clicking中,在任何集成开发环境中都应该突出显示相应的大括号。
  7. 缩进不佳几乎总是会加剧缺少大括号的问题。

我很想给你代码,但我相信你可以自己编辑。-输出

代码语言:javascript
复制
    0    1    2    3    4    5    6    7    8    9
Process returned 0 (0x0)   execution time : -0.000 s
Press any key to continue.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52932851

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档