|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目是输入3个实数a,b,c
,通过交换,将最小的数放到a
,次小的数放到b
,最大的数放到c
后,按由小到大的顺序输出。
- #include <stdio.h>
- int main()
- {
- int a, b, c, temp;
- scanf("%d%d%d",&a,&b,&c);
- if (a > b)
- {
- temp = a;
- a = b;
- b = temp;
- }
- if (a > c)
- {
- temp = a;
- a = c;
- c = temp;
- }
- if (b > c)
- {
- temp = b;
- b = c;
- c = temp;
- }
- printf("%d ", a);
- printf("%d ", b);
- printf("%d", c);
- return 0;
- }
复制代码
你的代码中使用的是整数类型(int),所以只能输入整数。如果你想输入小数,你应该使用浮点类型(float)或者双精度浮点类型(double)。下面是修改后的代码:
- #include <stdio.h>
- int main()
- {
- double a, b, c, temp;
- scanf("%lf%lf%lf",&a,&b,&c);
- if (a > b)
- {
- temp = a;
- a = b;
- b = temp;
- }
- if (a > c)
- {
- temp = a;
- a = c;
- c = temp;
- }
- if (b > c)
- {
- temp = b;
- b = c;
- c = temp;
- }
- printf("%.2lf ", a);
- printf("%.2lf ", b);
- printf("%.2lf", c);
- return 0;
- }
复制代码
在这个修改后的代码中,我使用了 double类型来代替 int类型,这样就可以输入小数了。同时,我也修改了 scanf和 printf中的格式说明符,使其可以正确地读取和输出小数。在 printf中, %.2lf表示输出的小数将保留两位小数。
注意:在C语言中, %lf用于读取 double类型的数据, %f用于读取 float类型的数据。在 printf函数中, %f和 %lf都可以用于输出 double类型的数据。
请注意,本回答来自GPT-4
如果问题已经解决,请设置最佳答案
|
|