A. 求助c语言编程实现:输入一个实数,输出该实数(保留3位小数)。
#include<stdio.h>
#include<stdlib.h>
voidmain()
{
doublef;
printf("输入一个实数:");
scanf("%lf",&f);
printf("%.3lf",f);
system("pause");
}
c++版本
#include<iostream>
#include<iomanip>
usingnamespacestd;
voidmain()
{
doublef;
cout<<"输入一个实数:";
cin>>f;
cout<<"f="<<fixed<<setprecision(3)<<f<<endl;
system("pause");
}
B. C语言编程: 输入x的值,按下面公式计算并输出y的值(输出数据占8列,精确到0.001)
#include<stdio.h>
#include<math.h>
int main(void)
{
double x;
printf(" 请输入实数 x 的值:");
while(scanf("%lf",&x) == 1)
{
if(x<1.0)
printf(" y = 2 * %.2f + 3 = %-8.3f
",x,2*x+3);
if(x>=1.0 && x<10)
printf(" y = 2 * %.2f^2 - 1 = %-8.3f
",x,2*x*x-1);
if(x>=10)
printf(" y = √(3 * %.2f - 4) = %-8.3f
",x,sqrt(3*x-4));
printf("
请输入实数 x 的值:");
}
return 0;
}
C. 输入一个实数x,以指数形式,带符号前缀,和三位精度的方式打印x的值。c语言
#include"stdio.h"
intmain(void){
doublex;
printf("Inputx(R)... x=");
scanf("%lf",&x);
printf("%+.3e ",x);
return0;
}
D. 用C语言怎样编写“输入一个数X,计算并输出下式的值,直到最后一项的绝对值小于10的-5次方(保留两位小数
C代码:
#include<stdio.h>
#include<math.h>//fabs()
int main()
{ double x,s,a;//为了提高精度,我把它们定义成双精度的。
int i;
scanf("%lf",&x);//注意x为弧度,输入的值过大没意义只要在-2*∏~2*∏即可。因为C语言的运算精确度有限。例如输入1.7,输出0.99166465
a=x;
s=a;
for(i=1;;i+=2)
{
a*=x*x*(-1)/((i+1)*(i+2));
if(fabs(a)<1e-7) break;
s+=a;
}
printf("%.8f\n",s);
return 0;
} //用泰勒展开式求sinx
C++代码:
#include<iostream>
#include<cmath>//fabs()
#include<iomanip>//setprecision()
using namespace std;
int main()
{ double x,s,a;//为了提高精度,我把它们定义成双精度的。
int i;
cin>>x;//注意x为弧度,输入的值过大没意义只要在-2*∏~2*∏即可。因为C语言的运算精确度有限。例如输入1.7,输出0.99166465
a=x;
s=a;
for(i=1;;i+=2)
{
a*=x*x*(-1)/((i+1)*(i+2));
if(fabs(a)<1e-7) break;
s+=a;
}
cout<<setprecision(8)<<s<<endl;
return 0;
} //用泰勒展开式求sinx
另外,团IDC网上有许多产品团购,便宜有口碑
E. C语言编写程序输入一实数x和一整数n,求x+x^2+x^3+…+x^n的值。
#include <stdio.h>int main() {
float x,y,sum = 0;
int i = 1,n;
printf("输入x:");
scanf("%f",&x);
y = 1.0;
printf("输入正整数n:");
scanf("%d",&n);
for(i = 1;i <= n;i++) {
y = x*y;
sum = sum + y;
}
printf("计算结果是:%f\n\n",sum);
return 0;
}
F. 急求:C语言编程 输入一个实数x,计算并输出下式的值,知道最后一项的绝对值小于
C代码:
#include<stdio.h>
#include<math.h>//fabs()
int main()
{ double x,s,a;//为了提高精度,我把它们定义成双精度的。
int i;
scanf("%lf",&x);//注意x为弧度,输入的值过大没意义只要在-2*∏~2*∏即可。因为C语言的运算精确度有限。例如输入1.7,输出0.99166465
a=x;
s=a;
for(i=1;;i+=2)
{
a*=x*x*(-1)/((i+1)*(i+2));
if(fabs(a)<1e-7) break;
s+=a;
}
printf("%.8f\n",s);
return 0;
} //用泰勒展开式求sinx
C++代码:
#include<iostream>
#include<cmath>//fabs()
#include<iomanip>//setprecision()
using namespace std;
int main()
{ double x,s,a;//为了提高精度,我把它们定义成双精度的。
int i;
cin>>x;//注意x为弧度,输入的值过大没意义只要在-2*∏~2*∏即可。因为C语言的运算精确度有限。例如输入1.7,输出0.99166465
a=x;
s=a;
for(i=1;;i+=2)
{
a*=x*x*(-1)/((i+1)*(i+2));
if(fabs(a)<1e-7) break;
s+=a;
}
cout<<setprecision(8)<<s<<endl;
return 0;
} //用泰勒展开式求sinx
另外,团IDC网上有许多产品团购,便宜有口碑
G. 用C语言编写程序,从键盘输入一个不小于0的实型变量x,计算并输出函数fx的值,保留3位小数
void main(){
int x;
float fx;
start:
printf("请输入x值(x值大于或等于0):");
scanf("%d",&x);
if(x<0)
goto start;
fx=x*x+1.0/x+sqrt(x);
printf(fx=%.3lf\n",fx);
}
H. c语言的:输入1个实数x,计算并输出下式的值,直到最后一项小于10-5
我怀疑这道题的样例有问题,也可能是我的编译器上设定的精度不够高。
#include<stdio.h>
longlongfact(intn)
{
inti;
longlongres=1;
for(i=2;i<=n;i++)
res*=i;
returnres;
}
doublemypow(doublex,inta)
{
inti;
doubleres=1.0;
for(i=0;i<a;i++)
res*=x;
returnres;
}
intmain()
{
inti;
doublex,t=1,s=0;//t为每一项的值,设置初始值为1是为了第一次能进入循环
scanf("%lf",&x);
for(i=0;t>=0.00001;i+=2)
{
t=mypow(x,i)/fact(i);
s+=t;
}
printf("%lf ",s);
return0;
}
我的结果是3.762195 ,我还把每一个项都输出验证了一下,发现并没有问题。