1. c语言编写数学公式
^在C语言里是逻辑异或运算,如果我没猜错的话,你是想用来进行乘方运算吧。在C语言里乘方运算需用pow函数(调用前需加上#include <math.h>)来实现乘方运算,如用pow(a,b)表示a^b;
另外C语言中的中括号不能当括号用,把中括号[]改为小括号();
以上数学公式用C语言表示如下
double u = 4.1868*( (0.0975+0.0485/pow(1,0.75))*pow(t-273,3)*pow(10.0,-6)+(7.768+3.36/pow(1,0.8))*pow(t-273,2)*0.0001+(489.6+46.4/pow(1,0.93))*(t-273)*0.01 );
不过再此这句前需定义变量t并赋初值
2. C语言中如何让数以60进制运算
想一下十进制满足什么运算规则?
比如加法 从末位开始加
如果两个数同一位之和大于等于10 (x>=10 那么留下10的余数( x%10 把10的倍数 (x/10 加到下一位上 继续运算 直到前一位为0
那么如果两个数是60位数
首先 最后两位加 如果大于60 结果保留对60取模后的结果 然后下一位的数值+x/60
我简单的模拟下 两个数组 a[] 和 b[] 存放数字 每一个元素是一位 add存放进位的值 一开始是0
for (i=0;i<n;i++)
{
int t=a[]+b[]+add;
a[]=t%60;
add=t/60;
}
if (add!=0)
{
a[n]+=add;
}
3. 怎样用C语言编写数学公式
1、C语言有现场的常用数学函数,所在函数库为math.h、stdlib.h。
函数名及解释:
int abs(int i) 返回整型参数i的绝对值
double cabs(struct complex znum) 返回复数znum的绝对值
double fabs(double x) 返回双精度参数x的绝对值
long labs(long n) 返回长整型参数n的绝对值
double exp(double x) 返回指数函数ex的值
double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中
double ldexp(double value,int exp); 返回value*2exp的值
double log(double x) 返回logex的值
double log10(double x) 返回log10x的值
double pow(double x,double y) 返回xy的值
double pow10(int p) 返回10p的值
double sqrt(double x) 返回+√x的值
double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度
double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度
double atan(double x) 返回x的反正切tan-1(x)值,x为弧度
double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度
double cos(double x) 返回x的余弦cos(x)值,x为弧度
double sin(double x) 返回x的正弦sin(x)值,x为弧度
double tan(double x) 返回x的正切tan(x)值,x为弧度
double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度
double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度
double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度
double hypot(double x,double y) 返回直角三角形斜边的长度(z),x和y为直角边的长度,z2=x2+y2
2、复杂的数学函数可以用自定义函数的形式实现。
例如:
doubleConerVelocity(intA,doublex1,doubley1,doublex2,doubley2,doublet1,doublet2)
{
doubleT,V;
T=acos(abs(x1*x2+y1*y2)/sqrt(x1*x1+y1*y1)/sqrt(x2*x2+y2*y2));
V=(A*(t2-t1))/(2*sin(T/2));
returnV;
}
4. 如何用C语言输入数学公式
LZ注意分号 要英文输入法,最后句printf("%e是公式的最后答案",B);是求结果 你加了分号当然不出结果了,你把分号去了 就出结果了
你X都没赋值啊
另外,站长团上有产品团购,便宜有保证
5. 用C语言输入一些数学公式
你的x1,x2,y1,y2, t1, t2必须要是函数参数才能算啊,都弄成double
然后函数里把V返回,我给你改好了
double ConerVelocity(int A, double x1, double y1, double x2, double y2, double t1, double t2)
{
double T,V;
T=acos(abs(x1 * x2 + y1 * y2)/ sqrt(x1 * x1 +y1 * y1)/sqrt(x2 * x2 +y2 * y2));
V= (A * (t2-t1))/(2*sin(T/2));
return V;
}
6. C语言计算公式
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<windows.h>
/*
说明:产生伤害结果可以有用户确定,公式也是可以自己写的,
在这里我给你展示一下.
(如果有其他问题,可以找群主C/C++8群491994603)
*/
#defineLL100//人物力量
#defineSH530//人物伤害
intmain()
{
//构造伤害公式,S=力量*10+570-->每点力量造成10点伤害
ints;//产生伤害值
//构造暴击因子,差生暴击原伤害的两倍
srand((unsignedint)time(NULL));
while(1)
{
intx=rand()%2;
s=LL*10+SH;
if(x==2)
prinf("差生暴击伤害:%d",2*s);
if(x==1)
prinf("差生伤害:%d",s);
Sleep(3000);
}
system("pause");
return0;
}
7. 用c语言编一个公式
我看不出你的答案是怎么来的,我来说一下为什么答案正确好了。
首先,因为π是一个无理数,C语言里要处理成浮点数,所以每次增加1/n^2的值也应该是一个浮点数,所以使用了强制类型转换有(float)(i*i)这个
下面说第一个式子怎么得出的
因为π^2/6=1/1^2+1/2^2+1/3^2+ …… +1/n^2
所以每次循环s在原来的基础上加1/i^2就可以 。 当i=n 的时候就近似得到了π^2/6的值
(你那个式子是不是把平方看到下面去了啊?最后那个是n2所以是平方)
再来看第二个式子
题目要求的是π的值,现在我们有的是s(π^2/6),s要怎样得到π呢?
有π=根号下(6s)
所以有第二个式子,式子中的sqrt()是个标准库函数,返回参数的根号值。
有不清楚再交流哈
8. c语言索引计算公式是什么
#include<stdio.h>
typedef struct
{float a[30];
int top;
}shuju;
typedef struct
{char b[30];
int futop;
}fuhao;
void initstack(shuju *s)
{s->top=-1;
}
void initstackk(fuhao *s)
{
s->futop=-1;
}
int youxianji(char n) /*符号优先级比较*/
{
switch(n)
{case '#': return 0;
case '+': return 1;
case '-': return 1;
case '*': return 2;
case '/': return 2;
}
}
int shujujinzhan(shuju *s,float x) /*数据进栈*/
{
if(s->top==29)
return (false);
s->top++;
s->a[s->top]=x;
return(true);
}
char fuhaojinzhan(fuhao *l,char y) /*运算符进栈*/
{
if (l->futop==29)
return (false);
l->futop++;
y=l->b[l->futop];
return y;
}
float shujuchuzhan(shuju *s,float *x) /*数据出栈*/
{
if(s->top==-1)
return (false);
else
{
*x=s->a[s->top];
s->top--;
return *x;
}
}
int fuhaochuzhan(fuhao *s,char *x) /*运算符出栈*/
{
if(s->futop==-1)
return (false);
else
{
*x=s->b[s->futop];
s->futop--;
return(true);
}
}
float suzi(char i) /*数据组成*/
{ float z, j=0;
z=(float)(i-'0');
j=j*10+z;
return j;
}
float jisuan(float a,char b,float c) /*计算*/
{ float s;
switch(b)
{ case'+': s=float(a+b); break;
case'-': s=float(a-b); break;
case'*': s=float(a*b); break;
case'/': s=float(a/b); break;
}
return s;
}
int panganyunsuanfu(char i) /*判断运算符还是数据*/
{
if (i=='+'||i=='-'||i=='*'||i=='/')
return 1;
else
return 0;
}
void main()
{ char strink[60],k;
int i,n,m;
int a=0,j;
float z,s,h1,h2;
shuju q;
fuhao p;
initstack(&q);
initstackk(&p);
fuhaojinzhan(&p,'#'); /*#进栈做栈底元素*/
printf("请输入计算公式\n");
gets(strink);
for (i=0;i<60;i++)
{ if (strink[i]=='\0') /*判断字符串是否为空*/
break;
else
{j=panganyunsuanfu(strink[i]); /*判断是运算符还是数据*/
if (j==1)
{ a=i++;
n=youxianji(strink[i]);
m=youxianji(p.b[p.futop]);
if (n-m>0) /*比较运算符的优先级*/
fuhaojinzhan(&p,strink[i]); /*运算符进符号栈*/
else
{ k=fuhaochuzhan(&p,&k);
h1=shujuchuzhan(&q,&h1);
h2=shujuchuzhan(&q,&h2);
s=jisuan(h1,k,h2); /*出栈的两个元素与对应的运算符的计算*/
shujujinzhan(&q,s); /*将计算的值回进数据栈中*/
}
}
else
{
z=suzi(strink[i]); /*对数据进行计算,*/
if (a!=i)
{ z=0;
shujujinzhan(&q,z); } /*把得到相应的数据进栈*/
a=i++;
}
}
}
printf("%d",q.a[0]); /*输出数据栈的最后一个元素,就是公式对应的值*/
}
网络文库VIP已帮您省0元现在恢复最低仅需0.3元/天
立即续费
c语言数学计算公式
#include<stdio.h>
typedef struct
{float a[30];
int top;
}shuju;
typedef struct
{char b[30];
int futop;
}fuhao;
void initstack(shuju *s)
第 1 页
{s->top=-1;
}
void initstackk(fuhao *s)
{
s->futop=-1;
}
int youxianji(char n) /*符号优先级比较*/
{
switch(n)
{case '#': return 0;
9. C语言指针等效公式
void *pointer; //假设这是个指针
/* 如何知道内容呢? */
fprintf(stdout, "%p", pointer); //妥妥的输出指针内容
//其实指针就是整数,代表内存地址,如果不考虑老式16位系统
fprintf(stdout, "%lu", (unsigned long)pointer);
//可以强制转换为unsigned long,无任何精度误差
(PS:也要复合IEEE最小精度哈,在绝大多数系统上都是可以的)
10. C语言中进制互相转换的公式是什么
刚帮你从网上找了个例子,主要思想就是用X,d,O等打印出来
void two_ten()
{
long num;
int b,TheTen=0,Total=0;
printf("\n请输入一个二进制数(只包含0或1):");
scanf("%ld",&num);
while(num)
{
b=num-(int)(num/10)*10;
TheTen+=b*pow(2,Total);;
Total++;
num=(int)(num/10);
}
printf("转换为十进制:"); //打印
printf("%d",TheTen);
printf("\n");
}
void eight_ten()
{
int num, i;
int arr[20];
printf("\n请输入一个八进制数(只由0~7之前的数组成):");
scanf("%o",&num);
printf("转换为十进制:"); //打印
printf("%d",num);
printf("\n");
}
void sixteen_ten()
{
int num, i;
int arr[20];
printf("\n请输入一个十六进制数(只由0~9和A~F之前的数组成):");
scanf("%X",&num);
printf("转换为十进制:"); //打印
printf("%d",num);
printf("\n");
}