#includestdio.h
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),蛟河企業(yè)網(wǎng)站建設(shè),蛟河品牌網(wǎng)站建設(shè),網(wǎng)站定制,蛟河網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,蛟河網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
voidmain(){
intn,result;
printf("請輸入一個(gè)數(shù)字,求它的階乘:");
scanf("%d",n);
result=calc(n);
printf("結(jié)果:%d",result);
}
intcalc(intn){
intresult=1,i;
for(i=n;i=1;i--)
result=result*i;
returnresult;
}
擴(kuò)展資料
C語言函數(shù)的調(diào)用
函數(shù)定義好以后,要被其它函數(shù)調(diào)用了才能被執(zhí)行。C語言的函數(shù)是能相互調(diào)用的,但在調(diào)用函數(shù)前,必須對函數(shù)的類型進(jìn)行說明,就算是標(biāo)準(zhǔn)庫函數(shù)也不例外。
標(biāo)準(zhǔn)庫函數(shù)的說明會被按功能分別寫在不一樣的頭文件中,使用時(shí)只要在文件最前面用#include預(yù)處理語句引入相應(yīng)的頭文件。如前面使用的printf函數(shù)的說明是放在文件名為stdio.h的頭文件中。
從小到大排序
void paixu(double a[],int N)
{
double temp;
int i,j;
for(i=0;iN;i++)
{
for(j=i+1;jN-i;j++)
{
if(a[i]a[j])
{temp=a[i];a[i]=a[j];a[j]=temp;}
}
}
}
把樓上的改改,減少浪費(fèi),歡迎拍磚
C語言只有字符數(shù)組有庫函數(shù)strcmp函數(shù),格式如下:
int strcmp(const char *str1, const char *str2);
如果左邊小于右邊的字符串,函數(shù)返回-1
如果左邊字符串等于右邊字符串,函數(shù)返回0
如果左邊字符串大于右邊字符串,函數(shù)返回1
一般基本數(shù)據(jù)類型的比較都可以用關(guān)系運(yùn)算符,如果自定義的可以重載運(yùn)算符或者使用函數(shù)對象,如果用C語言的方式,自定義一個(gè)比較函數(shù)就可以了,庫函數(shù)中沒有這種普適類型的比較函數(shù)。
擴(kuò)展資料:
compare函數(shù)規(guī)則
當(dāng)s1s2時(shí),返回為負(fù)數(shù);
當(dāng)s1=s2時(shí),返回值= 0;
當(dāng)s1s2時(shí),返回正數(shù)。
即兩個(gè)字符串自左向右逐個(gè)字符相比(按ASCII值大小相比較),直到出現(xiàn)不同的字符或遇'\0'為止,如:
1."A""B" 2."A""AB" 3."Apple""Banana" 4."A""a" 5."compare""computer"
參考資料來源:百度百科-strcmp
C語言中要編寫sin函數(shù),實(shí)質(zhì)上要利用sin的泰勒公式,然后根據(jù)泰勒公式,將其中的每一項(xiàng)進(jìn)行分解,最后用循環(huán),累加計(jì)算出最終結(jié)果
下面用for循環(huán)實(shí)現(xiàn)sin的算法,程序代碼如下:
#includestdio.h
#includemath.h
void main()
{
int i;
float x,sum,a,b; //sum代表和,a為分子,b為分母
char s;
printf("please input x");
scanf("%f",x);
s=1;
sum=0;
a=x; //分母賦初值
b=1; //分子賦初值
for(i=1;a/b=1e-6;i++)
{
sum=sum+s*a/b; //累加一項(xiàng)
a=a*x*x; //求下一項(xiàng)分子
b=b*2*i*(2*i+1); //求下一項(xiàng)分母
s*=-1;
}
printf("sum=%f\n",sum);
}
3. 關(guān)于上述程序的幾點(diǎn)說明:上述程序的計(jì)算結(jié)果精確到小數(shù)點(diǎn)后六位;上述程序運(yùn)用了sin的泰勒展開式 sin
x=x-x^3/3!+x^5/5! ...... ,程序中將sin泰勒公式中的每一項(xiàng)拆成了分子,分母以及每一項(xiàng)前的符號這三項(xiàng),以便于每一項(xiàng)的累加