请问C语言中如何将int转换为float
我看网上说在前面加了(float)可是结果还是一样啊。比如这个#include<stdio.h>voidmain(){inta,b,c,sum1;//inta,b,c,s...
我看网上说在前面加了(float) 可是结果还是一样啊。
比如这个
#include <stdio.h>
void main()
{
int a,b,c,sum1;//int a,b,c,sum1;
float x,y,z,sum2=0.0;//float x,y,z;sum2=0.0;
printf("Input int data:\n");
scanf("%d%d%d",&a,&b,&c);
sum1=a+b+c ;//Sum1=a+b+c
printf("Output sum1=%d\n",sum1);
printf("Input float data:\n");//printf("Input float data:\n);
scanf("%f,%f,%f",&x,&y,&z);
sum2+=sum1; //SUM2+=sum1;
printf("Output sum2=%f\n,sum2"); //printf(Output sum2=%d\n,sum2);
}
结果sum2是0啊 展开
比如这个
#include <stdio.h>
void main()
{
int a,b,c,sum1;//int a,b,c,sum1;
float x,y,z,sum2=0.0;//float x,y,z;sum2=0.0;
printf("Input int data:\n");
scanf("%d%d%d",&a,&b,&c);
sum1=a+b+c ;//Sum1=a+b+c
printf("Output sum1=%d\n",sum1);
printf("Input float data:\n");//printf("Input float data:\n);
scanf("%f,%f,%f",&x,&y,&z);
sum2+=sum1; //SUM2+=sum1;
printf("Output sum2=%f\n,sum2"); //printf(Output sum2=%d\n,sum2);
}
结果sum2是0啊 展开
展开全部
只需要在后面乘以1.0就行
比如 int a=100;
转换成float的话float b=1.0*a;
比如 int a=100;
转换成float的话float b=1.0*a;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个程序没问题啊,sum2输出是浮点型啊
更多追问追答
追问
但是结果不对啊 不管我怎么改数据答案就是0.000000
追答
我知道你哪错了
printf("Output sum2=%f\n,sum2");
这一句你的引号引错地方了,应该是
printf("Output sum2=%f\n“,sum2);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询