今天的这道题目呢,是想与大家谈一谈如何用C语言实现混合类型数据格式化输入。
这道题是收录在基础编程题目集当中的第五题。
难度不大,但是需要大家掌握基本的基础知识。
题目要求1、顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。
2、输出的浮点数需要保留小数点后两位。
理顺逻辑
这道题目的逻辑就非常简单了。
需要输入指定的数据,那就要求使用到一个scanf函数。
需要将数据进行格式化输入与输出,那就需要用到%d、%c、%f等来表示输出数据的类型。
%d代表输出数据的类型为整数,%c代表输出数据的类型为字符型,%f代表输出数据的类型为float型,也就是浮点型。
除此之外还有其它的数据类型。
注意:浮点型要保留小数点后两位,要用到%0.2f。
代码实现
#include<stdio.h>
int main(){
float a;//浮点数1
int b;//整数
char c;//字符
float d;//浮点数2
scanf("%f %d %c %f", &a,&b,&c, &d);
printf("%c %d %0.2f %0.2f",c, b,a,d);
}
注意,因为题目要求按照指定的顺序输入与输出,所以我们就需要给输入的数据和输出的数据进行一个排序。
测试结果
总结
我在完成这道题目的时候也遇到了不少问题,归根结底还是因为对数据类型的不熟悉,%f、%d、%c之间容易混淆,特别是%f和%lf,前者代表float数据类型,后者是代表double类型的,这是需要注意的。
,