首先先定義一個(gè)函數(shù)
10年積累的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有太湖免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
然后在主函數(shù)中調(diào)用
如
定義一個(gè)函數(shù)比較大小 int max (intx , inty)
在主函數(shù)中調(diào)用c=max(a,b)
其中x,y是形參,a,b是實(shí)參
把變量定義在主函數(shù)之外,即把變量設(shè)置為全局的。一般我們都把變量的定義放在函數(shù)中,因此變量的范圍就是在本函數(shù)中??墒侨绻x在所有函數(shù)的外面,這樣所有的函數(shù)中,都可以使用本變量。你可以試一下這個(gè)程序。定義一個(gè)全局變量a,在主函數(shù)中進(jìn)行賦值,然后在子函數(shù)中進(jìn)行輸出,結(jié)果是5.#includestdio.hint a;void func();//函數(shù)聲明int main(){ a=5; func();}void func(){ printf("%d\n", a);}+++++++++++++++++++++++++++++++++++++++++++++++++++當(dāng)然,除了定義全局變量這個(gè)方法,還有其他的方法,那就是指針。在子函數(shù)的參數(shù)中傳遞變量的地址,依然可以使用該變量,依然能夠改變?cè)撟兞康闹怠1热缦旅孢@個(gè)程序,在主函數(shù)中a的值為5,將變量a的地址傳遞過(guò)去,子函數(shù)將該地址中的變量的值設(shè)置為3,然后主函數(shù)輸出,結(jié)果卻是3.#includestdio.hvoid func(int *b);//函數(shù)聲明int main(){ int a=5; func(a);//把變量a的地址傳遞過(guò)去 printf("%d\n", a);}void func(int *b){ *b=3; //將地址b中變量的值設(shè)置為3}
當(dāng)然可以!
C語(yǔ)言程序的最基本的模塊就是函數(shù),
該程序規(guī)定:任意函數(shù)都可以調(diào)用其它任意一個(gè)函數(shù),包括函數(shù)本身;
1、函數(shù)調(diào)用自己本身, 這種稱為遞歸;
通過(guò)遞歸,計(jì)算1+2+3+...+n值的代碼:
2、自定義函數(shù)調(diào)用其它自定義函數(shù)的例子:
這個(gè)例子就是主函數(shù)調(diào)用自定義函數(shù)fun2,然后fun2調(diào)用另一個(gè)自定義函數(shù)fun1;
在另外一個(gè)函數(shù)里面使用的源代碼如下:
#include"stdio.h"
#include "conio.h" //-------添加這個(gè)頭文件,因?yàn)間etch()函數(shù)來(lái)自它,否則編譯會(huì)有警告
struct student ? /*定義結(jié)構(gòu)體*/
{
void main()
{
void data_in(struct student putin[]);
void data_out(struct student *p);
void data_pout(struct student *s1);
data_in(pers); ? ? ?/*調(diào)用指針輸入函數(shù)*/
data_out(sp); ? ? /*調(diào)用指針輸出函數(shù)*/
data_pout(sp); ? /*調(diào)用函數(shù)名輸出函數(shù)*/
getch();
}
擴(kuò)展資料
1、函數(shù)是C語(yǔ)言的基本組成元素,當(dāng)我們調(diào)用一個(gè)函數(shù)時(shí),需要明確函數(shù)名和實(shí)參列表。實(shí)參列表中的參數(shù)可以是常量、變量、表達(dá)式或者空,并且各參數(shù)之間要使用英文逗號(hào)分隔開(kāi)來(lái)。
2、在C語(yǔ)言中,函數(shù)的定義是獨(dú)立的,一個(gè)函數(shù)不能定義在另一個(gè)函數(shù)內(nèi)部。但在調(diào)用函數(shù)時(shí),可以在一個(gè)函數(shù)中調(diào)用另一個(gè)函數(shù),這就是函數(shù)的嵌套調(diào)用。接下來(lái)我們通過(guò)一個(gè)案例來(lái)演示函數(shù)的嵌套調(diào)用。
#include(stdio.h)
void sk(void);
int main(void){
sk();
}
void sk(void){
}
#include stdio.h
#include string.h
void input(char st[]);//定義輸入函數(shù)
void reverse(char st[]);//定義反序函數(shù)
int main()
{
char s[20];
input(s);//調(diào)用輸入函數(shù)
printf("Original string: %s\n", s);//輸出原字符串
reverse(s);//調(diào)用反序函數(shù)
printf("New string: %s\n", s);//輸出反序后的字符串
return 0;
}
void input(char st[])
{
printf("Please enter string: ");
gets(st);
}
//反序函數(shù)
void reverse(char st[])
{
int n=strlen(st);
for (int i=0, j=n-1, t; i(n/2); t=st[i], st[i]=st[j], st[j]=t, i++, j--);
}
擴(kuò)展資料:
gets()用法:
1、gets() 函數(shù)是從鍵盤輸入字符串,該函數(shù)只有一個(gè)參數(shù)。參數(shù)類型為 char* 型,即 str 可以是一個(gè)字符指針變量名,也可以是一個(gè)字符數(shù)組名。打開(kāi)編輯器,新建一個(gè)c語(yǔ)言文件,引入標(biāo)準(zhǔn)庫(kù)并新建主函數(shù):
2、gets() 函數(shù)的功能是從輸入緩沖區(qū)中讀取一個(gè)字符串存儲(chǔ)到字符指針變量 str 所指向的內(nèi)存空間,這里的程序是用gets函數(shù)輸入字符串,可以看到不像scanf那樣需要使用%號(hào),gets函數(shù)中直接傳入字符串即可:
3、最后運(yùn)行下程序,輸入“i love you”,可以看到gets函數(shù)可以直接輸出空格,而scanf函數(shù)輸出空格則需要使用轉(zhuǎn)義字符實(shí)現(xiàn),因此gets函數(shù)的使用要比scanf簡(jiǎn)潔的多。以上就是gets函數(shù)使用方法的演示:
文章題目:c語(yǔ)言其他函數(shù)的使用方法,c語(yǔ)言其他函數(shù)的使用方法有哪些
轉(zhuǎn)載來(lái)于:http://chinadenli.net/article48/hegdep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、動(dòng)態(tài)網(wǎng)站、電子商務(wù)、響應(yīng)式網(wǎng)站、域名注冊(cè)、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(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)