求助C编程问题,求大神们帮我看看
本帖最后由 ghllqwh 于 2018-1-23 16:48 编辑#include <stdio.h>
void main()
{
int a, b, max;
printf("\n input two number:");
scanf("%d,%d",&a, &b);
max = a;
if(max<b)
{
max = b;
}
printf("max= %d",max);
}
这个程序应该是输出两个数中的最大值,但是我mac电脑(双系统,用的win10),
输出结果却总是第一个数,不知道为什么
看了你们的答案,我试了一下,还是不行啊
scanf("%d,%d",&a, &b); 你双引号里是“%d,%d”,输入就应该写成10,20 scanf的用法没理解清楚,你写的是 scanf("%d,%d",&a, &b); 所以应该输入10,20
或者这么写 scanf(“%d%d”,&a,&b); 两%d之间不要有逗号,可以有空格 人造人 发表于 2018-1-23 16:08
scanf("%d,%d",&a, &b);
试了,还是不行 这样 scanf("%d %d",&a, &b); 的话你的输入就可以得到正确结果
本帖最后由 ghllqwh 于 2018-1-23 17:08 编辑
秋木叶 发表于 2018-1-23 16:56
这样 scanf("%d %d",&a, &b); 的话你的输入就可以得到正确结果
我懂了,scanf调用的时候,是赋予地址的,如果有逗号的话,就算占有地址了, ghllqwh 发表于 2018-1-23 16:48
试了,还是不行
我又没有让你直接改成这样,我指的是这个有问题 人造人 发表于 2018-1-23 17:07
我又没有让你直接改成这样,我指的是这个有问题
谢谢,谢谢,我搞定了,
页:
[1]