这个实现调用一个函数,实现找最大,最小,和值的程序不晓得哪里出错了,无法实现
#include <stdio.h>int max(int i,int j)
{
int k;
if(i>j)
{
k=i;
}
else
{
k=j
}
return k;
}
int mix(int i,int j)
{
int k;
if(i<j)
{
k=i;
}
else
{
k=j;
}
return k;
}
int add(int i,int j)
{
int k;
k=i+j;
return k;
}
int main()
{
int i,j;
int max(int ,int );
int mix(int ,int );
int add(int ,int );
void process(int x,int y,int(*p)());
printf("请输入两个数:\n");
scanf("%d %d",&i,&j);
printf("最大值是");
process(i,j,max);
printf("最小值是");
process(i,j,mix);
printf("两数和是");
process(i,j,add);
return 0;
}
本帖最后由 ●初晨猛胾● 于 2014-9-21 17:18 编辑
你主要是对函数的调用这块出错了,你比较一下我俩的代码,你就能发现你试一下我这个
#include<stdio.h>
int max(int a,int b)
{
int k;
if(a>b)
{
k=a;
}
else k=b;
return k;
}
int min(int a,int b)
{
int k;
if(a<b)
{
k=a;
}
else k=b;
return k;
}
int add(int a,int b)
{
int k;
k=a+b;
return k;
}
void main()
{
int add(int a,int b);
int min(int a,int b);
int max(int a,int b);
int a,b;
printf("请输入两个数,中间用逗号隔开:\n");
scanf("%d,%d",&a,&b);
printf("最大数是:%d\n",max(a,b));
printf("最小的数是:%d\n",min(a,b));
printf("两个数的和是:%d\n",add(a,b));
}
#include <stdio.h>
int max(int i,int j)
{
int k;
if(i>j)
{
k=i;
}
else
{
k=j;
}
return k;
}
int mix(int i,int j)
{
int k;
if(i<j)
{
k=i;
}
else
{
k=j;
}
return k;
}
int add(int i,int j)
{
int k;
k=i+j;
return k;
}
//¼ÓÉÏÕâ¸öº¯Êý¶¨Òå
void process(int x,int y,int(*p)(int, int))
{
printf("%d\n",p(x,y));
}
int main()
{
int i,j;
int max(int ,int );
int mix(int ,int );
int add(int ,int );
//void process(int x,int y,int(*p)());//ÐÞ¸ÄÕâ¸öº¯ÊýµÄÉùÃ÷
void process(int x,int y,int(*p)(int, int));
printf("ÇëÊäÈëÁ½¸öÊý:\n");
scanf("%d %d",&i,&j);
printf("×î´óÖµÊÇ");
process(i,j,max);
printf("×îСֵÊÇ");
process(i,j,mix);
printf("Á½ÊýºÍÊÇ");
process(i,j,add);
return 0;
} ●初晨猛胾● 发表于 2014-9-21 17:16
你主要是对函数的调用这块出错了,你比较一下我俩的代码,你就能发现你试一下我这个
你没懂我的意思,这个例题是小甲鱼视频里面关于指针那章一个问题,要达到调用同一个函数process达到求最大最小和和值的作用,你这个里面是分别用的 仰望天上的光 发表于 2014-9-21 19:22
额,我还是没看到我错在哪里额 定义max函数时,有一个赋值语句丢分号了
页:
[1]