请编写程序从键盘读入数据,并按要求输出
输入格式
共三行。
第一行:输入两个整数,中间用一个逗号隔开;
第二行:输入两个浮点数,中间用空格隔开;
第三行:输入两个字母,每个字母前面加一个空格,中间加一个逗号。
输出格式
按照输入的原样输入数据,其中的浮点数输出时保留小数点后1位。
这个如何写c语言代码?
我写的如下:
#include
main()
{
int a, b, f;
float c, d;
int i = 0;
char s[];
scanf("%d%d", &a, &b);
scanf("%f%f", &c, &d);
while ((f = getchar()) != EOF)
{
if (f != ' ' && ',' && '\n' && '.')
{
s[i] = f;
++i;
}
}
printf("%d,%d\n", a, b);
printf("%.1f %.1f\n", c, d);
printf(" %c, %c", s[0], s[1]);
}
不知道错在哪里
#include<stdio.h>
int main()
{
int a, b, f;
float c, d;
int i = 0;
char s[10];
scanf("%d,%d", &a, &b);//这里题目说明使用逗号
scanf("%f %f", &c, &d);//这里题目说明使用空格
getchar();//读取换行
while ((f = getchar()) != EOF)
{
if (f != ' ' && f != ',' && f != '\n' && f != '.')//不能只写一个符号
{
s[i] = f;
++i;
}
if(f == '\n'){
break;//换行时跳出循环
}
}
printf("%d,%d\n", a, b);
printf("%.1f %.1f\n", c, d);
printf(" %c, %c", s[0], s[1]);
}
不知道你这个问题是否已经解决, 如果还没有解决的话: