《C語(yǔ)言程序設(shè)計(jì)》專接本考前模擬-計(jì)算機(jī)專業(yè)_第1頁(yè)
《C語(yǔ)言程序設(shè)計(jì)》專接本考前模擬-計(jì)算機(jī)專業(yè)_第2頁(yè)
《C語(yǔ)言程序設(shè)計(jì)》專接本考前模擬-計(jì)算機(jī)專業(yè)_第3頁(yè)
《C語(yǔ)言程序設(shè)計(jì)》專接本考前模擬-計(jì)算機(jī)專業(yè)_第4頁(yè)
《C語(yǔ)言程序設(shè)計(jì)》專接本考前模擬-計(jì)算機(jī)專業(yè)_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《C語(yǔ)言程序設(shè)計(jì)》專接本考前模擬-計(jì)算機(jī)專業(yè)一、單項(xiàng)選擇題1.以下關(guān)于變量的作用域說法正確的是A.全局變量的作用范圍僅限于其所在的文件B.形式參數(shù)的作用范圍僅限于本函數(shù)(正確答案)C.在函數(shù)內(nèi)復(fù)合語(yǔ)句中定義的變量在本函數(shù)內(nèi)有效D.在不同函數(shù)中不能定義同名變量2.調(diào)用fopen()函數(shù)時(shí),不需要的信息是()。A.文件的打開方式B.需要打開的文件名C.文件指針D.文件的大小(正確答案)3.判斷char型變量ch是否為大寫字母的正確表達(dá)式是A.(ch>=’A’)&&(ch<='Z'(正確答案)B.(‘A’<=ch)AND('Z'>=ch)C.(ch>=’A’)&(ch<='Z'D.’A’<=ch<='Z'4.已知:inta[10],*p=a,以下對(duì)數(shù)組元素的引用正確的是。A.*(p+2)(正確答案)B.a[p]C.p[a]D.p+25.以下敘述中正確的為()。A.編譯預(yù)處理命令只能位于源程序的開頭B.源程序中編譯預(yù)處理命令以"#"開頭(正確答案)C.編譯預(yù)處理就是對(duì)源程序進(jìn)行初步的語(yǔ)法檢查D.編譯預(yù)處理功能僅包括宏定義和文件包含6.執(zhí)行以下程序:inta;floatb;scanf(“a=%d,b=%f”,&a,&b);,欲將28和2.8分別賦給a和b,正確的輸入方法是()A.282.8B.a=28,b=2.8(正確答案)C.a=28b=2.8D.28,2.87.下面程序的運(yùn)行結(jié)果為()。

#include<stdio.h>

voidmain()

{

intn=0;

while(n++<=2);

printf("%d\n",n);

}A.3B.語(yǔ)法錯(cuò)誤C.4(正確答案)D.28.設(shè)有定義:intk=0;以下選項(xiàng)的四個(gè)表達(dá)式中與其他三個(gè)表達(dá)式的值不相同的是A.k+1B.++kC.k++(正確答案)D.k+=19.已知inta=5,b=6,c=3;,以下語(yǔ)句中執(zhí)行結(jié)果與其他3個(gè)不同的是A.if(a>b){c=a,a=b,b=c;}B.if(a>b)c=a,a=b,b=c;C.if(a>b)c=a;a=b;b=c;(正確答案)D.if(a>b){c=a;a=b;b=c;}10.以下敘述錯(cuò)誤的是A.函數(shù)調(diào)用可以作為一條獨(dú)立的語(yǔ)句B.若函數(shù)有返回值,則需要通過return語(yǔ)句C.函數(shù)形參值的改變一定會(huì)影響到其所對(duì)應(yīng)的實(shí)參(正確答案)D.C程序必須由一個(gè)或多個(gè)函數(shù)組成11.關(guān)于函數(shù)聲明,不正確的說法是A.如果調(diào)用之前已在主調(diào)函數(shù)外部進(jìn)行了函數(shù)聲明,則調(diào)用時(shí)不必再做函數(shù)聲明B.如果函數(shù)定義出現(xiàn)在函數(shù)調(diào)用之前,則可以省略函數(shù)聲明C.自定義函數(shù)在調(diào)用之前,必須進(jìn)行函數(shù)聲明,否則編譯會(huì)出錯(cuò)(正確答案)D.標(biāo)準(zhǔn)庫(kù)函數(shù)只需要包含相應(yīng)的頭文件即可,不需要再進(jìn)行函數(shù)聲明12.已知:inti=5,j;j=f(&i);則以下函數(shù)f的返回值是

intf(int*p)

{

return*p;

}A.不確定的值B.形參p中存放的值C.一個(gè)整數(shù)(正確答案)D.形參p的地址值13.以下程序段,while循環(huán)的執(zhí)行次數(shù)是()。

#include<stdio.h>

voidmain()

{

inti=0;

while(i<9)

{

if(i<1)continue;

if(i==4)break;

i++;

}

}A.8B.3C.2D.死循環(huán)(正確答案)14.已知:inti,j=7,*p=&i;則與i=j;等價(jià)的語(yǔ)句為()。A.i=*p;B.i=&j;C.i=**p;D.*p=j;(正確答案)15.下列運(yùn)算符優(yōu)先級(jí)最高的是A.!=B.C.+(正確答案)D.&&16.合法的數(shù)組說明語(yǔ)句是A.inta[]="string";B.chara="string";C.chara[]={'0','1','2','3','4','5'};(正確答案)D.inta[5]={0,1,2,3,4,5};17.對(duì)賦值語(yǔ)句intb[10]={1,2,3,4,5};的正確理解是A.將5個(gè)初值依次賦給b[0]至b[4](正確答案)B.將5個(gè)初值依次賦給b[5]至b[10];C.將5個(gè)初值依次賦給b[1]至b[5]D.由于數(shù)組長(zhǎng)度與初值的個(gè)數(shù)不相同,所以此語(yǔ)句不正確。18.以下格式控制符不是輸出整數(shù)的是()A.%c(正確答案)B.%uC.%oD.%x19.以下關(guān)于float型變量和double型變量的描述,不正確的是A.double型變量更常用(正確答案)B.double型變量精度更高C.double型變量占用的存儲(chǔ)空間更大D.double型變量的取值范圍更大20.下面有關(guān)for循環(huán)的正確描述是()。A.for循環(huán)的循環(huán)體可以包含多條語(yǔ)句,但必須用花括號(hào)括起來(正確答案)B.for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況C.for循環(huán)是先執(zhí)行循環(huán)體語(yǔ)句,后判斷條件表達(dá)式D.for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體二、程序閱讀題(本大題共5小題,每小題6分,共30分。請(qǐng)將程序的運(yùn)行結(jié)果填寫在答題紙的相應(yīng)位置上。)1._____________________

main

{inta=10,y=0;

do

{a+=2;y+=a;

if(y>50)break;

}while(a<14);

printf(“a=%d,y=%d\n”,a,y);

}(答案:a=14,y=26)2._____________________

main

{intn,k=0;

do

{scanf(“%d”,&n);

k+=n;

}while(n!=-1);

printf(“k=%d,n=%d”,k,n);

}(答案:k=14,n=-1)3._______________________

main

{

inti,j,s=0;

for(i=1,j=5;i<j;i++,j--)

s+=i*10+j;

printf(“\n%d”,s);

}(答案:39)4._________________________

main

{

inti=10,s=0;

for(;--i;)

if(i%3==0)

s+=i;

s++;

printf(“\ns=%d”,s);

}(答案:s=19)5._________________________

i=1,s=3;

do

{

s+=i++;

if(s%7==0)continue;

else++i;

}while(s<15);

printf(“%d”,i);(答案:8)三、程序填空題(本大題共3小題,每空5分,共35分。請(qǐng)?jiān)诖痤}紙相應(yīng)題號(hào)的位置上作答。)1.下面函數(shù)count的功能是統(tǒng)計(jì)字符串中小寫字母的個(gè)數(shù),并將小寫字母轉(zhuǎn)換為大寫字母。在main()函數(shù)中調(diào)用count函數(shù),輸出結(jié)果。例如:輸入字符串:abcABCe,輸出:小寫字母共4個(gè)轉(zhuǎn)換為大寫字母后:ABCABCE。請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

intcount(chara[])

{

inti,letters=0;

for(i=0;(1);i++)

if(2)

{letters++;

*(a+i)=(3);

}

returnletters;

}

voidmain()

{

chara[60];

printf("請(qǐng)輸入一個(gè)字符串:");

gets(a);

printf("小寫字母共%d個(gè)\n",count(a));

printf("轉(zhuǎn)為大寫字符串后:%s\n",a);

}(答案:1、a[i]!='\0'2、a[i]>='a'&&a[i]<='z'3、*(a+i)-32)2.下面函數(shù)的功能是判斷一個(gè)正整數(shù)是否素?cái)?shù),若是返回1,否則返回0。主函數(shù)中,通過調(diào)用prime()函數(shù)計(jì)算100~200之間素?cái)?shù)的和。請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

#include<math.h>

intprime(int);

voidmain()

{

intn,sum=0;

for(n=100;n<=200;n++)

4;

printf("素?cái)?shù)和:%d\n",sum);

}

intprime(intm)

{

intk,st;

st=(int)sqrt(m);

for(k=2;k<=st;k++)

5;

return1;

}(答案:4、if(prime(n))sum+=n5、if(m%k==0)return0)3.下面函數(shù)的功能是將字符串s2連接到字符串s1的后面,并輸出連接后的結(jié)果。運(yùn)行結(jié)果:asdfghjk。請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

#include<string.h>

voidmain()

{

chars1[20]="asdf",s2[20]="ghjk";

inti,j;

i=6,j=0;

while(s2[j]!='\0')

7

s1[i]='0';

puts(s1);

}(答案:6、strlen(s1)7、s1[i++]=s2[j])四、程序設(shè)計(jì)題(本大題共3小題,每小題15分,共45分。請(qǐng)?jiān)诖痤}紙相應(yīng)題號(hào)的位置上作答。)1.函數(shù)doublefac(intn)的功能是求n!,在主函數(shù)中輸入一個(gè)整數(shù),并調(diào)用函數(shù)fac(intn)求這個(gè)整數(shù)的階乘。答案解析:#include<stdio.h>

doublefac(intn)

{

doubleresult;

if(n==1)result=1;

elseresult=n*fac(n-1);

returnresult;

}

voidmain()

{

intn;

printf("請(qǐng)輸入一個(gè)整數(shù):");

scanf("%d",&n);

printf("%d!=%f\n",n,fac(n));

}2.輸入一個(gè)字符,如果是大寫字母,輸出其對(duì)應(yīng)的小寫字母;如果是小寫字母,輸出其對(duì)應(yīng)的大寫字母。否則原樣輸出。答案解析:#include<stdio.h>

voidmain()

{

charch;

ch=getchar();

if(ch>='A'&&ch<='Z')ch+=32;

else

if(ch>='a'&&ch<='z')ch-=32;

elsech=ch;

putchar(ch);

putchar('\n');

}3.有一分?jǐn)?shù)序列:4/3,7/4,11/7,18/11,29/18,47/29……求出這個(gè)數(shù)列的前18項(xiàng)之和。答案解析:#include<stdio.h>

voidmain

{

floata=4,b=3,t,sum=0;

inti;

for(i=1;i<=18;i++)

{

sum=sum+a/b;

t=a;

a=a+b;

b=t;

}

printf("%f",sum);

}《微機(jī)原理與接口(含匯編語(yǔ)言)》(考試時(shí)間:75分鐘)(總分150分)一、單項(xiàng)選擇題(本大題共15小題,每小題3分,共45分。在每小題給出的四個(gè)備選項(xiàng)中,選出一個(gè)正確的答案,并將所選項(xiàng)前的字母填寫在答題紙的相應(yīng)位置上。)1.8253定時(shí)/計(jì)數(shù)器中,某計(jì)數(shù)據(jù)的最大計(jì)數(shù)初值是()。

A.65536B.7FFFHC.0000HD.FFFFH(正確答案)2.在CPU中跟蹤指令后繼地址的寄存器是。

A.主存地址寄存器B.指令寄存器C.程序計(jì)數(shù)器(正確答案)D.狀態(tài)條件寄存器3.在I/O接口的各類端口中,必須具有三態(tài)功能的端口是。

A.數(shù)據(jù)輸入緩沖器和狀態(tài)寄存器(正確答案)B.控制寄存器和狀態(tài)寄存器C.數(shù)據(jù)輸入緩沖器和控制寄存器D.數(shù)據(jù)輸出緩沖器的控制寄存器4.下列關(guān)于微處理器的說法不正確的是。

A.程序計(jì)數(shù)器PC是控制程序有序執(zhí)行的關(guān)鍵性部件。B.堆棧的進(jìn)出原則是先進(jìn)后出,而指令隊(duì)列的進(jìn)出原則則是先進(jìn)先出。C.輸入/輸出指令是任何微處理器必有的指令(正確答案)D.CPU由運(yùn)算器和控制器組成5.3片8259級(jí)聯(lián)可提供個(gè)中斷類型號(hào)。

A.22(正確答案)B.24C.16D.186.物理地址12345H可能的段地址有。

A.2345HB.12345HC.12340HD.1234H(正確答案)7.一個(gè)端口可有個(gè)I/O地址。A.1(正確答案)B.2C.256D.不一定8.在匯編語(yǔ)言程序中,對(duì)END語(yǔ)句的敘述正確的是。

A.END語(yǔ)句是一可執(zhí)行語(yǔ)句B.END語(yǔ)句表示程序執(zhí)行到此結(jié)束C.END語(yǔ)句表示源程序到此結(jié)束(正確答案)D.END語(yǔ)句在匯編后要產(chǎn)生機(jī)器碼9.設(shè)數(shù)據(jù)段中已有:

DA1DB12H,34H

DA2DW56H,78H

下面有語(yǔ)法錯(cuò)誤的句是。A.ADR1DWDA1B.MOVDA1+1,AX(正確答案)C.MOVBYTEPTRDA2+1,ALD.MOVWORDPTRDA1+1,AX10.CPU可屏蔽中斷標(biāo)志是。

A.DFB.AFC.IF(正確答案)D.SF11.8255芯片有個(gè)端口地址。

A.1B.2C.3D.4(正確答案)12.在串操作指令前使用重復(fù)前綴指令REPE,終止串的重復(fù)操作條件是。

A.CX=0且ZF=0B.CX=0且ZF=1C.CX=0或ZF=0(正確答案)D.CX=0或ZF=113.8259工作在8086/8088模式,則初始化命令字ICW2的功能是設(shè)置。

A.中斷向量地址的高8位B.中斷向量地址的高5位C.中斷向量的高5位D.中斷向量號(hào)的高5位(正確答案)14.下列指令中,含有非法操作數(shù)尋址的指令是。

A.MOVEAX,10HB.INEAX,DXC.MOV[EBX][EBP],10HD.MOVEBX,OFFSET[EBX][ESI](正確答案)15.若已知(SP)=2000H,(AX)=0020H,則執(zhí)行指令PUSHAX后,(SP)和((SS):(SP))的值分別為。A.2002H,00HB.1FFEH,00HC.1FFEH,20H(正確答案)D.2002H,20H二、填空題(本大題共6小題,每空2分,共30分。請(qǐng)將答案填寫在答題紙的相應(yīng)位置上。)1.十進(jìn)制數(shù)61.5轉(zhuǎn)換為二進(jìn)制是________________,轉(zhuǎn)換為十六進(jìn)制是_______。(答案:1.101011.0143.25。)2.計(jì)算機(jī)CPU與輸入/輸出設(shè)備之間交換的信息包括_______、_______和_______三類信號(hào)。(答案:數(shù)據(jù)、控制、狀態(tài)。)3.8088的ALE引腳的作用是_______。(答案:鎖存復(fù)用線上的地址)4._______RAM是利用觸發(fā)器電路的兩個(gè)穩(wěn)定狀態(tài)來表示信息“0”和“1”,故在不斷開電源時(shí),可以長(zhǎng)久保持信息;________RAM利用電容器上存儲(chǔ)的電荷來表示信息“0”和“1”,因此需要不斷進(jìn)行刷新。(答案:4.靜態(tài),動(dòng)態(tài)。)5.8086CPU中斷系統(tǒng)有____種中斷類型碼,中斷類型碼與對(duì)應(yīng)的矢量地址換算公式為__________。(答案:256,中斷類型碼X4)6.已知兩數(shù)5678H和0DCBAH相加,試寫出各標(biāo)志位的置位情況和相加結(jié)果(用豎式計(jì)算)。

OF:SF:AF:CF:結(jié)果:。(答案:00113332H)三、簡(jiǎn)答題(本大題共3小題,每小題10分,共30分。請(qǐng)?jiān)诖痤}紙的相應(yīng)位置上作答。)1.總線周期的含義是什么?8086/8088的基本總線周期由幾個(gè)時(shí)鐘組成?如果一個(gè)CPU的時(shí)鐘頻率為24MHz,那么,它的一個(gè)時(shí)鐘周期為多少?一個(gè)基本總線周期為多少?答案解析:1.總線周期的含義是計(jì)算機(jī)執(zhí)行一條訪問內(nèi)存或端口的機(jī)器指令的時(shí)間;8086/8088的基本總線周期由4個(gè)時(shí)鐘周期組成;CPU的時(shí)鐘頻率為24MHz,它的一個(gè)時(shí)鐘周期為41.5ns,一個(gè)基本總線周期為166ns;2.8086系統(tǒng)中,當(dāng)對(duì)SS和SP寄存器的值進(jìn)行修改時(shí),有什么特殊規(guī)定?為什么這樣做?答案解析:2.凡是遇到給SS寄存器賦值的傳送指令時(shí),系統(tǒng)會(huì)自動(dòng)禁止外部中斷,等到本條指令和下條指令執(zhí)行之后,又自動(dòng)恢復(fù)對(duì)SS寄存器賦值前的中斷開放情況。這樣做是為了允許程序員連續(xù)用兩條指令分別對(duì)SS和SP寄存器賦值,同時(shí)又防止堆??臻g變動(dòng)過程中出現(xiàn)中斷。3.8086CPU的起始取指的地址是多少?怎樣形成這個(gè)地址?該地址對(duì)系統(tǒng)設(shè)計(jì)有什么影響?答案解析:3.8086CPU的起始取指的地址是FFFF0H.這個(gè)地址的形成過程為CPU被啟動(dòng)時(shí)指令指針寄存器被清除,而代碼段寄存器CS被設(shè)為FFFFH.地址FFFF0H單元開始的幾個(gè)單元中放一條無條件轉(zhuǎn)移指令,轉(zhuǎn)到一特殊的程序中.這個(gè)程序用來實(shí)現(xiàn)系統(tǒng)初使化、引導(dǎo)監(jiān)控程序或者引導(dǎo)操作系統(tǒng)等功能,這樣的程序叫引導(dǎo)和裝配程序.四、應(yīng)用題(本大題共3小題,每小題15分,共45分。請(qǐng)?jiān)诖痤}紙的相應(yīng)位置上作答。)1.若DATA1與DATA2都是內(nèi)存單元的地址,編寫一段程序?qū)崿F(xiàn)將DATA1單元開始的100個(gè)數(shù)傳送到DATA2開始的存

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論