我编了一个程序,编译出来是没有错误的,但是组建的时候就出现了一个错误,这是怎么回事啊?
具体题目是:输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换。编写3个函数:(1)输入10个数;(2)进行处理;(3)输出10个数程序如下#inc...
具体题目是:输入10个整数,将其中最小的数与第一个数对换,把最大的数和最后一个数对换。编写3个函数:(1)输入10个数;(2)进行处理;(3)输出10个数
程序如下
#include <stdio.h>
void main()
{
void input(int *);
void max_min(int *);
void output(int *);
int a[10];
input(a);
max_min(a);
}
void input(int a[])
{
int i;
printf("input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
}
void max_min(int a[])
{
int *max,*min,*p,t;
max=min=a;
for(p=a+1;p<a+10;p++)
if(*p>*max) max=p;
else if(*p<*min) min=p;
t=a[0];a[0]=*min;*min=t;
if(max=a)
t=a[9];a[9]=*max;*max=t;
}
void output(int a[])
{
int *p;
printf("change like this:\n");
for(p=a;p<a+10;p++)
printf("\n");
}
错误提示是Linking...
入处出.obj : error LNK2001: unresolved external symbol "void __cdecl max_min(int *)" (?max_min@@YAXPAH@Z)
入处出.obj : error LNK2001: unresolved external symbol "void __cdecl input(int *)" (?input@@YAXPAH@Z)
Debug/入处出.exe : fatal error LNK1120: 2 unresolved externals
执行 link.exe 时出错.
求好心人帮忙看看一下 展开
程序如下
#include <stdio.h>
void main()
{
void input(int *);
void max_min(int *);
void output(int *);
int a[10];
input(a);
max_min(a);
}
void input(int a[])
{
int i;
printf("input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
}
void max_min(int a[])
{
int *max,*min,*p,t;
max=min=a;
for(p=a+1;p<a+10;p++)
if(*p>*max) max=p;
else if(*p<*min) min=p;
t=a[0];a[0]=*min;*min=t;
if(max=a)
t=a[9];a[9]=*max;*max=t;
}
void output(int a[])
{
int *p;
printf("change like this:\n");
for(p=a;p<a+10;p++)
printf("\n");
}
错误提示是Linking...
入处出.obj : error LNK2001: unresolved external symbol "void __cdecl max_min(int *)" (?max_min@@YAXPAH@Z)
入处出.obj : error LNK2001: unresolved external symbol "void __cdecl input(int *)" (?input@@YAXPAH@Z)
Debug/入处出.exe : fatal error LNK1120: 2 unresolved externals
执行 link.exe 时出错.
求好心人帮忙看看一下 展开
4个回答
展开全部
请注意 *a 与a[]的区别
这二者有相似点但也有区别
#include <stdio.h>
void main()
{ int a[10];
void max_min(int *);
void input(int *);
input(a);
max_min(a);
//system("pause");
}
void input(int *a)
{
int i;
printf("input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
}
void max_min(int *a)
{
int *max,*min,*p,t;
max=min=a;
for(p=a+1;p<a+10;p++)
if(*p>*max) max=p;
else if(*p<*min) min=p;
t=a[0];a[0]=*min;*min=t;
if(max=a)
t=a[9];a[9]=*max;*max=t;
}
void output(int *a)
{
int *p;
printf("change like this:\n");
for(p=a;p<a+10;p++)
printf("\n");
}
这二者有相似点但也有区别
#include <stdio.h>
void main()
{ int a[10];
void max_min(int *);
void input(int *);
input(a);
max_min(a);
//system("pause");
}
void input(int *a)
{
int i;
printf("input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
}
void max_min(int *a)
{
int *max,*min,*p,t;
max=min=a;
for(p=a+1;p<a+10;p++)
if(*p>*max) max=p;
else if(*p<*min) min=p;
t=a[0];a[0]=*min;*min=t;
if(max=a)
t=a[9];a[9]=*max;*max=t;
}
void output(int *a)
{
int *p;
printf("change like this:\n");
for(p=a;p<a+10;p++)
printf("\n");
}
展开全部
main函数之前声明下面的函数或者把下面的函数放在上面,推荐第一种,在试试,我没有看你的代码,写的位置就不正确,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵!编译就出错?你怎么确定编 的正确呢?你把错误提示发出来看看吧!!
***** 发个
|黑 信| 神马
|吧 息|
|安 来| 广 就那么难?
|全 源| 告
|网 :| 年代
***** 呵呵!不要介意后面滴啊!
但是感兴趣可以去看看~~
***** 发个
|黑 信| 神马
|吧 息|
|安 来| 广 就那么难?
|全 源| 告
|网 :| 年代
***** 呵呵!不要介意后面滴啊!
但是感兴趣可以去看看~~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵!编译就出错?你怎么确定编 的正确呢?你把错误提示发出来看看吧!! 但是感兴趣可以去看看~~ 如果,你是WIn7系统..那么..Win7与VC 6.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询