汇编没事,运行出错,求帮帮忙
题目;求输入两个数,没次调用Process是都有不同的功能#include <stdio.h>
void main()
{
int max(int, int);
int min(int, int);
int add(int, int);
void process(int, int, int(*fun)());
int a, b;
pirntf("Endter a and b: ");
scanf("%d %d", &a, &b);
printf("max = ");
process(a, b, max);
printf("min = ");
process(a, b, min);
printf("sum = ");
process(a, b, add);
}
void process(int x, int y, int(*fun)())
{
static int i = 1;
i = i + 1;
if(i = 2)
{
max(x, y);
}
if(i = 3)
{
min(x, y);
}
if(i = 4)
{
add(x, y);
}
}
int max(int a, int b)
{
int z;
if(a > b)
z = a;
else
z = b;
return z;
}
int min(int a, int b)
{
int z;
if(a < b)
z = a;
else
z = b;
return z;
}
int add(int a, int b)
{
int z;
z = a + b;
return z;
}
#include <stdio.h>
void main()
{
int max(int, int);
int min(int, int);
int add(int, int);
//void process(int, int, int(*fun)());
int process(int, int, int(*fun)());
int a, b;
//pirntf("Endter a and b: ");
printf("Endter a and b: ");
scanf("%d %d", &a, &b);
//printf("max = ");
printf("max = %d\n",process(a, b, max));
//process(a, b, max);
//printf("min = ");
printf("min = %d\n",process(a, b, min));
//process(a, b, min);
//printf("sum = ");
printf("sum = %d\n",process(a, b, add));
//process(a, b, add);
}
//void process(int x, int y, int(*fun)())
int process(int x, int y, int(*fun)())
{
static int i = 1;
i = i + 1;
//if(i = 2)
if(i == 2)
{
//max(x, y);
return max(x, y);
}
//if(i = 3)
if(i == 3)
{
//min(x, y);
return min(x, y);
}
//if(i = 4)
if(i == 4)
{
//add(x, y);
return add(x, y);
}
return -8;
}
int max(int a, int b)
{
int z;
if(a > b)
z = a;
else
z = b;
return z;
}
int min(int a, int b)
{
int z;
if(a < b)
z = a;
else
z = b;
return z;
}
int add(int a, int b)
{
int z;
z = a + b;
return z;
}
输出函数都调用错误不运行出错都怪了 printf你写个什么 pirntf 要改的地方貌似很多,首先,函数声明要放在前面,有个printf写错了,还有,process就算算了max min mid也没有输出的样子。。总体感觉怪怪地。 谢谢你的帮助 要改的地方貌似很多,首先,函数声明要放在前面,有个printf写错了,还有,process就算算了max min mid也没有输出的样子。。总体感觉怪怪地。
页:
[1]