㈠ c语言输入十个分数(浮点型),去掉最高分和最低分后求平均分,保留一位小数
去掉最值可以用选择法找到最高分和最低分。后面的没明白你说的,能不能详细点
㈡ C语言中float数据类型保留几位有效数字
float数据
机器内是2进制数,
1位符号位
8位指数位
23位“尾数”位
共32
位
2进制数。
平时讲
有效数字
是6~7位
,指10进制。
通常程序输入的数是10进制,进入机器后要化成2进制,计算完又转十进制输出。
10进制到2进制,2进制到10进制
转换,有的数化不净,有的数化得净。
如同10进制分数化10进制小数,有的化得净(例如
4分之1,变0.25),有的化不净(例如
3分之1,变0.33333....)。
10进制到2进制,2进制到10进制
转换,化得净的效数字7位,化不净的效数字6位,因为最后一位有舍入误差。
例如:
float
x,y;
x=0.51;
//
化不净
y=0.5;
//
化得净
printf("x=%.8f
y=%.8",x,y);
//
输出
0.50999999
0.50000000
㈢ C语言中如何保留一位小数点
可以通过printf函数中的输出格式说明符来实现保留一位小数点,要保留一位小数就用printf("%.1f",x),例子如程序中给出那样。
例子如下:
(3)C语言分数型的保留扩展阅读:
1.printf("%3.0f",floatNum):不保留小数
说明:%3.0f表明待打印的浮点数(floatNum)至少占3个字符宽,且不带小数点和小数部分,整数部分至少占3个位宽;
注意:这里的3只代表整数部分至少占3位,舍弃小数点和小数点后面的部分。
2.printf("%6.2f".floatNum):保留两位小数
说明:%6.2f 表明待打印的数(floatNum)至少占6个字符宽度(包括两位小数和一个小数点),且小数点后面有2位小数,小数点占一位,所以整数部分至少占3位。
注意:这里的6是待打印的数至少占据的字符宽度,包括两位小数(如果小数不够两位用0补位,例如100.1打印出来为100.10)和一个小数点,所以整数部分至少占3个字符宽度。
㈣ c语言里能不能设置一个条件,输出时如果一个无限不循环小数则自动四舍五入或保留分数
预设是四舍五入的,可通过“%f”格式指定字设定精度。
如printf("%.2f", 15.237);,即取值至两个小数位。
电脑语言中是不存在真正的分数的,要透过特别的方式才可以保留分子分母。
㈤ c语言中想要让输出数字保留几位小数该怎么做
举个例子,如果想要输出保留三位小数的双精度浮点数,则应该这样写:
printf("%.3lf",d);
其中的“.3”就是小数点后保留三位小数。
注意,3前面有个点哈!
㈥ c语言 float类型保留几位啊 怎么确定
float类型默认保留小数点后6位,若是要输出一位或者其他位数,可以按照以下形式进行输出:
printf("%.(这里输入要输出的位数)f",x);
如输出一位:printf("%.1f",x);
实例
#include <stdio.h>
#include <float.h>
int main()
{
printf("float 存储最大字节数 : %lu ", sizeof(float));
printf("float 最小值: %E ", FLT_MIN );
printf("float 最大值: %E ", FLT_MAX );
printf("精度值: %d ", FLT_DIG );
return 0;
}
㈦ 请问在C语言中分数怎么表示啊,即10/9
如果想保存成数值,只能保存小数值,10/9只能保存它对应的小数值,也就是1.11111,这个小数值实际上是无限循环的,无限小数保存不了,
所以存在精度问题,即保存到小数点后几位,一般用float或者double型变量保存小数,double精度更高一些。
如果必须要保存精确地10/9分数,可以使用字符串类型,保存“10/9”,这样存下来的就不是一个数,只是普通的字符串,使用时可以做相应的转换输出。
㈧ c语言编程,输入n个学生的成绩,以输入-1表示输入结束,输出学生的人数,总分(不显示小数)及平均值(...
#include<stdio.h>
#include<math.h>
intmain()
{
inti=0;//学生人数计数器
floatn;
doublesum=0;
printf("请依次输入学生成绩以-1结束: ");
while(n!=-1)
{
scanf("%f",&n);
sum=sum+n;
i++;
}//当i==-1时sum-1且i+1所以下边总分要是i-1,总分为sum+1;时间不够没改到很好见谅
printf("学生人数:%d ",i-1);
printf("总分:%.0f ",sum+1);//
printf("平均分:%.2f ",(sum+1)/(i-1));
return0;
}
㈨ C语言 此题输出的结果如何保留两位小数
#include<stdio.h>
#include<string.h>
char str[51];
int n,count,i;
int main()
{
scanf("%s",&str);
n=strlen(str);
count=1;
for(i=1;i<n;i++)
{if(str<i>!=str[i-1])
count++;
else continue;
}
double ans;
ans=(float)n/count;
printf("%.2f",ans);
}
printf("%.2f",ans);是保留两位小数
n和count都是int型,用float强制转换浮点型,才能得出带小数的结果。
(9)C语言分数型的保留扩展阅读:
在c语言中产生格式化输出的函数(定义在 stdio.h 中),其向未重定向终端(显示器、控制台等)输出字符。
Format 参数是包含三种对象类型的一个字符串:
* 无格式字符复制到输出流;
* 转换规范,每个规范导致在值参数列表中检索 1 个或更多个项;
* 转义序列。
通常意义上format的格式如下:
%[flags][width][.prec][F|N|h|l]type
㈩ c语言怎么保留分数和根号啊,还有怎么输入根号,求大神解答
c语言没办法保留分数,只有小数,要写分数就要用到复杂的数据结构
根号就是一个函数sqrt(x)
用sqrt时候记得
#include<math.h>