| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1354 人关注过本帖
标题:遇到一个问题,大神帮我看看
只看楼主 加入收藏
North520
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2016-3-2
结帖率:30.77%
收藏
已结贴  问题点数:20 回复次数:5 
遇到一个问题,大神帮我看看
/*(2)数组名作为函数参数。程序功能:用选择发对10个整数排序。*/
#include<stdio.h>
void main ()
{
    int *p,i,a[10];
    p=a;
    for (i=0;i<10;i++)
        scanf("%d",p++);
    p=a;
    int sort (p,10);
    for (p=a,i=0;i<10;i++)
    {
        printf("%5d",*p);
        p++;}
    printf("\n");
}
void sort (int x[],int n)
{
    int i,j,k,t;
    for (i=0;i<n-1;i++)
    {
        for (i=0;i<n-1:i++)
            if (x[j]>x[k]) k=j;
            if (k!=i)
            {
            t=x[i];x[i]=x[k];x[k]=t;
            }
    }
}
ompiling...
zhizhenyujiegouti02.c
E:\150807141141\zhizhenyujiegouti02.c(10) : error C2143: syntax error : missing ';' before 'type'
E:\150807141141\zhizhenyujiegouti02.c(10) : error C2143: syntax error : missing ';' before ')'
E:\150807141141\zhizhenyujiegouti02.c(22) : error C2143: syntax error : missing ';' before ':'
E:\150807141141\zhizhenyujiegouti02.c(22) : error C2143: syntax error : missing ')' before ':'
E:\150807141141\zhizhenyujiegouti02.c(22) : error C2143: syntax error : missing ';' before ':'
E:\150807141141\zhizhenyujiegouti02.c(22) : error C2059: syntax error : ')'
执行 cl.exe 时出错.

zhizhenyujiegouti02.obj - 1 error(s), 0 warning(s)
帮我看看,谢谢了
搜索更多相关主题的帖子: include 
2016-06-09 16:49
随风飘荡
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:208
专家分:598
注 册:2011-9-9
收藏
得分:5 
这种错误信息就应该学着自己看,
E:\150807141141\zhizhenyujiegouti02.c(10) : error C2143: syntax error : missing ';' before 'type'
     第十行少了个分号在类型前面,好。虽然不一定是这个问题,但是你可以去这行看看你觉得哪里不对吗
看看你的函数原型。还有函数调用是这样用的吗
2016-06-09 16:54
alice_usnet
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:370
专家分:2020
注 册:2016-3-7
收藏
得分:5 
int sort (p,10);

改为
void sort (int x[],int n);
sort (p,10);

sort改为
程序代码:
void sort (int x[],int n)
{
    int i,j,k,t;
    for (i=0;i<n-1;i++)
    {
        k=i;
        for (j=i;j<n-1:j++)
            if (x[j]>x[k]) k=j;
            if (k!=i)
            {
            t=x[i];x[i]=x[k];x[k]=t;
            }
    }
}


[此贴子已经被作者于2016-6-9 17:37编辑过]


未佩好剑,转身便已是江湖
2016-06-09 17:04
lanke711
Rank: 9Rank: 9Rank: 9
来 自:流浪在天国之路
等 级:蜘蛛侠
威 望:7
帖 子:317
专家分:1437
注 册:2015-7-16
收藏
得分:5 
void sort (int x[],int n)这个函数要声明原型。
因为是在main函数的后面定义的。

普通人之所以普通,是因为他们普遍有一个通病,那就是认为自己永远普通。
千夫所指,我亦坚持。就算被所有人误解,我也照样守护这一切。
我们总是觉得,这些灵魂的表情,傲慢自大,目中无人,其实,真正目中无人的是我们。它们傲慢的不过是表情,而我们傲慢的却是行为!
记得,是为了忘记!
只要想着有那么一天,我就能忍受现在的每一天!
灾难并不可怕,可怕的是心中没有了希望。
你以为我在天堂,其实我正在路上。
当你觉得自己走不到终点的时候,请不要放弃。或许你的对手也是这种感觉。
2016-06-09 17:19
North520
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2016-3-2
收藏
得分:0 
回复 3楼 alice_usnet
还是不行,/*(2)数组名作为函数参数。程序功能:用选择发对10个整数排序。*/
#include<stdio.h>

void main ()
{
    int *p,i,a[10];
    p=a;
    for (i=0;i<10;i++)
        scanf("%d",p++);
    p=a;
    void sort (int x[],int n);
    void sort (p,10);
    for (p=a,i=0;i<10;i++)
    {
        printf("%5d",*p);
        p++;}
    printf("\n");
}

void sort (int x[ ],int n)
{
    int i,j,k,t;
    for (i=0;i<n-1;i++)
    {
        k=i;
        for (j=k;i<n-1:i++)
            if (x[j]>x[k]) k=j;
            if (k!=i)
            {
            t=x[i];x[i]=x[k];x[k]=t;
            }
    }
}
2016-06-09 19:25
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:5 
#include<stdio.h>

int main ()
{
    int *p,i,a[10];
    p=a;
    for (i=0;i<10;i++)
        a[i]=i+1;
    p=a;
    void sort (int x[10],int n);
    sort(p,10);
    for (p=a,i=0;i<10;i++)
    {
        printf("%5d",*p);
        p++;}
    printf("\n");
}

void sort (int x[10],int n)
{
    int i,j,k,t;
    for (i=0;i<n;i++)
    {
        k=i;
        for(j=k;j<n;j++)
            if (x[j]>x[k]) k=j;
            if (k!=i)
            {
            t=x[i];x[i]=x[k];x[k]=t;
            }
    }
}
用你的代码修改的,自己对比下。
2016-06-09 20:29
快速回复:遇到一个问题,大神帮我看看
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018579 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved