雖然我不太懂指針,但都看懂了
創(chuàng)新互聯(lián)建站成立與2013年,先為鹽田等服務(wù)建站,鹽田等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為鹽田企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
函數(shù)ss(char *s)的作用是求字符串s的長度
char *p=s;//將字符串s的首地址賦給指針p
while(*p)p++;//當(dāng)p指向的地址未結(jié)束時(shí),p指向下一個地址,當(dāng)循環(huán)結(jié)束時(shí),p指向的是字符串s的末地址加1
return(p-s);//返回末地址減去首地址的值,就是返回字符串s的長度
所以整個程序就是輸出字符串s的長度
舉一個用遞歸調(diào)用函數(shù)求輸入非負(fù)整數(shù)的階乘的例子,如下:
//#include?"stdafx.h"http://If?the?vc++6.0,?with?this?line.
#include?"stdio.h"
int?fact(int?n){
if(n==1?||?n==0)?return?1;
else?return?n*fact(n-1);
}
int?main(void){
int?x;
while(1){
printf("Input?x(int?12=x=0)...\nx=");
if(scanf("%d",x),x=0??x=12)//x12時(shí)會使結(jié)果溢出
break;
printf("Error,redo:?");
}
printf("%d!?=?%d\n",x,fact(x));
return?0;
}
1,調(diào)用非自身函數(shù)
void main(){
int n=0;
n=fun(n);
printf("%d",n);
}
int fun(int n){
if(n==0){
return 1;
}else{
return 0;
}
}
2,遞歸,函數(shù)調(diào)用自身
int fun(int n){
if(n==1){
return 1;
}else{
return n+fun(n-1);
}
}
A是先取函數(shù)f返回的內(nèi)存單元(參數(shù)是i即i的地址)中存儲的值,并作更改(改為6)
B項(xiàng) i+6 是算術(shù)表達(dá)式,不能直接取地址,必須使用變量保存才能取地址
C項(xiàng) 是定義一個指向整型的指針p,并賦值為函數(shù)f的返回值(該函數(shù)返回一個指針,也就是內(nèi)存地址)
D項(xiàng) 直接以i為參數(shù)執(zhí)行函數(shù)f,返回值不起任何作用
網(wǎng)站題目:c語言函數(shù)調(diào)用的簡單題目 c語言函數(shù)調(diào)用的簡單題目有哪些
當(dāng)前鏈接:http://jinyejixie.com/article42/ddcccec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、定制網(wǎng)站、移動網(wǎng)站建設(shè)、網(wǎng)站策劃、微信公眾號、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)