c語言自定義函數(shù)程序設(shè)計 c語言中的自定義函數(shù)

C語言,編寫自定義函數(shù)。急急急?。?!謝謝

有疑問問#include #include #include double EPS=10E-6; double sum(double a,double b) { return a+b; } double sub(double a,double b) { return a-b; } double mul(double a,double b) { return a*b; } double divv(double a,double b) { return a/b; } int rem(int a , int b) { return a%b; } int addnumber(int c,int d) { int sum=0; for(int i=c;i=d;i++) { sum+=i; } return sum; } int factor(int n) { int f=1; for(int i=1;i=n;i++) { f*=i; } return f; } void displaymenu() { printf("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \n"); printf("*############高級計算器############* \n"); printf("************************************ \n"); printf("* ①加法運(yùn)算 * \n"); printf("* ②減法運(yùn)算 * \n"); printf("* ③乘法運(yùn)算 * \n"); printf("* ④除法運(yùn)算 * \n"); printf("* ⑤取余運(yùn)算 * \n"); printf("* ⑥累加運(yùn)算 * \n"); printf("* ⑦階乘運(yùn)算 * \n"); printf("* ⊙結(jié)束運(yùn)算 * \n"); printf("************************************ \n"); printf("************************************ \n"); } void main() { int c,d; /*用于做四則運(yùn)算的兩個數(shù)值的說明*/ double a,b; /*用來做累加函數(shù)的兩個參數(shù)值的說明*/ int intresult; double result; /*用于保存表單運(yùn)算中函數(shù)的返回值*/ int choice; displaymenu();/*保存用戶選擇項目菜單項*/ while(1) { printf("請選擇你所進(jìn)行運(yùn)算項目的符號:"); scanf("%d",choice); switch(choice) { case 1: /*加法計算*/ printf("請輸入兩個數(shù)字:"); scanf("%lf%lf",a,b); result=sum(a,b); printf("%lf+%lf的計算結(jié)果是:%lf\n",a,b,result); break; case 2: /*減法計算*/ printf("請輸入兩個數(shù)字:"); scanf("%lf%lf",a,b); result=sub(a,b); printf("%lf-%lf的計算結(jié)果是:%lf\n",a,b,result); break; case 3: /*乘法計算*/ printf("請輸入兩個數(shù)字:"); scanf("%lf%lf",a,b); result=mul(a,b); printf("%lf*%lf的計算結(jié)果是:%lf\n",a,b,result); break; case 4: /*除法計算*/ { scanf("%lf%lf",a,b); if(b-0.0EPS) printf("數(shù)字錯誤\n"); else { printf("請輸入兩個數(shù)字:"); result=divv(a,b); printf("%lf/%lf的計算結(jié)果是:%lf\n",a,b,result); } break; } case 5: /*取余計算*/ printf("請輸入兩個數(shù)字:"); scanf("%d%d",c,d); result=rem(c,d); printf("%d % %d的計算結(jié)果是:%d\n",c,d,result); break; case 6: /*累加計算*/ printf("請輸入兩個整數(shù)"); scanf("%d%d",c,d); intresult=addnumber(c,d); printf("%d-%d的累加計算結(jié)果是:%d\n",c,d,intresult); break; case 7: //階乘計算 { printf("請輸入一個大于0小于10的整數(shù)字"); scanf("%d",c); if(c10) { printf("請輸入一個大于0小于10的整數(shù)字,數(shù)據(jù)錯誤。\n"); break; } intresult=factor(c); printf("%d的階乘計算結(jié)果是:%d\n",c,intresult); break; } case 0: printf("謝謝使用。歡迎下次再用。\n"); return ; default: printf("選擇錯誤,程序結(jié)束\n"); break; } } }

創(chuàng)新互聯(lián)建站專注于西湖企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,商城網(wǎng)站開發(fā)。西湖網(wǎng)站建設(shè)公司,為西湖等地區(qū)提供建站服務(wù)。全流程按需定制設(shè)計,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)

用c語言編寫一個自定義的函數(shù)時的基本步驟

1 根據(jù)功能,想一個函數(shù)名,并設(shè)計好返回值類型以及參數(shù)列表。參數(shù)列表包括參數(shù)個數(shù),每個參數(shù)類型,以及該參數(shù)的作用。

2 根據(jù)函數(shù)要實現(xiàn)的功能,實現(xiàn)函數(shù)的主體代碼。

3 按照你設(shè)計的想法,傳入不同參數(shù)類型,驗證函數(shù)功能并調(diào)試。

c語言程序設(shè)計題:請用自定義函數(shù)的形式編程實現(xiàn),求s=m!+n!+k! m n k從鍵盤輸入(值均小于7)

代碼:

#include stdio.h

請用自定義函數(shù)的形式編程實現(xiàn)

求 s = m! + n! + k!,m、n、k 從鍵盤輸入(值均小 于 7)。

int fun(int m);

int main()

{

int m,n,k;

int s;

printf("請輸入三個小于7的數(shù):");

scanf("%d %d %d",m,n,k);

s=fun(m)+fun(n)+fun(k);

printf("%d\n",s);

return 0;

}

int fun(int m)

{

int i;

int x=1;

for(i=1;i=m;i++)

{

x=x*i;? ? ?

}

return x;

}

擴(kuò)展資料:

printf函數(shù)使用注意事項

1、域?qū)?/p>

%d:按整型數(shù)據(jù)的實際長度輸出。

如果想輸出指定寬度可以指定域?qū)挘?md--gt;m域?qū)?打印出來以后,在控制臺上,顯示m位;

如果我們要打印的數(shù)的位數(shù)如果超過我們設(shè)定m則原樣輸出;

如果我們要打印的數(shù)的位數(shù)如果小于我們設(shè)定的位數(shù),則補(bǔ)空白,具體如下:

如果m為正數(shù),則左對齊(左側(cè)補(bǔ)空白);

如果m為負(fù)數(shù),則右對齊(右側(cè)補(bǔ)空白)。

2、轉(zhuǎn)義字符

如果想輸出字符"%",則應(yīng)該在“格式控制”字符串中用連續(xù)兩個%表示。

如:printf("%f%%",1.0/3);輸出結(jié)果:0.333333%。

c語言,自定義函數(shù)

cheng()函數(shù)中,n賦值1之后再也沒有改變過,所以x=x*n,不管乘幾次,結(jié)果還是x。

暫沒發(fā)現(xiàn)其他錯誤。

用C語言編寫自定義函數(shù):

(1)素數(shù)判斷函數(shù):是返回1,否則返回0

int?prime(int?n){

int?i;

if(n2??!(n1)?||?n2)

return?0;

for(i=3;i*i=n;i+=2)

if(!(n%i))

return?0;

return?1;

}

(2)編寫排序函數(shù)(冒泡排序、選擇排序)

void?bubbling(int?*p,int?n){//冒泡

int?i,j,k;

for(i=0;in;i++)

for(j=1;jn;j++)

if(p[j]p[j-1])

k=p[j],p[j]=p[j-1],p[j-1]=k;

}

void?select(int?*p,int?n){//選擇

int?i,j,k;

for(n--,i=0;in;i++){

for(k=i,j=k+1;j=n;j++)

if(p[k]p[j])

k=j;

if(k-i)

j=p[k],p[k]=p[i],p[i]=j;

}

}

(3)查找函數(shù),找到返回下標(biāo),否則返回-1

int?find(int?*p,int?n,int?x){//順序

int?i;

for(i=0;in;i++)

if(p[i]==x)

return?i;

return?-1;

}

int?fihalf(int?*p,int?n,int?x){//折半,升序為例

int?l,r,m;

l=0,r=n-1;

while(m=(l+r)1,lr??p[m]-x)

p[m]x???l=m+1?:?r=m-1;

return?p[m]==x???m?:?-1;

}

(4)插入函數(shù),升序為例

文章標(biāo)題:c語言自定義函數(shù)程序設(shè)計 c語言中的自定義函數(shù)
網(wǎng)站地址:http://www.muchs.cn/article36/docsgsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、電子商務(wù)、品牌網(wǎng)站制作Google、網(wǎng)站營銷、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)