请高手来看看这段C程序

来源:百度知道 编辑:UC知道 时间:2024/05/09 19:12:34
目的是输入三个数,然后输出最大的:

#include<stdio.h>
main()
{
int a,b,c,x;
printf("请输入三个数:\n");
scanf("%d,%d,%d",&a,&b,&c);
x=a;
if (x<b) x=b;
if (x<c) x=c;
printf(" %d\n",x);
}

在cfree中运行,输入三个数(2 8 1)后结果居然是 65536 !在turbo2.0中运行,结果是一个三位数。到底是怎么回事呢?

我用的是深度精简版xp,会不会是和这个有关系?

哈哈,输入2,8,1试试,别忘了逗号啊
如果你想输入2 8 1 就改一下这里
scanf("%d %d %d",&a,&b,&c);

#include<stdio.h>
main()
{
int a,b,c,x;
printf("请输入三个数:\n");
scanf("%d,%d,%d",&a,&b,&c);//这里有问题 要这样输入45,65,695就行了
或者改成scanf("%d%d%d",&a,&b,&c);//一个一个的输入,45回车65回车695回车
x=a;
if (x<b) x=b;
if (x<c) x=c;
printf(" %d\n",x);
}

#include <stdio.h>
#include <stdlib.h>

void main()
{
int a,b,c,x;
printf("请输入三个数字:\n");
scanf("%d%d%d",&a,&b,&c);
x=a;
if (x<b)
x=b;
if (x<c)
x=c;
printf("%d\n",x);
system("pause");
}
就是","的问题

scanf("%d,%d,%d",&a,&b,&c)
因为你加了","那么输入3个数据的时候也要输入","