黑马程序员技术交流社区

标题: scanf("%d\n")??多了个换行符,就得多敲入一个数字才能正常输出??? [打印本页]

作者: 嗨灬小凯    时间: 2015-4-29 17:22
标题: scanf("%d\n")??多了个换行符,就得多敲入一个数字才能正常输出???
#include<stdio.h>

int max(int a,int b)
{
    int MAX;
    MAX=a>b?a:b;
    return MAX;
}


int main(void)
{   
    int (*pmax)(int,int);
    int x,y,z;
    int max(int a,int b);
    pmax=max;
    printf("Please input two data:\n");
    scanf("%d %d\n",&x,&y);/*scanf函数后边加了换行符出问题*/
    printf("%d    %d\n",x,y);
    z=(*pmax)(x,y);
    printf("%d\n",z);
    return 0;
}
本来是接收2个字符的,不小心加了个换行符,结果要输入三个数字后,再回车才可以正常输出结果?

为什么
作者: ydy96315    时间: 2015-4-30 06:43
你加了\n     输入的时候也是要加\n 啊。\n并不是输入控制符
50 60\n
作者: 嗨灬小凯    时间: 2015-4-30 15:42
这个问题我也想知道
作者: zhangshuai    时间: 2015-5-23 18:08
scanf  后面不能+  \n
作者: kakade    时间: 2015-5-23 20:09
赞一个  谢谢
作者: kakade    时间: 2015-5-23 20:30
ydy96315 发表于 2015-4-30 06:43
你加了\n     输入的时候也是要加\n 啊。\n并不是输入控制符
50 60\n

谢谢  我也有这个问题




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2