昨日在微软官网下载了visual studio2013,编了个程序出错了。

昨天在微软官网下载了visual studio2013,编了个程序出错了。。。
#include <stdio.h>
int main(){
float s;
float a;
printf("请输入需要转换的华氏温度:");
scanf_s("%f", &a);
s = (5.0 / 9)*(a - 32);
printf("转换后的摄氏温度为:%f\n", &s);
return 0;
}
不论输入什么值,结果都是零。。。
估计visual studio把“5.0/9”直接算成零了。。。
这该怎么解决啊?
------解决思路----------------------
printf("转换后的摄氏温度为:%f\n", &s);
printf的时候就不用取地址符号了
printf("转换后的摄氏温度为:%f\n", s);
------解决思路----------------------
两个错误

1. printf里不应取地址
2. 要将float转成double,让printf打印

------解决思路----------------------
#include <stdio.h>
int main(){
float s;
float a;
printf("请输入需要转换的华氏温度:");
scanf_s("%f", &a);
s = (5.0 / 9)*(a - 32);
printf("转换后的摄氏温度为:%f\n", s);
return 0;
}

把printf的&号去掉就行了。
------解决思路----------------------
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。

------解决思路----------------------
哥们,你这个编译能过????
改成下面的代码就好了。
“5.0/9”这个是没错的。因为你前面是5.0
#include <stdio.h>
int main()
{
float s;
float a;
printf("请输入需要转换的华氏温度:");
scanf("%f", &a);
s = (5.0 / 9)*(a - 32);
printf("转换后的摄氏温度为:%f\n", s);
return 0;
}