c语言程序设计慕课版答案第6章,C语言程序设计答案黄保和编第6章函数.doc
一、思考題
1、函數總需要從main中調用嗎?當調用一個函數時,為什么要使用參數?
函數不是總需要從main函數中調用,使用參數的目的是為了給被調函數傳遞數據。
2、什么是函數的返回值?是否每個函數都有返回值?為什么?對它們調用有什么不同?
函數返回值是被調函數傳遞給主調函數的數據,不是每個函數都需要有返回值,是否有返回值由函數的功能確定,可以將有返回值的函數賦值給同類型的變量,無返回值得則不可。
3、每個函數的調用都需要有參數嗎?為什么?
不是,對于參數函數的調用不需要參數。
4、C編譯器提供的庫函數與你自己編寫的函數有什么不同?在調用它們時,應注意什么?
系統將所有庫函數的函數原型分成多組,每組放在一個頭文件中。調用庫函數時,要注意引用其對應的頭文件。
5、局部變量和全局變量有何不同?編寫程序時,何時使用局部變量或全局變量?
如果變量定義在一個函數或復合語句的內部,則稱該變量為局部變量,局部變量的作用域是函數級的或者模塊級的,如果變量定義在所有函數外部,則稱該變量為全局變量,其作用域是從它的定義的位置開始到本源文件結束。選擇變量類型的兩個原則是:1當變量只在某函數或復合語句內使用時,不要定義成全局變量。2當多個函數都引用同一個變量時,在這些函數上面定義全局變量,而且定義部分盡量靠近這些函數。
6、靜態局部變量和靜態全局變量有何異同?何時應該使用它們?
靜態局部變量是在函數或復合語句內部用static 聲明的變量,靜態靜態局部變量存儲靜態存儲區,且僅在編譯時賦值一次。靜態全局變量是使用static聲明的全局變量,靜態全局變量屬于靜態存儲類型,編譯時將靜態全局變量分配在靜態存儲區,其生存期是程序的整個運行期間,但他的作用域只限于本文件。
二、選擇題
1、C語言程序由函數組成。它的B)主函數可以在其它函數之后,函數內不可以嵌套定義函數。
2、一個C語言程序的基本組成單位是C)函數
3、以下說法正確的是C)C語言程序總是從主函數main()開始執行
4、已知函數fun的定義為
void func(){…}
則函數定義中的void的含義是A)執行函數fun后,函數沒有返回值
5、下列對C語言函數的描述中,正確的是A)在C語言中,調用函數時只能將實參的值傳遞給形參,形參的值不能傳遞給實參。
6、以下敘述中錯誤的是B)在C語言中,外部變量的缺省值存儲類別是自動的。
7、C語言中的函數D)嵌套調用和遞歸調用均可
8、C語言中函數返回值r的類型是由D)定義函數時所指定的函數類型
9、C語言規定,調用一個函數時,實參變量與形參變量之間的數據傳遞方式是D)值傳遞
10、下列的結論中正確的是B)所有的遞歸程序均可以采用非遞歸算法實現
11、在下列結論中,只有一個是錯誤的,它是B)有些遞歸程序是不能用非遞歸算法實現的
12、在下列結論中,只有一個是正確的,它是B)遞歸函數中的形參是自動變量
13、下列敘述錯誤的是C)主函數中定義的變量在整個程序中都是有效的
14、若函數類型和return語句中的表達式類型不一致,則B)不會出錯,且返回值的類型以函數類型為準
15、在函數調用語句“f(u(x,y),s=x-y,(x,y));”中,實參的個數是D)3
16、下面函數定義正確的是C)double fun(float u, float v){return u+v;}
17、以下函數fun的返回值類型為B) void
fun(double x){printf(“%f\n”,x);}
三、編程題
寫一個判別素數的函數,在主函數輸入一個整數,輸出其是否為素數的信息。
#include
int sushu(int);
main()
{
int a;
printf("輸入一個整數:");
scanf("%d",&a);
if(sushu(a)==1)
printf("是素數");
else
printf("不是素數");
}
int sushu(int x)
{
int i;
for(i=2;i
{
if(x%i==0)
return 0;
}
return 1;
}
寫一個判別水仙花數的函數,求出所有的水仙花數。
說明:所謂“水仙花數”是指一個三位數,其各位數字立方和等于該數本身。例如:153是一個“水仙花數”,因為153=1的三次方+5的三次方+3的三次方。
#include
int shuixian(int);
main()
{
int i;
for(i=100;i<1000;i++)
{
if(shuixian(i)==1)
printf("%d\t",i);
}
}
int shuixian(
總結
以上是生活随笔為你收集整理的c语言程序设计慕课版答案第6章,C语言程序设计答案黄保和编第6章函数.doc的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【git学习】统计git项目某user的
- 下一篇: 真学霸!小伙得知考676分后边吃早餐边看