C语言平均数只保留了整数怎么办

作者&投稿:劳宜 (若有异议请与网页底部的电邮联系)
~ C语言平均数只保留了整数可以利用C语言的强制转换规则。
C语言规定,当浮点数强制转换为整型类型时,只保留整数部分。
所以对于浮点数,比如float类型a,执行(int)a后的值就是整数部分。
这样当执行a-(int)a时,得到的就是小数部分的值了。
如果该功能经常使用,那么可以定义一个带参数的宏
#defineDECIMAL(X)(x-(int)x)
这样执行DECIMAL(a)得到的值就是t的小数部分。


C语言平均数只保留了整数怎么办
C语言平均数只保留了整数可以利用C语言的强制转换规则。C语言规定,当浮点数强制转换为整型类型时,只保留整数部分。所以对于浮点数,比如float类型a,执行(int)a后的值就是整数部分。这样当执行a-(int)a时,得到的就是小数部分的值了。如果该功能经常使用,那么可以定义一个带参数的宏#defineDECIMAL(X...

c语言求10个数平均值结果保留两位小数.
printf("平均值是%.2lf.\\n",sum\/10.0);return 0;}

在C语言中求三个数5、8、9的平均值,结果保留一位小数?
下面是一个简单的C语言程序,可以计算三个数5、8、9的平均值并保留一位小数:include <stdio.h>int main() { int a = 5; int b = 8; int c = 9; float avg; avg = (a + b + c) \/ 3.0; printf("平均值为:%.1f\\n", avg); return 0;} 输出结果为...

怎么用C语言表达两个数的平均数保留小数点后6位
int main(){ double x,y;printf("Please Input to real number!");scanf("%lf,%lf",&x,&y);\/* 加0.05把小数点后第二位四舍五入到小数点第一位*\/ \/*%.1lf只输出 到小数点后第一位。*\/ printf("%.1lf",((x+y)\/2+0.05));\/\/为了看见结果加上这一句。\/\/while(getchar()!

有9个自然数,小明求平均数只保留一位小数为10.8那么如果保留两位小数...
因为平均数保留一位小数是10.8,所以平均数大于等于10.75,小于10.85,10.75×9=96.75,10.85×9=97.65,所以自然数之和大于等于96.75,小于97.65,因为自然数之和也是自然数,所以和是97,97÷9=10.777……,保留两位小数是10.78。请点个采纳呗 ...

c语言三个数求平均值保留两位小数
include int main(){ int a[10];int i;float aver=0.00;printf("请输入十个数:\\n");for(i=0; i<10; i++){ scanf("%d",&a[i]);} for(i=0; i<10; i++){ aver = aver+a[i];} aver = aver\/10;printf(" 这十个数的平均数是:%.2f\\n",aver);return 0;} ...

excel如何把平均数保留一位小数?
1、如下图的平均数要保留一位小数,选中这列平均数后,点击鼠标右键,在弹出框里点击“设置单元格格式”;2、在弹出的设置框里,点击数字一栏,在分类里点击“数值”,然后在右边的设置框里小数位数改为“1”,再点击下面的确定;3、如下图,则可把这列平均数都只保留一位小数了;4、或者选中这列...

c语言求平均数,最后有误差;麻烦帮我看一下,谢谢!
定义为float型,保留6位小数,最后的数字出现误差是正常的,原因是float型精度不足。解决方法:ave不用float型,改为double型。

c语言 从键盘输入2个数,求2个数的平均数,小数点后保留1位输出.
include<stdio.h>void main(){ float a,b;printf("输入两个数(逗号隔开):"); scanf("%f,%f",&a,&b);printf("数%.1f和数%.1f的平均数等于%.1f\\n",a,b,(a+b)\/2);}

c语言怎么求保留两位数的平均数
ave = ((a+b+c)*1.0 )\/ (3 * 1.0)\/\/ 或则ave = (double)(a+b+c)\/3

麻江县15876243001: C语言 求平均数然后输出一个保留2位小数的结果,大神帮忙看看怎么改. -
何钟朗悦: 修改后的代码如下: #include <stdio.h> int main() {//int i=0, j=0, n=0, min=0, max=0,sum=0;int i=0, j=0;double n=0,min=0, max=0,sum=0;//int a[7];double a[7];for (i = 0; i < 7; i++)scanf("%lf", &a[i]);if (min>a[i]){min = a[i + 1];a[i] = min;...

麻江县15876243001: C语言求助关于平均数
何钟朗悦: #include <stdio.h>void main(){ printf("输入n: "); int n; scanf("%d",&n); while(n>0) { printf("输入m: "); int m; scanf("%d",&m); int sum = 0; for(int i = 0; i != m; ++i) { int t = 0; scanf("%d",&t); sum += t; } printf("平均数:%d\n",sum/m); --n; } getchar();}

麻江县15876243001: C语言输入3个整数,计算他们的和与平均值,平均值的结果保留两位小数. 急求!!!! -
何钟朗悦: #include<stdio.h> void main() { int a,b; float c,d; printf("请输入一个三位整数"); scanf("%d",&a); printf("请输入一个三位整数"); scanf("%d",&b); printf("请输入一个三位小数"); scanf("%f",&c); d=(a+b+c)/3.0; printf("%7.2f\n",d); } 通过

麻江县15876243001: C语言求平均数结果的小数部分全为零 -
何钟朗悦: s=(x+y+z)/3;改为s=(x+y+z)/3.0; 因为你x,y,z是整形,3也是整数,C语言就自动把结果取整

麻江县15876243001: C语言求若干个整数(少于50个整数)的平均值(小数点后保留8位) -
何钟朗悦: 看起来基础不太好啊,得多多看书,从开始给你说吧,赋值的时候是一个等号,判断是否相等才是用两个等号,s==0,和for里边b==0都不对,输入的50个整数,你总不能只输一个,所以输入那里得加for循环,输入多个整数,使用i的时候没有赋值,从开始到最后都没有,一般在C++里这样是会报错的,如果你的没有报,那C语言里应该默认初值是0,通过比较for循环应该是不执行的,最后,如果一个函数不是空函数,最后最好加上return返回值 ;

麻江县15876243001: c语言三个数的平均值 -
何钟朗悦: 已改,看注释#include<stdio.h> int main() {int a,b,c;float average;printf("input:");scanf("%d%d%d",&a,&b,&c); // 里面的\n去掉printf("a=%d,b=%d,c=%d\n",a,b,c);average=(a+b+c)/(float)3; // 将3强制转换为floatprintf("average=%f\n",average);return 0; }

麻江县15876243001: C语言——求平均值 -
何钟朗悦: #include "stdio.h" int main() { int n,m,i,j,x,s;double ave[100];scanf("%d",&n);for(i=1;i<=n;i++){ scanf("%d",&m);s=0;for(j=1;j<=m;j++){scanf("%d",&x);s=s+x;}ave[i]=s*1.0/m; }for(i=1;i<=n;i++)printf("%.2lf\n",ave[i]); }

麻江县15876243001: C语言怎么只保留小数点后的数字 -
何钟朗悦: 可以利用C语言的强制转换规则. C语言规定,当浮点数强制转换为整型类型时,只保留整数部分. 所以对于浮点数,比如float类型a, 执行(int)a后的值就是整数部分. 这样当执行a-(int)a时,得到的就是小数部分的值了. 如果该功能经常使用,那么可以定义一个带参数的宏 #define DECIMAL(X) (x-(int)x) 这样执行DECIMAL(a)得到的值就是t的小数部分.

麻江县15876243001: C语言程序:计算n个整数(x1,x2,x3...)的平均数,结果保留两位小数!!!救救孩子!!! -
何钟朗悦: 行列式展开=x1^3+x2^3+x3^3-3x1x2x3 而x1^3+x2^3+x3^3-3x1x2x3 =(x1+x2+x3)(x1^2+x2^2+x3^2-x1x2-x2x3-x3x1) (展开右边即得等式成立) 又x1x+x2+x3=0, 所以行列式的值为0.

麻江县15876243001: C语言程序纠错,我不知道哪里错了,题目要求是求200到300之间所有素数的平均值. -
何钟朗悦: 1、for(m=200;m=300;m++) 改成 for(m=200;m2、m循环应该加大括号,把if(i>m/2)这个累加判断一起括进去(否则你这个累加不在m循环中,起不到作用).3、'/'是整除符号,整数整除整数,结果只保留整数部分,小数会被忽略.比如:你这里sum=3;a=2;那么sum/a就是1,0.5会被忽略掉.想要精确到小数,要么把变量定义成浮点数,要么最后sum*1.0/a.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网