精華2
威望275
K幣1947 元
注冊(cè)時(shí)間2005-8-13
在線時(shí)間219 小時(shí)
最后登錄2006-7-4
中級(jí)戰(zhàn)友
 
- 精華
- 2
- 威望
- 275
- K幣
- 1947 元
- 注冊(cè)時(shí)間
- 2005-8-13
|
2003年碩士研究生招生入學(xué)考試試卷
專業(yè)名稱 地圖學(xué)與地理信息系統(tǒng)
研究方向 地理信息系統(tǒng)
科目代碼 480 481
考試科目 程序設(shè)計(jì) (C語言)(A)
一、 選擇題(每題4分,共20分)
(1) 設(shè)有如下定義:int x=1,y=1;則語句printf(“d%/n”,(x--&++y));的輸出結(jié)果是
(A)1 (B)0 (C)-1 (D)2
(2) 若已定義:int a[9],*p=a;并在以后的語句中并未改變P的值,不能表示a[1]的地址的表達(dá)式是
(A)p+1 (B)a+1 (C)a++ (D)++p
(3) 若有以下的說明和語句,則在執(zhí)行for語句后,*(*(pt+1+2))表示的數(shù)組元素是
(A)t[2][0] (B)t[2][2] (C)t[1][2] (D)t[2][1]
(4) #include“studio.h”
main()
{
int a[]={1,2,3,4,5,6,7,8,9,10,11,12};
int p=a+5,q=NULL;
*q=*(p+5);
printf(“%d%d\n”,*p,*q);
}
輸出結(jié)果是
(A)運(yùn)行后報(bào)錯(cuò) (B)6 6 (C)6 12 (D)5 5
(5) 以下不正確的說法是
(A)實(shí)參可以是常量、變量或表達(dá)式 (B)形參應(yīng)與其對(duì)應(yīng)的實(shí)參類型一致
(C)實(shí)參可以為任意類型 (D)形參可以是常量、變量或表達(dá)式
二、 程序填空(每題5分,共計(jì)20分,請(qǐng)將答案寫在答題卡的相應(yīng)位置)
(1) 函數(shù)yanghui能夠按以下方式構(gòu)成一個(gè)楊輝三角形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
……
#define N 11
yanghui(int a[][N])
{
int i,j;
for(i=1;i<N;i++)
{a[1]=1;a=1;}
for([A];i<N;i++)
for(j=2;;j++)
a[j]=[C]+a[i-1][j];
}
(2) 條件“2<x<3或x<-10”的C語言表達(dá)式是[A]
(3) 以下程序的功能是判斷輸入的年份是不是閏年
main()
{
int y,f;
scanf(“%d”,&y);
if(y%400==0)f=1;
else if([A]) f=1;
else ;
if(f) printf(“%d is”,y);
else printf(“%d is not”,y);
printf(“a leap year\n”);
}
(4) 以下程序可以把從鍵盤上輸入的十進(jìn)制數(shù)(long型)以二到十六進(jìn)制形式輸出,請(qǐng)?zhí)羁铡?br />
(5) #include“studio.h”
main()
{
char b[16]={'0'、'1'、'2'、'3'、'4'、'5'、'6'、'7'、'8'、'9'、'A'、'B'、'C'、'D'、'E'、'F'};
int c[64],d,i=0,base;
long n;
printf(“enter a number:\n”);
scanf(“%1d”,&n);
printf(“enter new base:\n”);
scanf(“%d”,&base);
do{c=[A];
i++;n=n/base;
}while(n!=0);
printf(“transmite new base:\n”);
for(--i;i>=0;--i)
{
d=c;
printf(“%c”,b);
}
}
三、 程序設(shè)計(jì)題(卷面有分)
(1) 從鍵盤輸入10個(gè)數(shù),輸出其中最大數(shù)和最小數(shù)。(本題10分)
(2) 求300以內(nèi)的雙素?cái)?shù),并輸出,判斷一個(gè)數(shù)m是否為素?cái)?shù)的方法如下:讓m被2到 除,當(dāng)且僅當(dāng)m不能被2~ 之間的任何一個(gè)數(shù)所整除,則m為素?cái)?shù),而當(dāng)m為素?cái)?shù),同時(shí)m+2也為素?cái)?shù),則m與m+2就是雙素?cái)?shù)。(本題15分)
(3) 編寫一個(gè)子程序能將主程序傳過來的數(shù)組按行分別進(jìn)行從小到大的排序,再編寫一個(gè)二分法查找子程序,判定主函數(shù)傳過來的待查數(shù)是否在已排序的數(shù)組中,若查找到則返回它在數(shù)組中的位置(可以在多個(gè)位置出現(xiàn)),否則返回-1。(本題15分)
(4) 利用遞歸方法找出從自然數(shù)1,2,……n中任取r個(gè)數(shù)的所有組合,并畫出程序N-S圖,例如n=5,r=3,所有組合為:(本題20分)
5 4 3 5 2 1
5 4 2 4 3 2
5 4 1 4 3 1
5 3 2 4 2 1
5 3 1 3 2 1
(5) 利用單項(xiàng)循環(huán)鏈表和順序存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)一個(gè)算法解決約瑟夫(JOSEHUS)問題。設(shè)有N個(gè)人圍坐一圈,現(xiàn)從某個(gè)人開始報(bào)數(shù),數(shù)到M的人出現(xiàn),接著從出列的下一個(gè)人開始重新報(bào)數(shù),數(shù)到M的人又出現(xiàn),如此下去知道所有人都出列為止。試求出他們的出列次序。(本題20分)
(6) 編號(hào)為A,B,C,D的四輛列車,順序開進(jìn)一個(gè)棧式結(jié)構(gòu)的站臺(tái)。問開出車站的順序有多少種可能?請(qǐng)具體寫出來。
(7) 試將下面的樹轉(zhuǎn)換成二叉樹,并寫出二叉樹前序遍歷后的結(jié)點(diǎn)序列。(本題15分)
[ 本帖最后由 五四門下走狗 于 2006-4-28 22:55 編輯 ] |
評(píng)分
-
查看全部評(píng)分
|