| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1119 人关注过本帖
标题:请问这个函数调用时哪里出错了
只看楼主 加入收藏
yan570319159
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-22
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
请问这个函数调用时哪里出错了
  这是一个将数列按要求组合成二维数组的函数:
void zu(int a[5],int b[5],int c[5],int d[5],int e[5],int f[5],int g[5],int h[5],int x[5],int y[5],int m[5][5])
{int i;
    for(i=0;i<5;i++) m[0][i]=a[i]; for(i=0;i<5;i++) m[1][i]=b[i]; for(i=0;i<5;i++) m[2][i]=c[i]; for(i=0;i<5;i++) m[3][i]=d[i];
    for(i=0;i<5;i++) m[4][i]=e[i];
       for(i=0;i<5;i++) if(f[i]==0) m[i][0]=f[i];
      for(i=0;i<5;i++) if(g[i]==0) m[i][1]=g[i];
      for(i=0;i<5;i++) if(h[i]==0) m[i][2]=h[i];
      for(i=0;i<5;i++) if(x[i]==0) m[i][3]=x[i];
      for(i=0;i<5;i++) if(y[i]==0) m[i][4]=y[i];
  
   调用语句如下:{ zu(b1[5],b2[5],b3[5],b4[5],b5[5],b6[5],b7[5],b8[5],b9[5],b10[5],a[5][5]) ;
    系统提示错误: 'function' : 'int *' differs in levels of indirection from 'int '
          哪里出错了啊???求大神指点!!!
2016-08-22 18:12
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:10 
函数的参数太多了
2016-08-22 18:18
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:10 

b1[5]   表示的是一个元素,而不是数组!!!你忘了吗?


修改调用语句如下:{ zu(b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,a) ;

φ(゜▽゜*)♪
2016-08-22 18:18
yan570319159
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-22
收藏
得分:0 
回复 3楼 书生牛犊
谢谢  好久没学c语言了
2016-08-22 18:23
yan570319159
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-22
收藏
得分:0 
回复 3楼 书生牛犊
   {k=cha(a); if(k<min) {min=k;m[5][5]=a[5][5];}} if(i10!=4) {t=b1[i10+1];b1[i10+1]=b1[i10];b1[i10]=t;}}
        b1[i10-1]=1;b1[0]=0; if(i9!=4) {t=b2[i9+1];b2[i9+1]=b2[i9];b2[i9]=t;}
        b2[i9-1]=1;b2[0]=0; if(i8!=4) {t=b3[i8+1];b3[i8+1]=b3[i8];b3[i9]=t;}
        b3[i8-1]=1;b3[0]=0; if(i7!=4) {t=b4[i7+1];b4[i7+1]=b4[i7];b4[i9]=t;}
        b4[i7-1]=1;b4[0]=0; if(i6!=4) {t=b5[i6+1];b5[i9+1]=b5[i6];b5[i9]=t;}
        b5[i6-1]=1;b5[0]=0; if(i5!=4) {t=b6[i5+1];b6[i5+1]=b6[i5];b6[i9]=t;}
        b6[i5-1]=1;b6[0]=0; if(i4!=4) {t=b7[i4+1];b7[i4+1]=b7[i4];b7[i9]=t;}
        b7[i4-1]=1;b7[0]=0; if(i3!=4) {t=b8[i3+1];b8[i3+1]=b8[i3];b8[i9]=t;}
        b8[i3-1]=1;b8[0]=0; if(i2!=4) {t=b9[i2+1];b9[i2+1]=b9[i2];b9[i9]=t;}
        b9[i2-1]=1;b9[0]=0; if(i1!=4) {t=b10[i1+1];b10[i1+1]=b10[i1];b10[i9]=t;}

    printf("最少扣棋子个数是%5d\n",min);  printf("\n\n该矩阵是:\n");
        for(i=0;i<5;i++)  {for(j=1;j<5;j++) printf("%3d",m[i][j]);printf("\n");}
}
 你好, 我想请问  最后那个分号哪里系统说 unexpected end of file found 意外停止是什么意思?
2016-08-22 18:33
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:0 
我把你的代码复制下来发现第一行的大括号不匹配。。。。
不过如果是大括号不匹配的话,通常你是过不了编译的!

如果你编译通过,可是运行的时候弹出了这么一个提示,,,那么我猜你是数组访问过界。。。我不知道你这个程序是干嘛的,,,这么多变量

意外停止的原因很多,比如指针访问到一个不能访问的地方、除数为0的运算、数组访问过界、、、、蛮多的。

φ(゜▽゜*)♪
2016-08-22 18:46
yan570319159
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-22
收藏
得分:0 
回复 6楼 书生牛犊
谢谢啦  刚才弄好了
2016-08-22 20:29
快速回复:请问这个函数调用时哪里出错了
数据加载中...
 
   



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

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