
c语言怎么让输出值是小数?
#include<stdio.h>intmain(void){inti;floataver=0;intcount=0;for(i=0;i<8;++i){if(i%2!=0...
# include <stdio.h>
int main(void)
{
int i;
float aver =0;
int count = 0;
for(i=0; i<8; ++i)
{
if (i%2 != 0)
{
count = count + 1;
printf("i = %d\n", i) ;
aver = (aver + i) / count;
}
}
printf("aver = %d\n", aver) ;
return 0;
} 展开
int main(void)
{
int i;
float aver =0;
int count = 0;
for(i=0; i<8; ++i)
{
if (i%2 != 0)
{
count = count + 1;
printf("i = %d\n", i) ;
aver = (aver + i) / count;
}
}
printf("aver = %d\n", aver) ;
return 0;
} 展开
7个回答
展开全部
利用C语言使输出值为小数的编程方法和思想如下:
1.首先需要定义一个变量作为后续需要输出的数。这里以定义一个变量a为例。需要注意的是,整型int是不支持转化的。
2.然后使用scanf()函数接受从键盘输入的一个数,这样就为变量a成功赋值。
3.接着使用printf语句来对数a进行小数化的处理。处理格式为:【%.(需要保留的小数位数)数的格式符】,这里演示以保留3位小数为例:也就是%.3f。
4.最后点击运行程序,在程序的调试窗口就可以看到数已经成功转化为带小数的输出。
展开全部
C语言输出小数即浮点数有两种控制输入/输出的方法:
%f或者%lf:接受浮点数,单精度浮点数用f,双精度浮点数用lf。
%e或者%E:接受科学计数法表示的的浮点数,此处"e"的大小写代表在输出时用的“e”的大小写。示例如下:
#include <stdio.h>
int main()
{
printf("%f\n%lf\n", 1.1f, 1.1);
printf("%e\n%E\n", 1.1, 1.1);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-06
展开全部
%d整型输出,%ld长整型输出,
%o以八进制数形式输出整数,
%x以十六进制数形式输出整数,
%u以十进制数输出unsigned型数据(无符号数)。
%c用来输出一个字符,
%s用来输出一个字符串,
%f用来输出实数,以小数形式输出,
%e以指数形式输出实数,
%g根据大小自动选f格式或e格式,且不输出无意义的零。
%o以八进制数形式输出整数,
%x以十六进制数形式输出整数,
%u以十进制数输出unsigned型数据(无符号数)。
%c用来输出一个字符,
%s用来输出一个字符串,
%f用来输出实数,以小数形式输出,
%e以指数形式输出实数,
%g根据大小自动选f格式或e格式,且不输出无意义的零。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
printf("aver = %d\n", aver) ;
修改成
printf("aver = %f\n", aver) ;
就可以输出小数了。
修改成
printf("aver = %f\n", aver) ;
就可以输出小数了。
追问
for(i=0; i<10; ++i)
{
if (i%2 != 0)
{
count = count + 1;
sum = sum + i;
}
aver = sum / 3;
}
printf("sum = %d, aver = %f\n", sum, aver) ;
前面的代码有错误,应该是这个。我的目的是求1到10所有奇数的和除以3的得数。可是结果却是,
“sum = 25, aver = 8.000000”
追答
aver = sum / 3;
应该移到for循环外面吧
而且你的sum是什么类型 int吗??修改为float类型。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询