C语言scanf问题求解

来源:百度知道 编辑:UC知道 时间:2024/06/07 04:44:48
#include<stdio.h>
main()
{
int a,b;
char c;
float d;
scanf("%d,%d",&a,&b);
scanf("%c %f\n",&c,&d);
}
使a=1,b=2,c='A',d=5.5,在键盘上如何输入,并加上输出语句,核对结果。输入我会,但是每次输出结果都不对,估计是输出语句出错了。请知道的朋友帮忙加个输出语句,调试成功的告诉我下。谢谢了。附带一句,输出字符,是不是只有putchar可以。
麻烦回答问题的先看完问题再说好不好。我现在问的是输出语句是什么,希望调试过的来吧。好多答案跟我的输出语句是一样的,但就是输出不了我要的结果。

#include<stdio.h>
main()
{
int a,b;
char c;
float d;
scanf("%d,%d",&a,&b);
scanf("%c %f\n",&c,&d);
printf("a=%d,b=%d,c=%c,d=%f",a,b,c,d);
getch();
}

输入:1,2A(2个空格)5.5<回车>

第二个scanf函数读入了第一个scanf函数中输入的回车符,导致后面的结果不正确。可以在两个scanf函数中间增加 fflush(stdin);清空缓冲区
这样就可以输入:1,2<enter>A 5.5<enter>

你这里没有输出语句,不会有输出的。输入格式是这样的。
1,2
A,1.222

加上输出语句printf("a=%d,b=%d,c=%c,d=%f\n");
putchar()(单字符输出)和printf()都可以

printf呢? 你是初学者吧

#include<stdio.h>
{
int a,b;
charc;floatd;
scanf("%d%d",&a,&b);
scanf("%c%f",&c,&d);
printf("%d%d",a,b);
printf("%f",d);
putchar(c);
}

就是,你的里面就只有输入语句,没有输出语句。怎么可能输出呢