C语言求两个整数中的较大者

2024年12月02日 08:32
有5个网友回答
网友(1):

首先新建一个win32控制台程序,再网工程里面添加一个 C++ SourceFile
注意命名C++ SourceFile文件时,加上 “.C” 后缀。

下面是源代码。
#include //编译预处理指令
int main() //定义主函数
{ //主函数体开始
int max(int x,int y); //对被调用函数 max 的声明
int a,b,c; //定义变量a,b,c
scanf("%d,%d",&a,&b); //输入变量a和b的值
c=max (a,b); //调用函数 max,将得到的值赋给c
printf("max=%dn",c); //输出c的值
return 0; //返回函数值为0
} //主函数体结束
int max(int x,int y) //定义max函数,函数值为整型,形式参数x,y为整型
{
int z; //定义整型变量z
if(x>y)z=x; //判断语句,若x的值大于y的值,则将x的值赋给z
else z=y; //否则将y的值赋给z
return(z); //返回z的值给主函数,即,把z的值赋给主函数体中的变量c
}
首先编译后,在运行。
运行过后,在同一行输入俩个不同的整数。 并用逗号隔开,按回车,即会显示出MAX=较大的数。

网友(2):

你的程序没有错,问题是输入数据时,输入了第一个数据后,一定输入一个英文半角的逗号,再输入第二个数,再回车。若想避免这个问题,必须把
scanf("%d,%d",&a,&b); 改为: scanf("%d %d",&a,&b);

你试一下看是否正确?

网友(3):


试试
输入用
6、7之间用
逗号隔离;
②其实
最大值的比较无需那么复杂,只要一条语句就有了:
scanf("%d,%d",&a,&b);
printf("max=%d\n",(a>b?a:b));

网友(4):

程序没问题 只不过是输入时要输入逗号 如1,2

网友(5):

#include

void main()
{
int max(int x,int y);

int a,b,c;
scanf("%d,%d",&a,&b);

c=max(a,b);

printf("max=%d\n",c);
}
int max(int x,int y)
{
int z;

if(x>y) z=x;
else z=y;

return z;
}

输入格式错误,输入时加,间隔两个数
scanf("%d,%d",&a,&b);

例:使用scanf函数输入数据。
#include
int main()
{
int a,b,c;
printf("输入 a, b, c\n");
scanf("%d,%d,%d", &a, &b, &c);
printf("a = %d b = %d c = %d\n", a, b, c);
fflush(stdin);
return 0;
}
注意上面的scanf("%d,%d,%d",&a,&b,&c);中%d,%d,%d之间有逗号,在输入数据时也要加逗号,如果去掉逗号,输入时就不用逗号,而用空格,tab键或回车键将各个数据隔开