#includestdio.h
創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)武侯,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
int?prime[]?=?{?2,?3,?5,?7,?11,?13,?17,?19,?23,?29?};
int?len?=?10;
int?factors1[10];
int?factors2[10];
void?decompose(int*?factors,?int?m,?int?n)
{
for?(int?i?=?0;?i??len;?i++)?factors[i]?=?0;
for?(int?j?=?m;?j?=?n;?j++)
{
int?temp?=?j;
for?(int?t?=?0;?t??len;?t++)
{
while?(temp?!=?1??temp?%?prime[t]?==?0)
{
temp?/=?prime[t];
factors[t]++;
}
if?(temp?==?1)?break;
}
}
}
void?main()
{
int?m,?n;
int?res;
while?(~scanf("%d?%d",?m,?n))
{
if?(n??m)
{
int?temp?=?n;
n?=?m;
m?=?temp;
}
int?max,?min;
if?(n??m?-?n)
{
max?=?n;
min?=?m?-?n;
}
else
{
max?=?m?-?n;
min?=?n;
}
decompose(factors1,?max?+?1,?m);
decompose(factors2,?2,?min);
res?=?1;
for?(int?i?=?0;?i??len;?i++)
{
factors1[i]?-=?factors2[i];
for?(int?j?=?0;?j??factors1[i];?j++)
res?*=?prime[i];
}
printf("%d\n",?res);
}
}
基本思路是因式分解,避免大數(shù)溢出
也可以把main函數(shù)改為這個(gè),方便理解
因?yàn)?C(m,n)=m!/((m-n)!*n!),可以先將分母部分的n!約掉。
void?main()
{
int?m,?n;
int?res;
while?(~scanf("%d?%d",?m,?n))
{
if?(n??m)
{
int?temp?=?n;
n?=?m;
m?=?temp;
}
decompose(factors1,?n?+?1,?m);
decompose(factors2,?2,?m?-?n);
res?=?1;
for?(int?i?=?0;?i??len;?i++)
{
factors1[i]?-=?factors2[i];
for?(int?j?=?0;?j??factors1[i];?j++)
res?*=?prime[i];
}
printf("%d\n",?res);
}
}
#includestdio.h
double
val(double
a00,double
a11,double
a01,double
a10)
{
return
a00*a11-a01*a10;
}
void
main()
{
double
a1,b1,c1,a2,b2,c2;
double
m1,m2,m3;
printf("Please
input
a1,b1,c1\n");
scanf("%lf%lf%lf",a1,b1,c1);
printf("Please
input
a2,b2,c2\n");
scanf("%lf%lf%lf",a2,b2,c2);
m1
=
val(a1,b2,a2,b1);
m2
=
val(c1,b2,c2,b1);
m3
=
val(c1,a2,c2,a1);
if(m1==0){
if(m2==0
m3==0)
printf("無(wú)數(shù)解\n");
else
printf("無(wú)解\n");
}else
printf("x=%lf,y=%lf\n",m2/m1,-m3/m1);
}
這個(gè)是先求行列式的值,然后判斷其是否為0,討論解的情況,當(dāng)有唯一解的時(shí)候,輸出x和y的值。
val()函數(shù)用于計(jì)算2x2行列式的值。
有不明白的地方可以追問(wèn),望采納:)
#include stdio.h
#include math.h
int main(void)
{
double sg,sp,gd,ds,pai=3.14;
printf("? 利用三角函數(shù)計(jì)算物體的高度。\n\n");
printf("? 請(qǐng)輸入觀測(cè)點(diǎn)的水平距離(m):");
scanf("%lf",sp);
printf("? 請(qǐng)輸入觀測(cè)點(diǎn)的垂直高度(m):");
scanf("%lf",gd);
printf("???? 請(qǐng)輸入觀測(cè)點(diǎn)的仰角(度):");
scanf("%lf",ds);
sg=sp*tan(ds*pai/180)+gd;
printf("???????????? 該物體的高度為:%.2f m\n",sg);
return 0;
}
如下:
#include?stdio.h
double?fun(int?n)
{
int?i,j;
double?s=1,k=1.0;
for(i=1;i=n;i++)
{
j=i;
while(j=1)
{
k*=j;
j--;
}
s+=1/k;
}
return?s;
}
void?main()
{
int?n;?
double?s;
FILE?*out;
printf("\nInput?n:?");?
scanf("%d",n);
s=fun(n);
printf("s=%f\n",s);
}
#include stdio.h
int main()
{
int a;
scanf("%d",a);
if(a0)
? a=-a;
printf("%d\n",a);
return 0;
}
子函數(shù)里,return s 你給誰(shuí)?
return是指你上面計(jì)算的結(jié)果返回。所以你應(yīng)該return i;
另外你數(shù)組輸入了2次,這是不對(duì)的。而且你for語(yǔ)句后面的if與return應(yīng)該在循環(huán)體里,不然就只return了一次的。
int x(int a)
{
int i;
int s[];
for(i=0;ij;i++)
{
if(s[i]%2==0)
return i;
}
}
下面給你一個(gè)我寫(xiě)的吧
#include stdio.h
main()
{
int a[]={0,1,2,3,4,5,6,7,8,9};
int i=0;
for(;i10;i++)
{
if (a[i]%2==0)
{
printf("第%d個(gè)元素是偶數(shù),它是:%d\n",i+1,a[i]);
}
}
getchar();
}運(yùn)行無(wú)誤
新聞標(biāo)題:函數(shù)計(jì)算題c語(yǔ)言解 c語(yǔ)言計(jì)算函數(shù)的值例題
文章出自:http://m.rwnh.cn/article0/dooppoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、微信小程序、小程序開(kāi)發(fā)、網(wǎng)站營(yíng)銷、網(wǎng)站設(shè)計(jì)公司、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容