设置N位有效小数大家都是怎么实现?看下吧

来源:互联网 发布:懒蛋蛋布丁玩具淘宝 编辑:程序博客网 时间:2024/04/29 05:45
c语言输入一个变量n 让一个小数保留n位有效数字 如何实现?

其实,有很多方法 我只写一种  不一定是最好的 但你一定能看的懂:
#include <stdio.h>void main(){  int n;  float number;  int i = 0;  printf("请输入保留的位数:");  scanf("%d",&n);  printf("请输入目标数:");  scanf("%f",&number);  while(i!=n)//先让它乘以n个10  {     number = number * 10;     i++;  }  number = (int)number; //取他乘以n个10之后的整数  while(i)//再让它除以n个10,变为有n位小数  {     number = number / 10;     i--;  }  printf("%f",number);//输出}


不懂得欢迎来提问


C++程序设计中怎样表示保留n位小数?
 编程语言
在c语言中用下列语句实现的
printf("%.3e\n",s);
printf("%.0f\n",v);
在c++中用什么语言实现同样的功能啊?
你仍然可以用上面这些语句。
此外,以可以看下面的例子
使用setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6。
如果setprecision(n)与setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。 
如果与setiosnags(ios::scientific)合用, 可以控制指数表示法的小数位数。setiosflags(ios::scientific)是用指数方式表示实数。
例如,下面的代码分别用浮点、定点和指数方式表示一个实数:
#include <iostream.h>    #include <iomanip.h> //要用到格式控制符    void main()    {      double amount = 22.0/7;      cout <<amount <<endl;      cout <<setprecision(0) <<amount <<endl       <<setprecision(1) <<amount <<endl       <<setprecision(2) <<amount <<endl       <<setprecision(3) <<amount <<endl       <<setprecision(4) <<amount <<endl;      cout <<setiosflags(ios::fixed);      cout <<setprecision(8) <<amount <<endl;      cout <<setiosflags(ios::scientific) <<amount <<endl;      cout <<setprecision(6); //重新设置成原默认设置    }


   运行结果为:
     3.14286
     3
     3
     3.1
     3.14
     3.143
     3.14285714
     3.14285714e+00


C语言 输入一个数 a ,使之保留2位小数,对小数点后第3位数进行四舍五入,怎么做???
C语言  输入一个数 a ,使之保留2位小数,对小数点后第3位数进行四舍五入,怎么做???
我是菜鸟,希望越简单越好
声明  : double a;
输入a后  :
a = (double)(((int)((a+0.005) * 100.00)) /100.00);


用ASP脚本编写程序?
 编程语言asp
1 请开发一个页面,显示来访者的IP地址,并判断:如果IP地址以162.105开头,则显示欢迎信息;否则,显示为非法用户,并终止程序。
2 请开发一个页面,当客户第一次访问时,需在线注册姓名、性别等信息,然后把信息保存到Cookies中。下一次如果该用户再访问,则显示“某某,您好,您是第几次光临本站”的欢迎信息。
===================== 第一题 开始================
<html> <head> </head> <body>  <%   Dim IP   IP=Request.ServerVariables("REMOTE_ADDR")   If Mid(IP,1,7)="162.105" Then    Response.Write "欢迎您"   Else    Response.Write "您是非法用户"   End If %> </body></html>  


========================= 第一题 结束 =========================

************************ 第二题 开始 *********************

<html> <body>  <%   If Request.Cookies("user")="" Then   '如果是第一次访问,就让客户填写有关信息   Response.Write "您好,您是第一次访问本站,请填写个人信息"  %>  <form action="" method="post">   请输入姓名 : <input type="text" name="user_name">   请选择性别 : <input type="radio" name="sex" value="男">男   <input type="radio" name="sex" value="女">女   <input type="submit" value="提交">  </form>  <%   Elseif Request.Cookies("user")("vNumber")>=1 Then    '如果不是第一次访问,就令访问次数在原有次数上加1    Dim vNumber '定义一个访问次数变量    Dim user_name    Dim sex    vNumber=Request.Cookies("user")("vNumber")    user_name=Request.Cookies("user")("user_name")    sex=Request.Cookies("user")("sex")    Response.Cookies("user")("vNumber")=vNumber+1 '将访问次数加1.保存到 Cookies 中    Response.Cookies("user")("user_name")=user_name    Response.Cookies("user")("sex")=sex    Response.Cookies("user").Expires=#2030-1-1# '设置有效期为20年,其实也没必要这么长    Response.Write Request.Cookies("user")("user_name")&"您好,您是第"&(vNumber+1)&"次访问本站"   End If   '如果提交表单后执行如下语句   If Request.Form("user_name")<>"" And Request.Form("sex")<>"" Then    Response.Cookies("user")("user_name")=Request.Form("user_name")    Response.Cookies("user")("sex")=Request.Form("sex")    Response.Cookies("user")("vNumber")=1    Response.Cookies("user").Expires=#2030-1-1#  %> </body></html>  



0 0
原创粉丝点击