| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 695 人关注过本帖
标题:指针函数
只看楼主 加入收藏
B李庚
Rank: 2
等 级:论坛游民
帖 子:15
专家分:24
注 册:2011-12-1
结帖率:100%
收藏
 问题点数:0 回复次数:10 
指针函数
进来的帮我看看哪出错了
我也再分析分析。
顺便说说环境:VC6.0;
#include<stdio.h>
int max_array(int *p,int n);
{   int k=0,i;
    max=*p;
    for(i=0;i<n;i++)
    {if(*(p+i)>max)
    {max=*(p+i);k=i;}
     return k;
    }
}
void main()
{ int a[10]={15,45,89,56,58,51,25,32,26,27},k,i;
  for(i=0;i<10;i++)
  printf("%d",a[i]);
  int *p=a;
  k=max_array(a,10);
  printf("%\n%d\n",*(p+k),k);
}
报错:error C2447: missing function header (old-style formal list?)
搜索更多相关主题的帖子: imax return 
2011-12-03 12:19
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
都是低级错误,认真点

总有那身价贱的人给作业贴回复完整的代码
2011-12-03 12:33
原味好
Rank: 4
来 自:西安
等 级:业余侠客
帖 子:59
专家分:250
注 册:2011-11-29
收藏
得分:0 
你看看把
程序代码:
#include<stdio.h>
int max_array(int *p,int n);//这里多了个分号
{   int k=0,i;//max 没定义
    max=*p;
    for(i=0;i<n;i++)
    {if(*(p+i)>max)
    {max=*(p+i);k=i;}
     return k;//这个语句应该放在for循环外面
    }
}
void main()
{ int a[10]={15,45,89,56,58,51,25,32,26,27},k,i;
  for(i=0;i<10;i++)
  printf("%d",a[i]);
  int *p=a;
  k=max_array(a,10);
  printf("%\n%d\n",*(p+k),k);//这里的%好后面少个d
}
2011-12-03 12:41
AHUSPEED紫枫
Rank: 1
等 级:新手上路
帖 子:11
专家分:3
注 册:2011-2-3
收藏
得分:0 
return k 返回是放循环体里吗?
还有最后printf少个%d
不过编译下还是有问题,小白我,同求解。^_^
2011-12-03 12:42
B李庚
Rank: 2
等 级:论坛游民
帖 子:15
专家分:24
注 册:2011-12-1
收藏
得分:0 
谢了,看到了,max没定义;形参后面多个分号
2011-12-03 12:43
AHUSPEED紫枫
Rank: 1
等 级:新手上路
帖 子:11
专家分:3
注 册:2011-2-3
收藏
得分:0 
晕啊,你竟然在函数定义后面加了 ;
太坑爹了
2011-12-03 12:46
B李庚
Rank: 2
等 级:论坛游民
帖 子:15
专家分:24
注 册:2011-12-1
收藏
得分:0 
#include<stdio.h>
int max_array(int *p,int x)
{int max,i,k=0;
max=*p;
 for(i=0;i<x;i++)
     if(max<*(p+i)) {max=*(p+i);k=i;}
     return k;
}
void main()
{int a[10]={12,15,78,9,5,86,48,15,85,47},i,k;
for(i=0;i<10;i++)
printf("%5d",a[i]);
k=max_array(a,10);
printf("\nmax=a[%d]=%d\n",k,*(p+k));

}
改后还有问题
刚学指针,有点头疼。
望不吝赐教
2011-12-03 13:19
a442642113
Rank: 1
等 级:新手上路
帖 子:3
专家分:4
注 册:2011-12-3
收藏
得分:0 
程序代码:
#include<stdio.h>
int max_array(int *p,int x)
{
int max,i,k=0;
max=*p;
for(i=0;i<x;i++)
     if(max<*(p+i)) {max=*(p+i);k=i;}
     return k;
}
void main()
{int a[10]={12,15,78,9,5,86,48,15,85,47},i,k;
for(i=0;i<10;i++)
printf("%5d",a[i]);
k=max_array(a,10);
printf("\nmax=a[%d]=%d\n",k,*(p+k));//这里的指针变量p没定义

}
2011-12-03 13:21
B李庚
Rank: 2
等 级:论坛游民
帖 子:15
专家分:24
注 册:2011-12-1
收藏
得分:0 
#include<stdio.h>
int max_array(int *p,int n)
{int k=0,max=*p,i;
   for(i=0;i<n;i++)
     if(*(p+i)>max) {max=*(p+i);k=i;}
   return k;
}
void main()
{int a[10]={12,15,48,149,19,12,15,48,88,99};
 int i,*p=a,k;
 for(i=0;i<10;i++)
     printf("%5d",*(p+i));
 k=max_array(a,10);
 printf("\nmax=a[%d]=%d\n",k,*(p+k));


}  这是无误代码
2011-12-03 13:33
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 9楼 B李庚
你犯的错误跟你刚学指针有毛关系呀?好好想想自己的学习方法是不是改进一下

总有那身价贱的人给作业贴回复完整的代码
2011-12-03 13:37
快速回复:指针函数
数据加载中...
 
   



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

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