[英]Reverse a float number C
我正在学习C。我们将scanf
和printf
用于输入和输出数据。
我们在课程中有一个问题:反转浮点数。
我的编程技巧很好,我可以轻松做到这一点。
例如,我的想法之一是将float
通过乘幂10转换为int
,然后将其反转并再次转换为float
。 还有很多其他想法。
但是我们的问题有局限性。 使用scanf
功能反转编号。
我请老师为此给我一个代码。 他给出了以下代码。 很抱歉,因为我不太清楚代码。 这段代码为12.33给出了12和33,但是对于12.00001则无效,因为我们得到12和1。当我们得到这个数字时,我们将它们反转并打印出来。 我的老师问我一种解决方法,但是我找不到办法。 不一定需要一种方法,但是有什么可以帮助我的吗?
我的老师代码:
int main(){
int a,b;
scanf("%d.%d", &a, &b);
printf("a = %d, b = %d", a, b);
}
谢谢。
如果不需要任何计算,则以字符串格式获取它,然后将其取反。
#include<stdio.h>
#include<string.h>
void main(){
char str[20];
printf("Enter number: ");
scanf( "%s" , str );
printf("\nReverse Number is: %s",strrev(str));
}
#include<stdio.h>
#define MAX 20
void main(void) {
char str[MAX];
int i;
printf("Enter number: ");
scanf( "%s" , str );
for (i=0;i<MAX; i++){
printf("%c",str[MAX-1-i]);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.