國家開放大學(xué)C語言程序的設(shè)計(jì)A第三次形考任務(wù)和答案_第1頁
國家開放大學(xué)C語言程序的設(shè)計(jì)A第三次形考任務(wù)和答案_第2頁
國家開放大學(xué)C語言程序的設(shè)計(jì)A第三次形考任務(wù)和答案_第3頁
國家開放大學(xué)C語言程序的設(shè)計(jì)A第三次形考任務(wù)和答案_第4頁
國家開放大學(xué)C語言程序的設(shè)計(jì)A第三次形考任務(wù)和答案_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

/一、選擇題〔共30分,每小題2分在下面的函數(shù)聲明語句中,存在著語法錯(cuò)誤的是〔

。a.AA<inta,intb>b.AA<int,int>c.AA<inta;intb>d.AA<inta,int>題目2在下面的保留字中,不能作為函數(shù)的返回值類型的是〔

。c.enumd.long題目3假定p是一個(gè)指向float型數(shù)據(jù)的指針,則p+1所指數(shù)據(jù)的地址比p所指數(shù)據(jù)的地址增加的字節(jié)數(shù)為<

>。a.1b.2c.4d.8題目4假定a為一個(gè)數(shù)組名,在下面的表達(dá)式中,存在語法錯(cuò)誤的是<

>。a.a[i]b.*a++c.*ad.*<a+1>題目5用calloc函數(shù)創(chuàng)建具有10個(gè)整型元素的一維數(shù)組的正確語句是〔

。*p=calloc<10,2>;*p=calloc<10>;*p=calloc<10,4>;*p=malloc<10>題目6假定變量m定義為"intm=7;",則下面正確的語句為〔

。p=&m;*p=&m;&p=*m;*p=m;題目7假定k是一個(gè)double類型的變量,則定義變量p的正確語句為〔

。a.doublep=&k;*p=&k;c.double&p=*k;d.char*p="Thankyou!";題目8若有語句為"inta[10],x,*pa=a;",要把數(shù)組a中下標(biāo)為3的元素值賦給x,則不正確的語句為〔

。a.x=pa[3];b.x=*<a+3>;c.x=a[3];d.x=*pa+3;題目9假定有語句為"intb[10];int*pb;",則下面不正確的賦值語句為〔

。a.pb=b;b.pb=&b[0];c.pb=b+2;d.pb=b[5];題目10已知"int*p=malloc<100>;",要釋放p所指向的動(dòng)態(tài)內(nèi)存,正確的語句為〔

。a.free<p>;b.freep;c.free<*p>;d.free[p];題目11在程序的一個(gè)文件中定義的函數(shù),若要在另一個(gè)文件中調(diào)用,則必須在這另一個(gè)文件中給出該函數(shù)的〔

。a.原型語句b.參數(shù)表c.函數(shù)名d.返回類型題目12假定一個(gè)函數(shù)定義為"staticintf1<intx,inty>{returnx+y;}",該函數(shù)名稱為〔

。c.f1d.return題目13假定一個(gè)函數(shù)的原型語句為"intff<int*x>;",一個(gè)整型數(shù)組為a[10],則下面函數(shù)調(diào)用表達(dá)式不正確的是〔

。a.ff<a>b.ff<a[0]>c.ff<a+3>d.ff<&a[0]>題目14假定一個(gè)函數(shù)的數(shù)組參數(shù)說明為chara[],與之等價(jià)的指針參數(shù)說明為〔

。a.charab.char*ac.char&ad.char**a題目15假定一個(gè)函數(shù)的二維數(shù)組參數(shù)說明為charw[][N],與之等價(jià)的指針參數(shù)說明為〔

。a.char<*w>[N]b.char*w[N]c.char<*w>Nd.char**a二、判斷題〔共30分,每小題2分。敘述正確則回答"是",否則回答"否"題目16在C語言中,一個(gè)函數(shù)由函數(shù)頭和函數(shù)體組成。對(duì)錯(cuò)題目17在函數(shù)模塊之外定義的變量稱為全局變量,若沒有被初始化則系統(tǒng)隱含對(duì)它賦初值0。對(duì)錯(cuò)題目18如果一個(gè)函數(shù)只允許同一程序文件中的函數(shù)調(diào)用,則不應(yīng)在該函數(shù)定義的開始前加上保留字static。對(duì)錯(cuò)題目19如果在一個(gè)函數(shù)體中又出現(xiàn)對(duì)自身函數(shù)的調(diào)用,此種函數(shù)調(diào)用被稱為遞歸調(diào)用。對(duì)錯(cuò)題目20調(diào)用系統(tǒng)函數(shù)時(shí),要先使用#include命令包含該系統(tǒng)函數(shù)的原型語句所在的系統(tǒng)頭文件。對(duì)題目21函數(shù)形參變量不屬于局部變量。對(duì)錯(cuò)題目22假定p所指對(duì)象的值為25,p+1所指對(duì)象的值為46,則*p++的值為46。對(duì)錯(cuò)題目23假定p所指對(duì)象的值為25,p+1所指對(duì)象的值為46,則*++p的值為25。對(duì)錯(cuò)題目24假定p所指對(duì)象的值為25,p+1所指對(duì)象的值為46,則執(zhí)行*<p++>運(yùn)算后,p所指對(duì)象的值為46。對(duì)錯(cuò)題目25假定a是一個(gè)指針數(shù)組,則a+i所指對(duì)象的地址比a地址大4*i字節(jié)。對(duì)錯(cuò)題目26若要把一個(gè)整型指針p轉(zhuǎn)換為字符指針,則采用的強(qiáng)制轉(zhuǎn)換表達(dá)式為<char*>p。對(duì)錯(cuò)題目27假定一個(gè)數(shù)據(jù)對(duì)象為int*類型,則指向該對(duì)象的指針類型仍為int*類型。錯(cuò)題目28假定x為一個(gè)簡單變量,則&x表示x的地址。對(duì)題目29若p指向x,則*p與x的值不同。錯(cuò)題目30NULL是一個(gè)符號(hào)常量,通常作為空指針值,它代表的值為0。對(duì)三、寫出下列每個(gè)程序運(yùn)行后的輸出結(jié)果〔共20分,每小題4分題目31#include<stdio.h>

intWF<intx,inty>{

x=x+y;

y=x+y;

returnx+y;

}

voidmain<>{

intx=5,y=7;

intz=WF<x,y>;

printf<"z=%d\n",z>;

}z=31題目32

#include<stdio.h>

#include<string.h>

voidfun<charss[]>;

voidmain<>{

chars[15]="0123456789";

fun<s>;

printf<"%s\n",s>;

}

voidfun<charss[]>{

inti,n=strlen<ss>;

for<i=0;i<n/2;i++>{

charc=ss[i];

ss[i]=ss[n-1-i];

ss[n-1-i]=c;

}

}9876543210題目33

#include<stdio.h>

intCount<inta[],intn,intx>

{

inti,c=0;

for<i=0;i<n;i++>

if<a[i]>x>c++;

returnc;

}

voidmain<>{

inta[8]={20,15,32,47,24,36,28,70};

intb=Count<a,8,30>;

printf<"b=%d\n",b>;

}b=4題目34#include<stdio.h>

voidmain<>{

inta[8]={3,5,7,9,2,3,4,8};

ints=0,*p;

for<p=a;p<a+8;>s+=*p++;

printf<"s=%d\n",s>;

}s=41題目35#include<stdio.h>

intLA<int*a,intn,intx>{

inti,s=0;

for<i=0;i<n;i++>

if<a[i]<x>s+=a[i];

returns;

}

voidmain<>{

inta[8]={5,10,15,8,12,3,9,20};

intb=LA<a,5,10>;

intc=LA<a+2,6,10>;

printf<"%d%d\n",b,c>;

}1320四、寫出下列每個(gè)函數(shù)的功能〔共20分,每小題4分題目36doubleSF<doublex,intn>{

//n為正整數(shù)

doublep=1,s=1;

inti;

for<i=1;i<=n;i++>{

p*=x;

s+=p;

}

returns;

}函數(shù)功能為:計(jì)算x+x2+x3+……+xn的值并返回。題目37intSG<intx>{

//x為大于等于2的整數(shù)

inti=2;

while<i*i<=x>{

if<x%i==0>break;

i++;

}

if<i*i<=x>return0;elsereturn1;

}函數(shù)功能為:判斷一個(gè)整數(shù)是否是質(zhì)數(shù)〔素?cái)?shù),若是則返回1,否則返回0。題目38intWB<inta[],intn,intx>{

for<inti=0;i<n;i++>

if<a[i]==x>return1;

return0;

}從數(shù)組a[n]中順序查找值為x的元素,若查找成功則返回1,否則返回0。題目39intfun<intm,intn>{

intc=0;

staticintb=2;

if<m<b||n<b>returnm*n;

elseif<m%b==0&&n%b==0>{c=b;returnc*fun<m/b,n/b>;}

else{b++;returnfun<m,n>;}

}函數(shù)功能為:一個(gè)遞歸函數(shù)過程,求出兩個(gè)自然數(shù)m和n的最小公倍數(shù)。題目40intL

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論