![2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第1頁(yè)](http://file4.renrendoc.com/view/9b1d8b54ee6e50bd33425bd0b545e893/9b1d8b54ee6e50bd33425bd0b545e8931.gif)
![2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第2頁(yè)](http://file4.renrendoc.com/view/9b1d8b54ee6e50bd33425bd0b545e893/9b1d8b54ee6e50bd33425bd0b545e8932.gif)
![2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第3頁(yè)](http://file4.renrendoc.com/view/9b1d8b54ee6e50bd33425bd0b545e893/9b1d8b54ee6e50bd33425bd0b545e8933.gif)
![2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第4頁(yè)](http://file4.renrendoc.com/view/9b1d8b54ee6e50bd33425bd0b545e893/9b1d8b54ee6e50bd33425bd0b545e8934.gif)
![2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第5頁(yè)](http://file4.renrendoc.com/view/9b1d8b54ee6e50bd33425bd0b545e893/9b1d8b54ee6e50bd33425bd0b545e8935.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有以下程序:
#include<stdio.h>
voidfunc(intn)
{staticintnum=1);
num=num+n;printf("%d",num);
}
main()
{funo(3);func(4);printf("n");}
程序運(yùn)行后的輸出結(jié)果是()。
A.48B.34C.35D.45
2.檢查軟件產(chǎn)品是否符合需求定義的過程稱為______。
A.確認(rèn)測(cè)試B.集成測(cè)試C.驗(yàn)證測(cè)試D.驗(yàn)收測(cè)試
3.循環(huán)隊(duì)列存儲(chǔ)在數(shù)組A[0..m]中,則入隊(duì)時(shí)的操作為()。
A.rear=rear+1
B.rear=(rear+1)mod(m-1)
C.rear=(rear+1)modm
D.rear=(rear+1)mod(m+1)
4.以下說法正確的是()。
A.函數(shù)可以返回另一個(gè)函數(shù)的整個(gè)函數(shù)體
B.函數(shù)返回值只能是基本數(shù)據(jù)類型的數(shù)值或指針
C.函數(shù)返回值可以是一個(gè)指向函數(shù)的指針
D.函數(shù)返回值可以是一個(gè)數(shù)組,同時(shí)返回多個(gè)值
5.以下程序的輸出結(jié)果是______。
A.54321
B.12345
C.12345
D.543210main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d"",k);}
6.若變量已正確定義,有下列程序段:inta=3,b=5,c=7;if(a>B)a=b;c=a;if(c!=A)c=b;printf("%d,%d,%d\n",a,b,C);其輸出結(jié)果是()。A.程序段有語(yǔ)法錯(cuò)B.3,5,3C.3,5,5D.3,5,7
7.有以下程序:#include<stdio.h>#include<stdio.h>main(){charc[6];inti=0;for(;j<6;c[i]=getchar(),i++);for(i=0;i<6;i++)putchar(c[i]);printf("\n");}如果從鍵盤上輸入:ab<回車>c<回車>def<回車>則輸出結(jié)果為______。
A.abcdefB.abcdC.abcdD.abcdef
8.程序運(yùn)行后的輸出結(jié)果是()。A.10B.30C.0D.64
9.對(duì)線性表進(jìn)行二分法檢索,其前提條件是()。
A.線性表以順序方式存儲(chǔ),并按關(guān)鍵碼值排好序
B.線性表以順序方式存儲(chǔ),并按關(guān)鍵碼的檢索頻率排好序
C.線性表以鏈?zhǔn)椒绞酱鎯?chǔ),并按關(guān)鍵碼值排好序
D.線性表以鏈?zhǔn)椒绞酱鎯?chǔ),并按關(guān)鍵碼的檢索頻率排好序
10.在循環(huán)隊(duì)列中,若front與rear分別表示對(duì)頭元素和隊(duì)尾元素的位置,則判斷循環(huán)隊(duì)列空的條件是()。
A.front==rear+1B.rear==front+1C.front==rearD.front==0
11.有以下程序
#include<stdio.h>
voidfun(char*t,char*s)
{while(*t!=0)t++;
while((*t++=*s++)!=0);
}
main()
{charss[10]="acc",aa[10]="bbxxyy";
fun(ss,aa);printf("%s,%s\n",ss,aa);
}
程序的運(yùn)行結(jié)果是
A.accxyy,bbxxyy
B.acc,bbxxyy
C.accxxyy,bbxxyy
D.accbbxxyy,bbxxyy
12.
13.有以下程序main()inta[10]={1,2,3,4,5,6,7,8,9,10},*p=.&a[3],*q=p+2;printf("%d\n",*p+*q);程序運(yùn)行后輸出結(jié)查是
A.16B.10C.8D.6
14.在下列排序算法中,在待排序的數(shù)據(jù)表已經(jīng)為有序時(shí),花費(fèi)時(shí)間反而最多的是()
A.希爾排序B.堆排序C.冒泡排序D.快速排序
15.下面程序的輸出結(jié)果是()。
#include<stdio.h>
main()
{inta[4][5]={1,2,4,-4,5,-9,3,6,-3,2,7,8,4};
inti,j,n;
n=9;
i=n/5;
j=n-i*5-1;
printf("a[%d][%d]=%d\n",i,j,a[i][j]);
}
執(zhí)行后輸出結(jié)果是()。A.A.a[1][3]=6
B.a[1][3]=-3
C.a[1][3]=2
D.不確定
16.若變量a、i已正確定義,且i已正確賦值,合法的語(yǔ)句是()。
A.a==lB.++iC.a=a++=5D.a=int(i)
17.面向?qū)ο蟮脑O(shè)計(jì)方法與傳統(tǒng)的面向過程的方法有本質(zhì)不同,它的基本原理是()。
A.模擬現(xiàn)實(shí)世界中不同事物之間的聯(lián)系
B.強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而不強(qiáng)調(diào)概念
C.使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題
D.不強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而強(qiáng)調(diào)概念
18.有以下程序#include<stdio.h>intf(intx,inty){return()y-x)*x);}main(){inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c));printf(“%d\n”,d);}程序運(yùn)行后的輸出結(jié)果是A.10B.9C.8D.7
19.設(shè)有以下語(yǔ)句
charchl,ch2;scanf("%c%C",&chl,&ch2);
若要為變量chl和ch2分別輸入字符A和B,正確的輸入形式應(yīng)該是()。
A.A和B之間用逗號(hào)間隔
B.A和B之間不能有任何間隔符
C.A和B之間可以用回車間隔
D.A和B之間用空格間隔
20.數(shù)據(jù)庫(kù)是______的集合,它具有統(tǒng)一的結(jié)構(gòu)形式并存放于統(tǒng)一的存儲(chǔ)介質(zhì)內(nèi),可被各個(gè)應(yīng)用程序所共享。
A.視圖B.消息C.數(shù)據(jù)D.關(guān)系
二、2.填空題(20題)21.若有如下結(jié)構(gòu)體說明:
structSTRU
{inta,b;charc:doubled;
stmctSTRU*p1,*p2;
};
請(qǐng)?zhí)羁?,以完成?duì)t數(shù)組的定義,t數(shù)組的每個(gè)元素為該結(jié)構(gòu)體類型?!尽縯[20]
22.下面的函數(shù)strcat(str1,str2)實(shí)現(xiàn)將字符串str2拼接到字符串str1后面的功能。請(qǐng)?zhí)羁帐怪暾?/p>
char*strcat(str1,str2)
char*str1,*str2;
{char*t=str1;
while(【】)str1++;
while(【】);
return(t);}
23.軟件的【】設(shè)計(jì)又稱為總體結(jié)構(gòu)設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。
24.下列程序的輸出結(jié)果是16.00,請(qǐng)?zhí)羁眨?/p>
main()
{
inta=9,b=2;
floatx=【】,y=1.1,z;
z=a/2+b*x/y+1/2;
printf("%5.2f\n",z);
}
25.若下面程序的輸出結(jié)果是4,請(qǐng)?zhí)羁铡?/p>
main()
{inti,j,k;
k=0;i=j=【】;
k+=-(i+j);printf("%d\n",k);
}
26.以下程序用來輸出結(jié)構(gòu)體變量ex所占存儲(chǔ)單元的字節(jié)數(shù):
structst
{charname[20];doublescore;};
main()
{structstex;
printf("exsize:%d\n",sizeof(【】));
}
27.下面程序的輸出是【】。
main()
{inta[]={2,4,6},*ptr=&a[0],x=8,y,z;
for(y=0;y<3;y++)z=(*(ptr+y)<x)?*(prt+y):x;
printf("%d\n",z);
}
28.數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和______兩大類。
29.軟件定義時(shí)期主要包括______和需求分析兩個(gè)階段。
30.以下程序的輸出結(jié)果是【】。
main()
{
intp[7]={11,13,14,15,16,17,18};
inti=0,j=0;
while(i<7&&p[i]%2==1)j+=p[i++];
printf("%d\n",j);
}
31.設(shè)y為血型變量,請(qǐng)寫出描述“y是偶數(shù)”的表達(dá)式______。
32.數(shù)據(jù)的獨(dú)立性分為邏輯獨(dú)立性與物理獨(dú)立性。當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,這稱為______。
33.若a是int型變量,則表達(dá)式(a=2*3,a*2),a+6的值為______。
34.在樹型結(jié)構(gòu)中,根結(jié)點(diǎn)沒有【】結(jié)點(diǎn),其余每個(gè)結(jié)點(diǎn)有且僅有【】個(gè)前驅(qū)結(jié)點(diǎn);葉結(jié)點(diǎn)沒有后繼結(jié)點(diǎn),其余每個(gè)結(jié)點(diǎn)的【】結(jié)點(diǎn)數(shù)不受限制。
35.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管可管理多個(gè)項(xiàng)目,則實(shí)體"項(xiàng)目主管"與實(shí)體"項(xiàng)目"的聯(lián)系屬于【】的聯(lián)系。
36.為了列出當(dāng)前盤當(dāng)前目錄中所有第三個(gè)字符為C的文件名的有關(guān)信息,應(yīng)該使用命令【】。
37.下列軟件系統(tǒng)結(jié)構(gòu)圖的寬度為[]。
38.若有語(yǔ)句
inti=-19,j=i%4;
printf("%d\n",j),
則輸出的結(jié)果是______。
39.下面程序的功能是:輸出100以內(nèi)能被4整除且個(gè)位數(shù)為8的所有整數(shù),請(qǐng)?zhí)羁?。main(){inti,j;for(i=0=();i++){j=i*10+8;if(j%4!=0)continue;printf("%d",j);}}
40.寫出下列程序的輸出結(jié)果______。
main()
{intn=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
三、1.選擇題(20題)41.數(shù)據(jù)字典是對(duì)數(shù)據(jù)定義信息的集合,它所定義的對(duì)象都包含于______。
A.程序框圖B.軟件結(jié)構(gòu)C.數(shù)據(jù)流圖D.方框圖
42.以下程序試圖把從終端輸入的字符輸出到名為abc.txt的文件中,直到從終端讀入字符#時(shí)結(jié)束輸入和輸出操作,但程序有錯(cuò)。#include<stdio.h>main(){FILE*fout;charch;fout=fopen('abc.txt','W');ch=fgetc(stdin);while(ch!='#'){fputc(ch,fout);ch=fgetc(stdin);}fclose(fout);}出錯(cuò)的原因是()。
A.函數(shù)fopen調(diào)用形式錯(cuò)誤B.輸入文件沒有關(guān)閉C.函數(shù)fgetc調(diào)用形式錯(cuò)誤D.文件指針stdin沒有定義
43.下列程序執(zhí)行的輸出結(jié)果是()。#include<stdio.h>main(){chara[2][4];strcpy(a,"are");strcpy(a[1],"you");a[0][3]='&';printf("%s\n",a);}
A.are&youB.youC.areD.&
44.下列敘述中不正確的是
A.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題
B.數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
C.數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)一個(gè)能滿足用戶要求,性能良好的數(shù)據(jù)庫(kù)
D.數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),但是需要操作系統(tǒng)的支持
45.可在C程序中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是A.and2007
B.Date_y-m-d
C.HiDr.Tom
D.caseBigl
46.下列語(yǔ)句執(zhí)行后的結(jié)果是()y=5;p=&y;x=*p++;
A.x=5,y=5B.x=5,y=6C.x=6,y=5D.x=6,y=6
47.C語(yǔ)言中用于結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
B.if、switch、break
C.for、while、do-while
D.if、for、continue
48.設(shè)x、y和z是int型變量,且x=4,y=6,z=8,則下列表達(dá)式中值為0的是()。
A.x&&y
B.x<=y
C.x||y+z&&y-z
D.!((x<y)&&!z||1)
49.以下敘述不正確的是
A.一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成
B.一個(gè)C源程序必須包含一個(gè)main函數(shù)
C.C程序的基本組成單位是函數(shù)
D.在C程序中,注釋說明只能位于一條語(yǔ)句的后面
50.判斷字符型變量chr為小寫字母的表達(dá)式是______。
A.'a'<=chr<='z'
B.(chr>='a')||(chr<='z')
C.(chr>=A)&&(chr<=z)
D.(chr>='a')&&(chr<='z')
51.若有以下結(jié)構(gòu)體定義,則______是正確的引用或定義。structexample{intx;inty;}v1;
A.example.x=10
B.examplev2.x=10
C.example.x=10
D.structexamplev2={10};
52.下面程序的輸出是______。typedefunion{longx[2];inty[4];charz[8];}MYTYPE;MYTYPEthem;mare(){printf("%d\n",sizeof(them));}
A.32B.16C.8D.24
53.若有如下程序;main(){intm=-i;printf("%d,%u,%o,%X",m,m,m,m);}則程序運(yùn)行后的輸出結(jié)果是()。
A.-1,65535,177777,ffff
B.-1,-1,177777,fffe
C.-1,1,177777,ffff
D.-1,65535,177776,fffe
54.下面各選項(xiàng)中,均是C語(yǔ)言合法標(biāo)識(shí)符的選項(xiàng)組是
A.33weautoB._23me_3ewC._433e_elseD.ER-DF32
55.以下數(shù)組定義中錯(cuò)誤的是()。
A.intx[][3]={0};
B.intx[2][3]={{1,2},{3,4},{5,6}};
C.intx[][3]={{1,2,3},{4,5,6}};
D.intx[2][3]={1,2,3,4,5,6};
56.有以下程序段charch;intk;ch='a';k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII十進(jìn)制代碼為97,則執(zhí)行上述程序段后輸出結(jié)果是()。A.因變量類型與格式描述符的類型不匹配輸出無(wú)定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值
C.a,97,12k=12
D.a,97,k=12
57.有下列程序:main(){inty=20;do{y--;}while(--y);printf("%d\n",y--);}當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。
A.-1B.1C.4D.0
58.下面程序段中c的二進(jìn)制值是______。chara=3,b=6,c;c=a^b<<1;
A.1011B.1111C.11110D.11100
59.下列程序的輸出結(jié)果是______。main(){char*s="12134211";intv[4]={0,0,0,0},k,i;for(k=0;s[k];k++){switch(s[k]){case'1':i=0;case'2':i=1;case'3':i=2;case'4':i=3;}vii]++;}for(k=O;k<4;k++)printf("%d",v[k]);}
A.4211B.0008C.4678D.8888
60.有以下程序:#include<stdio.h>main(){intc;while((c=getchar())!='\n')switch(c-'2'){case1:putchar(c+4);case2:putchar(c+4);break;case3:putchar(c+4);case4:putchar(c+4);break;}printf("\n");}輸入以下數(shù)據(jù),<CR>代表一個(gè)回車符,2743<CR>程序的輸出結(jié)果是()。
A.877B.966C.778D.766
四、選擇題(20題)61.
有下列程序段:
intn,t=1,S=0;
scanf("%d",&n);
do{s=s+t;t=t-2;while(t!=n);
為使此程序段不陷入循環(huán),從鍵盤輸入的數(shù)據(jù)應(yīng)該是()。
A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)
62.以下不合法的數(shù)值常量是()。
A.8.0E0.5B.lelC.0llD.0xabcd
63.
64.若函數(shù)調(diào)用時(shí)的實(shí)參為變量時(shí),以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。
A.函數(shù)的形參和實(shí)參分別占用不同的存儲(chǔ)單元
B.形參只是形式上的存在,不占用具體存儲(chǔ)單元
C.同名的實(shí)參和形參占同一存儲(chǔ)單元
D.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元
65.設(shè)intx=7,則~x的值是()。
A.-8B.7C.-1D.1
66.
設(shè)有如下定義:
intarr[]={6,7,8,9,10);
int*ptr:
ptr=arr;
*(ptr2)=2;
printf("%d,%d\n",*ptr,*(ptr2)):
則下列程序段的輸出結(jié)果為()。
A.8,10B.6,8C.7,9D.6,2
67.
68.已知
則以下敘述正確的是()。
A.循環(huán)控制表達(dá)式不合法B.循環(huán)控制表達(dá)式的值為0C.循環(huán)控制表達(dá)式的值為lD.以上說法都不對(duì)
69.以下敘述中錯(cuò)誤的是()。
A.C語(yǔ)言編寫的函數(shù)源程序,其文件名后綴可以是C
B.C語(yǔ)言編寫的函數(shù)都可以作為一個(gè)獨(dú)立的源程序文件
C.C語(yǔ)言編寫的每個(gè)函數(shù)都可以進(jìn)行獨(dú)立的編譯并執(zhí)行
D.一個(gè)C語(yǔ)言程序只能有一個(gè)主函數(shù)
70.設(shè)有以下說明語(yǔ)句:
則下面敘述中正確的是()。
A.PER是結(jié)構(gòu)體變量名
B.PER是結(jié)構(gòu)體類型名
C.typedefstruct是結(jié)構(gòu)體類型
D.struct是結(jié)構(gòu)體類型名
71.下列說法不正確的是
A.?dāng)?shù)據(jù)庫(kù)減少了數(shù)據(jù)冗余B.?dāng)?shù)據(jù)庫(kù)實(shí)現(xiàn)了數(shù)據(jù)的共享
C.?dāng)?shù)據(jù)庫(kù)避免了一切數(shù)據(jù)的重復(fù)D.?dāng)?shù)據(jù)庫(kù)具有較高的數(shù)據(jù)獨(dú)立性
72.
有下列程序:
#include<stdio.h>
main
{intx=0;
inty=0;
while(x<7&&++v)
{y--;
x++;}
printf("%d,%d",y,x);
}
程序的輸出結(jié)果是()。
A.0,7B.7,7C.0,6D.1,6
73.
以下程序的輸出結(jié)果是()。
main
{intx=0.5;charz=a;
printf("%d\n",(x&1)&&(z<2));}
A.0B.1C.2D.3
74.以下關(guān)于return語(yǔ)句的敘述中正確的是()。
A.一個(gè)自定義函數(shù)中必須有一條return語(yǔ)句
B.一個(gè)白定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語(yǔ)句
C.定義成void類型的函數(shù)中可以有帶返回值的return語(yǔ)句
D.沒有return語(yǔ)句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處
75.
76.在軟件設(shè)計(jì)中,不屬于過程設(shè)計(jì)工具的是()。
A.PDL(過程設(shè)計(jì)語(yǔ)言)B.PAD圖C.N-S圖D.DFD圖
77.右兩個(gè)關(guān)系R和S如下:
則由關(guān)系R得到關(guān)系S的操作是()。A.自然連接B.并C.選擇D.投影
78.
有下列程序:
intfun(intn)
{if(n==1)}return1;
else
return(n+fun(n-1));
}
main
{intx;
scanf("%d",&x);x=fun(x);printf("%d\n",x);
)
執(zhí)行程序時(shí),給變量x輸入10,程序的輸出結(jié)果是()。
A.55B.54C.65D.45
79.
80.有以下程序
五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun的功能是:將tt所指字符串中的小寫字母全部改為對(duì)應(yīng)的大寫字母,其他字符不變。
例如,若輸入“Ab,cD”,則輸出“AB,CD”。
請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。
注意:部分源程序在文件MODIl.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫函數(shù)proc(),其功能是:計(jì)算并輸出下列多項(xiàng)式值。S=(1+1/2)+(1/3+1/4)+…+(1/(2n1)+1/2n)例如,若主函數(shù)從鍵盤給n輸入100后,則輸出為s=5.878031。n的值要求大于1但不大于100。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語(yǔ)句。試題程序:
參考答案
1.A\n第一調(diào)用func函數(shù)時(shí)輸出4,第二次調(diào)用func函數(shù)時(shí)num的值并不會(huì)釋放,仍然是上次修改后的值4,第二次調(diào)用結(jié)果為8,所以輸出結(jié)果是48。
\n
2.A本題主要考查軟件測(cè)試的基本知識(shí)。軟件測(cè)試的步驟可分為單元測(cè)試(模塊測(cè)試)、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試。
(1)單元測(cè)試是針對(duì)每個(gè)模塊進(jìn)行的測(cè)試,它可從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測(cè)試用例,多個(gè)模塊可以平行、對(duì)立地測(cè)試。單元測(cè)試主要用于發(fā)現(xiàn)詳細(xì)設(shè)計(jì)和編程時(shí)犯下的錯(cuò)誤。單元測(cè)試多采用白盒測(cè)試,輔之以黑盒測(cè)試。
(2)集成測(cè)試是在單元測(cè)試的基礎(chǔ)上,根據(jù)模塊結(jié)構(gòu)圖將各個(gè)模塊連接起來,必須精心計(jì)劃,應(yīng)提交集成測(cè)試計(jì)劃、集成測(cè)試規(guī)格說明和集成測(cè)試分析報(bào)告。主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。集成測(cè)試可以發(fā)現(xiàn)概要設(shè)計(jì)時(shí)犯的錯(cuò)誤。
(3)確認(rèn)測(cè)試用于驗(yàn)證軟件的功能和性能及其他特性是否與用戶的要求一致。確認(rèn)測(cè)試主要用于發(fā)現(xiàn)需求分析時(shí)犯下的錯(cuò)誤,一般使用黑盒法測(cè)試,以表明軟件符合需求說明書的要求,應(yīng)該仔細(xì)設(shè)計(jì)測(cè)試用例和測(cè)試過程。確認(rèn)測(cè)試必須有用戶參加,或以用戶為主,用戶應(yīng)參與設(shè)計(jì)測(cè)試用例,通常情況下,主要使用生產(chǎn)中的實(shí)際數(shù)據(jù)進(jìn)行測(cè)試,測(cè)試數(shù)據(jù)通過用戶接口輸入。
(4)系統(tǒng)測(cè)試是將已經(jīng)通過確認(rèn)測(cè)試的軟件,作為整個(gè)計(jì)算機(jī)系統(tǒng)的元素與計(jì)算機(jī)硬件、外設(shè)和網(wǎng)絡(luò)等其他因素結(jié)合在一起,進(jìn)行一系列的組裝測(cè)試和確認(rèn)測(cè)試。系統(tǒng)測(cè)試的目的是通過與系統(tǒng)的需求定義做比較,發(fā)現(xiàn)軟件與系統(tǒng)的定義不符合的地方。系統(tǒng)測(cè)試可以發(fā)現(xiàn)問題定義時(shí)犯下的錯(cuò)誤。
3.D
4.C函數(shù)的返回值是通過return語(yǔ)句返回的,返回值是一個(gè)表達(dá)式,不限于基本數(shù)據(jù)類型或指針,也可以是結(jié)構(gòu)體類型等,但不能是數(shù)組,選項(xiàng)A、B、D錯(cuò)誤;函數(shù)的返回值可以是一個(gè)指向函數(shù)的指針,選項(xiàng)C正確。故本題答案為C選項(xiàng)。
5.B
6.B解析:本題考查的是程序結(jié)構(gòu)設(shè)計(jì)中if語(yǔ)句的應(yīng)用,當(dāng)if判斷條件成立時(shí)就執(zhí)行其后的相關(guān)語(yǔ)句,否則不執(zhí)行,本題中第一個(gè)if條件不成立,故不執(zhí)行“a=b”,接著執(zhí)行“c=a”,此時(shí)第二個(gè)if條件也不成立,故不執(zhí)行其后語(yǔ)句,最終c的值為3。
7.C解析:1.getchar():此函數(shù)的作用是從終端(或系統(tǒng)隱含指定的輸入設(shè)備)輸入一個(gè)字符。
2.putchar():此函數(shù)的作用是向終端輸出一個(gè)字符,也可以輸出控制字符。本題在輸入字符時(shí),ab和c后面的回車符分別賦給了c[2]和c[4],所以,正確答案為C。
8.D[解析]本題目中靜態(tài)局部變量x,在靜態(tài)存儲(chǔ)區(qū)內(nèi)分配存儲(chǔ)單元。在程序整個(gè)運(yùn)行期間都不釋放。所以第一次循環(huán)s的值為2.第二次循環(huán)中,返回的x的值為4.所以s的值為8.第三次循環(huán),返回的x的值為8.所以s的值為64.
9.A解析:對(duì)線性表進(jìn)行二分法檢索,要求線性表是按順序方式存儲(chǔ)的,并按關(guān)鍵碼值的大小排好序,而不是按關(guān)鍵碼的檢索頻率排序。
10.C
11.D解析:本題中fun函數(shù)實(shí)現(xiàn)了字符串函數(shù)strcat的功能,將字符串a(chǎn)a連接到字符串ss的末尾。調(diào)用fun函數(shù)時(shí),形參t和s分別指向了字符串ss和aa,然后通過一個(gè)while循環(huán)使t指向字符串ss的結(jié)束符的位置,第二個(gè)while循環(huán)將字符串a(chǎn)a中的字符(包括結(jié)束符'\\0')逐個(gè)復(fù)制到字符串ss的末尾處。
12.D
13.B解析:本題考查的是指針的簡(jiǎn)單應(yīng)用。題目中首先定義了一個(gè)int型數(shù)組a并初始化了,然后定義了兩個(gè)指針變量p和q,并分別初始化p為指向數(shù)組元素a[3]、q指向p后面的第2個(gè)元素即指向a[5]。所以最終輸出的值為a[3]+a[5]的值10。應(yīng)該選B。
14.D
15.Bn=9,i=n/5=1;j=9-1*5-1=3,輸出為a[1][3]=-3
16.B選項(xiàng)A為表達(dá)式,因此不正確,選項(xiàng)C中a++本身就是表達(dá)式,無(wú)需再賦值,選項(xiàng)D中,在強(qiáng)制類型轉(zhuǎn)換時(shí),類型名應(yīng)用括號(hào)括起來,故選擇8選項(xiàng)。
17.C\n面向?qū)ο蟮脑O(shè)計(jì)方法的基本原理是:使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題。它雖強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的概念而不強(qiáng)調(diào)算法,但是它鼓勵(lì)開發(fā)者在軟件開發(fā)的過程中從應(yīng)用領(lǐng)域的概念角度去思考。
\n
18.B
19.B\nscanf輸入函數(shù)中,格式控制J必須嚴(yán)格按照函數(shù)中的要求進(jìn)行輸入,在scanf('%c%c',&chl,&ch2)的格式控制語(yǔ)句中沒有任何字符進(jìn)行間隔,所以在輸入時(shí)也不能使用任何字符進(jìn)行間隔,所以答案選擇B。
\n
20.C解析:數(shù)據(jù)庫(kù)是數(shù)據(jù)的集合,其中的數(shù)據(jù)是按數(shù)據(jù)所提供的數(shù)據(jù)模式存放的,它能構(gòu)造復(fù)雜的數(shù)據(jù)結(jié)構(gòu),以建立數(shù)據(jù)之間的內(nèi)在聯(lián)系與復(fù)雜的關(guān)系-故答案為C。
21.structSTRUstructSTRU解析:結(jié)構(gòu)體類型是構(gòu)造數(shù)據(jù)類型,是用戶自己定義的一種類型。
結(jié)構(gòu)體類型的定義:
struct結(jié)構(gòu)體類型名
{
成員項(xiàng)表;
};
定義結(jié)構(gòu)體變量的的形式為:
struct結(jié)構(gòu)體類型名變量1,變量2,……
其中變量包括:一般變量、指針變量、數(shù)組變量等。
22.*str1或*str1!='\0'或*str1!=0或*str1!=NUL*str1++=*str2++或*str1++=*str2*str2++*str1或*str1!='\\0'或*str1!=0或*str1!=NUL\r\n*str1++=*str2++或*str1++=*str2,*str2++解析:函數(shù)strcat(str1,str2)實(shí)現(xiàn)將字符串str2連接到字符串str1后面,所以首先要找到字符串str1的串尾,根據(jù)C語(yǔ)言的語(yǔ)法規(guī)定,一個(gè)串的串尾—定是—個(gè)隱含字符“\\0”,而在程序中,對(duì)字符串中字符的訪問是通過兩個(gè)指針變量來完成的,因此要找到字符串str1的串尾,要判斷:str1是否為“\\0”,要找到字符串str2的串尾,要判斷*str2是否為“\\0”,程序中必須以使字符串中字符逐—順序體現(xiàn),所以在題中我們應(yīng)填寫“*str1”和“*str1++=*str2++”。
23.概要概要
解析:本題,已知結(jié)果z=16.00,即16.0=a/2+b*x/y+1/2,分別把a(bǔ)、b,代入,得到16.0=9/2+2*x/1.1+1/2。因?yàn)閍=9,a是整型,所以9/2的值在沒有進(jìn)行類型轉(zhuǎn)換時(shí),等于4,1/2同理,等于0。代入求一元一次方程,很容易就可以得出x=6.6。
25.-2-2解析:題目中定義并初始化了變量k為0,最后輸出k的值,要求為4,而在此期間只有k+=-(i+j);這條語(yǔ)句改變了k的值,即要求表達(dá)式-(i+j)的值為4。所以,答案應(yīng)該為-2,因?yàn)橹挥衖=j=-2時(shí),表達(dá)式-(i+j)的值才為4。
26.ex或structstex或structst解析:求一個(gè)變量所占的存儲(chǔ)單元數(shù),用sizeof函數(shù),參數(shù)為該變量名或其變量類型。
27.66解析:本題變量z的值應(yīng)為最后一次給它賦的值,且最后一次for循環(huán)使prt指向a[2]
28.非線性結(jié)構(gòu)非線性結(jié)構(gòu)
29.可行性研究可行性研究解析:軟件生命周期一般包括可行性研究與需求分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、交付使用及維護(hù)等,還可以將軟件生命周期分為三個(gè)階段:①軟件定義階段:可行性研究和需求分析;②軟件開發(fā)階段:設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試;③軟件運(yùn)行維護(hù)階段:交付使用和維護(hù)。
30.2424解析:本題程序定義了一維數(shù)組p,有七個(gè)數(shù)組元素,整型變量i,j初值分別為0,當(dāng)while的條件表達(dá)式(i<7&&p[i]%2==1)的值為真時(shí),執(zhí)行語(yǔ)句j+=p[i++];,如:當(dāng)i=0時(shí),i<7為真,p[i]%2=11%2=1,表達(dá)式(p[i]%2==1)的值為真,所以整個(gè)表達(dá)式(i<7&&p[i]%2==1)的值為真,執(zhí)行j=j+p[i++]=0+11=11,i=1;,依此類推可以得出答案24。
31.(y%2)==0(y%2)==0解析:因符合偶數(shù)的條件是對(duì)2取余為0,所以要描述y是偶數(shù)的表達(dá)式是(y%2)==0。
32.物理獨(dú)立性物理獨(dú)立性解析:數(shù)據(jù)的獨(dú)立性是指數(shù)據(jù)和應(yīng)用程序相互獨(dú)立,分為物理獨(dú)立性和邏輯獨(dú)立性。其中物理獨(dú)立性是指數(shù)據(jù)的物理結(jié)構(gòu)(包括存儲(chǔ)結(jié)構(gòu)、存取方式)改變時(shí),不需要修改應(yīng)用程序。而邏輯獨(dú)立性是指當(dāng)邏輯結(jié)構(gòu)改變時(shí),不需要修改應(yīng)用程序。
33.1212解析:本題考查逗號(hào)表達(dá)式的運(yùn)算規(guī)則。逗號(hào)表達(dá)式的基本格式為:“表達(dá)式1,表達(dá)式2,…”,其整個(gè)表達(dá)式的結(jié)果取最后一個(gè)子表達(dá)式的值。本題中首先計(jì)算逗號(hào)表達(dá)式中的第1個(gè)表達(dá)式a=2*3=6,然后計(jì)算第2個(gè)表達(dá)式a*2,這時(shí)整個(gè)表達(dá)式的值為12,但要注意,因?yàn)榈?個(gè)表達(dá)式并沒有給a賦值,因此a的值不變;接下來執(zhí)行最后一個(gè)表達(dá)式a+6=12,所以整個(gè)表達(dá)式最后的值為12。
34.前驅(qū)一后繼前驅(qū)\r\n一\r\n后繼
35.一對(duì)多(或1∶N)一對(duì)多(或1∶N)解析:兩個(gè)實(shí)體集間的聯(lián)系實(shí)際上是實(shí)體集間的函數(shù)關(guān)系,這種函數(shù)關(guān)系可以有3種,即一對(duì)一(1∶1)的聯(lián)系、一對(duì)多(1∶N)或多對(duì)一(N∶1)的聯(lián)系和多對(duì)多(N∶N)的聯(lián)系。
36.DIR??C*.*
37.33解析:軟件系統(tǒng)結(jié)構(gòu)圖的寬度:整體控制跨度(最大模塊數(shù)的層)的表示。
38.-3-3解析:本題考核的知識(shí)點(diǎn)是運(yùn)算符“%’的應(yīng)用。該運(yùn)算符是求兩個(gè)數(shù)相除的余數(shù),其結(jié)果與被除數(shù)的符號(hào)一致,本題中“-19%4”的值為“-3”,所以說空格處應(yīng)該填-3。
39.i<10i<10解析:分析程序:當(dāng)(i=0,1,2,…)時(shí),“j=i*10+8”語(yǔ)句的運(yùn)行結(jié)果是(8,18,28,…)個(gè)位數(shù)字為8的所有整數(shù);題中要求是100以內(nèi)的整數(shù),所以i<10;“if(j%4!=0)continue;”語(yǔ)句的功能是當(dāng)條件不能被4整除時(shí),繼續(xù)循環(huán)不執(zhí)行操作,直到能被4整除時(shí)輸出該數(shù),所以輸出的數(shù)滿足條件100以內(nèi)能被4整除且個(gè)位數(shù)為8。
40.333,3解析:本題在while(n++<=1)語(yǔ)句后,直接加了分號(hào),說明如果while()的條件為真時(shí),該循環(huán)什么都不做:n++是先取n的當(dāng)前值和1做比較,然后再將n加1。第一次循環(huán),n=0時(shí),循環(huán)條件n++=<1成立,執(zhí)行循環(huán),然后得到n=1。第二次循環(huán),n=1時(shí),循環(huán)條件n++=1<=1成立,執(zhí)行循環(huán),然后得到n=2。第三次循環(huán),n=2時(shí),循環(huán)條件n++=2<=1不成立,不執(zhí)行循環(huán),但在判斷循環(huán)條件時(shí)仍將n加1,得到n=3.退出循環(huán)后執(zhí)行printf語(yǔ)句,第二個(gè)printf語(yǔ)句輸出n++,是先輸出n的當(dāng)前值3,然后再將n加l,即程序結(jié)束后得到n=4,但輸出的是3。
41.C解析:數(shù)據(jù)字典是對(duì)數(shù)據(jù)定義的信息的集合,是對(duì)數(shù)據(jù)流圖中包含的所有元素定義的集合。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)流圖則數(shù)據(jù)字典難以發(fā)揮作用,沒有數(shù)據(jù)字典則數(shù)據(jù)流圖就不嚴(yán)格。
42.A解析:stdin是標(biāo)準(zhǔn)輸入設(shè)備的文件指針,不須定義直接可以使用,它隨系統(tǒng)的啟動(dòng)而打開,隨系統(tǒng)的關(guān)閉而關(guān)閉,fgetc()函數(shù)的作用是從某個(gè)文件中讀取一個(gè)數(shù)據(jù),其參數(shù)為要讀取文件的文件指針,所以本題中的調(diào)用形式是正確的。fopen()函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是打開的文件名,第二個(gè)參數(shù)是文件打開模式,兩個(gè)參數(shù)都是字符串,本例中“fout=fopen(\'abc.txt\',\'w\');”語(yǔ)句的fopen()函數(shù)參數(shù)是錯(cuò)誤的,應(yīng)該用雙引號(hào)'',正確的應(yīng)改為“fout=fopen('abc.txt','w');”。所以,A選項(xiàng)為所選。
43.A解析:strcpy(a,'are')中數(shù)組名a代表數(shù)組首地址的地址常量,該操作把a(bǔ)re復(fù)制到a中,a[0][3]=\'&\',且strcpy(a[1],'you')把you復(fù)制到a[1]中,故輸出a為“are&you”。
44.B解析:B選項(xiàng)錯(cuò)誤,原因是,數(shù)據(jù)庫(kù)應(yīng)該具有物理獨(dú)立性和邏輯獨(dú)立性,改變其一而不影響另一個(gè)。
45.A解析:在C語(yǔ)言中,合法標(biāo)識(shí)符的命名規(guī)則是:標(biāo)識(shí)符可以由字母、數(shù)字和下畫線3種字符組成,且第一個(gè)字符必須為字母或下畫線。C語(yǔ)言的標(biāo)識(shí)符可以分為關(guān)鍵字、預(yù)定義標(biāo)識(shí)符和用戶標(biāo)識(shí)符。選項(xiàng)B)和C)中的橫線以及點(diǎn)都不合法,選項(xiàng)D)中的case為C語(yǔ)言關(guān)鍵字。
46.A
47.A解析:結(jié)構(gòu)化程序由3種基本結(jié)構(gòu)組成,即順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)(包括for語(yǔ)句、while語(yǔ)句及do…\u3000while語(yǔ)句)和選擇結(jié)構(gòu)(包括if語(yǔ)句和switch語(yǔ)句)。
48.D解析:本題考查邏輯運(yùn)算符的使用。當(dāng)“&&”的兩個(gè)運(yùn)算對(duì)象都足邏輯1時(shí),表達(dá)式才返回值是1;當(dāng)“||”的兩個(gè)運(yùn)算對(duì)象至少有一個(gè)是邏輯1時(shí),表達(dá)式返回值是1。選項(xiàng)A)中,x和y都是邏輯1,所以返回值是1;選項(xiàng)B)中,x=4<=y(tǒng)=6為邏輯1,所以返回值是1;選項(xiàng)C)中,y+z的值等于14,非0,y-z的值為-2,非0,所以邏輯表達(dá)式4||14&&-2的值不為0;選項(xiàng)D)中,x<y為1,!z為0,1&&0為1,0||為1,因此,!1為0。
49.D解析:本題考查C語(yǔ)言的基本基礎(chǔ)知識(shí)。在C程序中,注釋用符號(hào)“/*”開始,而以符號(hào)“*/”結(jié)束。程序的注釋可以放在程序的任何位置。通常將注釋放在程序的開始,以說明本程序的功能;或者放在程序的某個(gè)語(yǔ)句后面,以對(duì)此語(yǔ)句的功能進(jìn)行描述。無(wú)論將注釋放有何處,在程序進(jìn)行編譯時(shí),編譯程序不會(huì)處理注釋的內(nèi)容;且注釋內(nèi)容也不會(huì)出現(xiàn)在目標(biāo)程序中。
50.B解析:程序段中定義x值為1,!x值為0,因此循環(huán)執(zhí)行的條件永遠(yuǎn)成立,該循環(huán)是死循環(huán)。
51.D解析:在定義結(jié)構(gòu)體變量時(shí),不能只用結(jié)構(gòu)體名example或關(guān)鍵字struct進(jìn)行定義,必需要用結(jié)構(gòu)體類型名structexample定義,在引用結(jié)構(gòu)體成員變量時(shí),需要用結(jié)構(gòu)體變量名進(jìn)行引用,所以選D。
52.C解析:sizeof(x)是一個(gè)標(biāo)準(zhǔn)C函數(shù),它的返回值是x型的數(shù)據(jù)結(jié)構(gòu)占用的內(nèi)存字節(jié)數(shù)。題目中定義了一個(gè)共用體,共用體變量在內(nèi)存中所占的長(zhǎng)度等于最長(zhǎng)的成員的長(zhǎng)度。
53.A解析:-1為帶符號(hào)的整型數(shù),在內(nèi)存中的存放形式為1111111111111111。按帶爺號(hào)的整型格式輸出仍為-1;按無(wú)帶符號(hào)的整數(shù)輸出為65535(將1111111111111111轉(zhuǎn)換為十進(jìn)制數(shù));按八進(jìn)制數(shù)輸出為177777(將1111111111111111轉(zhuǎn)換為八進(jìn)制數(shù),方法為由低位到高位,每三位一組,用一個(gè)八進(jìn)制數(shù)代替);按八進(jìn)制數(shù)輸出為ffff(將1111111111111111轉(zhuǎn)換為十六進(jìn)制數(shù),方法為由低位到高位,每四位一組,用一個(gè)十六進(jìn)制數(shù)代替)。
54.B解析:合法的標(biāo)識(shí)符是由字母、數(shù)字和下劃線組成,并且第一個(gè)字符必須為字母或下劃線,用戶定義的標(biāo)識(shí)符不能與關(guān)鍵字相同。選項(xiàng)A),數(shù)字不能為第一個(gè)字母,auto為關(guān)鍵字;選項(xiàng)C)中,也是數(shù)字不能為第一個(gè)字母,else為關(guān)鍵字;選項(xiàng)D)中負(fù)號(hào)不合法。
55.B解析:二維數(shù)組的初始化有以下幾種形式:①分行進(jìn)行初始化;②不分行進(jìn)行初始化;③部分?jǐn)?shù)組元素進(jìn)行初始化;④省略第一維的定義,不省略第二維的定義。選頃B)等號(hào)右邊分了3行,大于等號(hào)左邊數(shù)組的行數(shù)2。
56.D解析:在用基本輸出函數(shù)printf時(shí),格式說明與輸出項(xiàng)的個(gè)數(shù)應(yīng)該相同。如果格式說明的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),多余的輸出項(xiàng)不予輸出;如果格式說明個(gè)數(shù)多于輸出項(xiàng)個(gè)數(shù),則對(duì)于多余的格式項(xiàng)輸出不定值或0。
57.D解析:本題考查do…while循環(huán)。當(dāng)--y是0(即y是0)時(shí)結(jié)束循環(huán),輸出y--是先輸出y的值再將y的值減1。
58.B解析:C語(yǔ)言提供六種位運(yùn)算符,按優(yōu)先級(jí)由高到低的順序分別為:取反(~)、左移(<<)和右移(>>)、按位與(&)、按位異或(∧)、按位或(|)。所以表達(dá)式c=a^b<<1先運(yùn)算b<<1得二進(jìn)制值為00001100,再運(yùn)算a∧00001100,最后得二進(jìn)制值00001111。
59.B
60.A解析:本題通過一個(gè)while循環(huán)向鍵盤緩沖區(qū)讀取字符,直到讀到的字符是回車鍵結(jié)束循環(huán)。當(dāng)讀到的c為'2'時(shí),c-'2'為0,switch語(yǔ)句中沒有case0:所以沒有輸出,繼續(xù)讀下一個(gè);當(dāng)c為'7'時(shí),c-'2'=5,也沒有輸出;當(dāng)c為'4'時(shí),c-'2'=2,執(zhí)行case2:后面的語(yǔ)句輸出一個(gè)字符c+4='4'+4='8';當(dāng)c為'3'時(shí),c-'2'=1,執(zhí)行case1:后面的語(yǔ)句,連續(xù)輸出兩次c+4='3'+4='7'。故程序輸出結(jié)果是877,應(yīng)該選擇A。
61.D
\n本題主要考查do—while循環(huán),因?yàn)樽兞縯的初始值等于1,經(jīng)過第一次do-while循環(huán)后,執(zhí)行t=t-1這條語(yǔ)句一次,所以變量t的值為-1,判斷關(guān)系表達(dá)式t!=n是否成立,如果關(guān)系表達(dá)式成立,則執(zhí)行第二次循環(huán),如果關(guān)系表達(dá)式不成立,退出循環(huán)。由此可見,只要輸入變量n的值為負(fù)奇數(shù),則一定會(huì)使t==n成立,故退出do-while循環(huán)。
\n
62.AA選項(xiàng)中E后面的指數(shù)必須為整型數(shù)據(jù),所以A錯(cuò)誤。c選項(xiàng)中011表示的是八進(jìn)制常量,0xabcd表示的是十六進(jìn)制常量。
63.B
64.A本題重點(diǎn)考察的是函數(shù)的形參和實(shí)參。I在定義函數(shù)時(shí)函數(shù)名后面括弧中的變量名稱為“形式參數(shù)”l(簡(jiǎn)稱形參),在主調(diào)函數(shù)中調(diào)用一個(gè)函數(shù)時(shí),函數(shù)名后面括弧1中的參數(shù)(可以是—個(gè)表達(dá)式)稱為“實(shí)際參數(shù)”(簡(jiǎn)稱實(shí)參)。fC語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳回來給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。因此A選項(xiàng)正確。
65.A本題主要考查按位求反運(yùn)算和C語(yǔ)言正負(fù)數(shù)的表示,“O”代表正數(shù),“1”代表負(fù)數(shù);x=7的二進(jìn)制為00111,第一個(gè)0代表正數(shù),~x為11000,第一個(gè)l代表負(fù)數(shù),值為8。
66.D
\n程序中ptr指針指向數(shù)組art的首地址,*ptr=arr[0]=6,*(ptr2)=2,故選D。
\n
67.D
68.Cx=1是將X賦值為1,所以循環(huán)控制表達(dá)式的值為1。判斷x是否等于l時(shí),應(yīng)用x==1,注意”=”與”==”的用法。
69.C函數(shù)是指預(yù)先定義功能塊,其目的是提高程序的重用性。在C語(yǔ)言中函數(shù)的源程序,后綴名可以為C。C語(yǔ)言所編寫的函數(shù)都可以是一個(gè)獨(dú)立的源文件。一個(gè)C語(yǔ)言程序只能有一個(gè)主函數(shù)。C語(yǔ)言中編寫的函數(shù)不是每個(gè)都可以獨(dú)立地編譯和執(zhí)行的,因?yàn)镃語(yǔ)言中程序的開始為主函數(shù),如果程序中沒有主函數(shù)則無(wú)法進(jìn)行編譯和執(zhí)行。
70.B本題中,typedef聲明新的類型名PER來代替已有的類型名,PER代表上面指定的一個(gè)結(jié)構(gòu)體類型,此時(shí),也可以用PER來定義變量。
71.C數(shù)據(jù)庫(kù)是存儲(chǔ)在一起的相關(guān)數(shù)據(jù)的集合,具有以下特點(diǎn)。
(1)實(shí)現(xiàn)數(shù)據(jù)共享。數(shù)據(jù)共享包含所有的用戶可同時(shí)存取數(shù)據(jù)庫(kù)中的數(shù)據(jù),也包括用戶可以用各種方式通過接口使用數(shù)據(jù)庫(kù),并提供數(shù)據(jù)共享。
(2)減少數(shù)據(jù)的冗余度。同文件系統(tǒng)相比,由于數(shù)據(jù)庫(kù)實(shí)現(xiàn)了數(shù)據(jù)共享,從而避免了用戶各自建立應(yīng)用文件,減少了大量重復(fù)的數(shù)據(jù)和數(shù)據(jù)冗余,維護(hù)了數(shù)據(jù)的一致性。
(3)數(shù)據(jù)的獨(dú)立性。數(shù)據(jù)的獨(dú)立性包括數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)和應(yīng)用程序相互獨(dú)立,也包括數(shù)據(jù)物理結(jié)構(gòu)的變化不影響數(shù)據(jù)的邏輯結(jié)構(gòu)。
(4)數(shù)據(jù)實(shí)現(xiàn)集中控制。在文件管理方式中,數(shù)據(jù)處于一種分散的狀態(tài),不同的用戶或同一用戶在不同的處理中,其文件之間毫無(wú)關(guān)系。利用數(shù)據(jù)庫(kù)可對(duì)數(shù)據(jù)進(jìn)行集中控制和管理,并通過數(shù)據(jù)模型表示各種數(shù)據(jù)的組織以及數(shù)據(jù)間的聯(lián)系。
(5)數(shù)據(jù)一致性和可維護(hù)性,以確保數(shù)據(jù)的安全性和可靠性。主要包括:①安全性控制。以防止數(shù)據(jù)丟失、錯(cuò)誤更新和越權(quán)使用。②完整性控制。保證數(shù)據(jù)的正確性、有效性和相容性。③并發(fā)控制。使在同一時(shí)間周期內(nèi),允許對(duì)數(shù)據(jù)實(shí)現(xiàn)多路存取,又能防止用戶之間的不正常交互作用。④故障的發(fā)現(xiàn)和恢復(fù)。由數(shù)據(jù)庫(kù)管理系統(tǒng)提供一套方法,可及時(shí)發(fā)現(xiàn)故障和修復(fù)故障,從而防止數(shù)據(jù)被破壞。
(6)故障恢復(fù)。由數(shù)據(jù)庫(kù)管理系統(tǒng)提供一套方法,可及時(shí)發(fā)現(xiàn)故障和修復(fù)故障,從而防止數(shù)據(jù)被破壞。數(shù)據(jù)庫(kù)系統(tǒng)能盡快恢復(fù)數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行時(shí)出現(xiàn)的故障,可能是物理上或是邏輯上的錯(cuò)誤。比如對(duì)系統(tǒng)的誤操作造成的數(shù)據(jù)錯(cuò)誤等。
數(shù)據(jù)庫(kù)是不可能避免一切數(shù)據(jù)都沒有重復(fù)的,并且有些情況下需要有重復(fù)的數(shù)據(jù),比如數(shù)據(jù)庫(kù)恢復(fù)技術(shù)需要一定的數(shù)據(jù)冗余度。
72.A
\n本題考查while循環(huán)。在while循環(huán)中,y自加每次循環(huán)都加l,在循環(huán)體內(nèi)y--每次減1,所以總的y值不變,當(dāng)x自加到7時(shí),不滿足循環(huán)條件,循環(huán)結(jié)束。
\n
73.B
\n(x&1)&&(z<2)=(0.5&1)&&(a<z)=1&&1=1,故選擇B選項(xiàng)。
\n
74.Breturn語(yǔ)句又稱為返回語(yǔ)句。該語(yǔ)句的格式如下:“return;”和“return(<表達(dá)式>);”。其中,return是關(guān)鍵字。該語(yǔ)句有兩種格式:不帶返回值格式和帶返回值格式。該語(yǔ)句用在被調(diào)用函數(shù)中,在被調(diào)用函數(shù)中執(zhí)行到該語(yǔ)句時(shí),將結(jié)束對(duì)被調(diào)用函數(shù)的執(zhí)行,并把控制權(quán)返回給調(diào)用函數(shù),繼續(xù)執(zhí)行調(diào)用函數(shù)后邊的語(yǔ)句。在帶有返回值的情況下,將return語(yǔ)句所帶的表達(dá)武的值返回給調(diào)用函數(shù),作為被調(diào)用函數(shù)的值。在被調(diào)用函數(shù)中,可以用return語(yǔ)句,也可以不用return語(yǔ)句。如果要求被調(diào)用函數(shù)有返回值,則一定要用return語(yǔ)句,采用return(<表達(dá)式>);格式。如果被調(diào)用函數(shù)不需要返回值,并且當(dāng)被調(diào)用函數(shù)的所有語(yǔ)句執(zhí)行完后進(jìn)行返回,則被調(diào)用函數(shù)可以不用return語(yǔ)句。
75.C
76.D解析:PDL一種設(shè)計(jì)性語(yǔ)言,用于書寫軟件設(shè)計(jì)規(guī)約。它是軟件設(shè)計(jì)中廣泛使用的語(yǔ)言之一。N-S圖是無(wú)線的流程圖,是算法描述工具;PAD圖是問題分析圖,它用二維樹狀結(jié)構(gòu)的圖表示程序的控制流,將這種圖轉(zhuǎn)換為程序代碼比較容易。此3類均是過程設(shè)計(jì)工具,數(shù)據(jù)流圖(DataFunctionDiagram):又名數(shù)據(jù)功能圖表,簡(jiǎn)稱DFD,是采用圖形方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達(dá)工具及用于表示軟件模型的一種圖示方法。
77.C選擇:是在數(shù)據(jù)表中給予一定的條件進(jìn)行篩選數(shù)據(jù)。投影:是把表中的某幾個(gè)屬性的數(shù)據(jù)選擇出來。連接:有自然連接、外連接,內(nèi)連接等,連接主要用于多表之間的數(shù)據(jù)查詢。并:與數(shù)學(xué)中的并是一樣的。兩張表進(jìn)行并操作,要求它們的屬性個(gè)數(shù)相同并且需要相容。
78.A
\n本題在函數(shù)intfun(intn)的定義中又出現(xiàn)了對(duì)函數(shù)fun的調(diào)用,所以函數(shù)fun是遞歸函數(shù)。因而在主函數(shù)中調(diào)用x=fun(x)時(shí),當(dāng)輸入10賦給變量x時(shí),遞歸調(diào)用的過程為
\nfun(10)=10…fun(9)=104-94-fun(8)=104-9+84-fun(7)
\n=10+9++8++7++fun(6)=10+9++8+7+6+fun(6)
\n=10+9++8+7+6+5+fun(4)
\n=10+9++8+7+6+5+4+fun(3)
\n=10+9++8+7+6+5+4+3+fun(2)
\n=10+9++8+7+6+5+4+3+2+fun(1)
\n=10+9++8+7+6+5+4+3+2=55
\n
79.A
80.Ap->x值為l,p->y值為2,前置自增表達(dá)式分別為23,所以選擇A)。81.
(1)if((tt[i]>=’a’)&&(tt[i]<=‘z’))
(2)tt[i]一=32;
【考點(diǎn)分析】
本題考查:if語(yǔ)句條件表達(dá)式;小寫字母轉(zhuǎn)大寫字母的方法。
【解題思路】
(1)分析本題可知,要判斷字符是否為小寫字母,即判斷其是否在a—z之間,所以這里需要進(jìn)行連續(xù)的比較,用&&。(2)從ASCIl碼表中可以看出,小寫字母的ASCIl碼值比對(duì)應(yīng)大寫字母的ASCIl值大32。將字符串中的小寫字母改為大寫字母的方法是:從字符串第一個(gè)字符開始,根據(jù)ASCIl碼值判斷該字母是不是小寫字母,若是,則ASCIl碼值減32即可。
82.
【解析】首先定義一個(gè)變量來存放表達(dá)式的和.根據(jù)題目中提供的多項(xiàng)式,通過n次循環(huán)來求出n項(xiàng)的和。最后把所求得的和返回到主函數(shù)當(dāng)中。
2021年浙江省金華市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有以下程序:
#include<stdio.h>
voidfunc(intn)
{staticintnum=1);
num=num+n;printf("%d",num);
}
main()
{funo(3);func(4);printf("n");}
程序運(yùn)行后的輸出結(jié)果是()。
A.48B.34C.35D.45
2.檢查軟件產(chǎn)品是否符合需求定義的過程稱為______。
A.確認(rèn)測(cè)試B.集成測(cè)試C.驗(yàn)證測(cè)試D.驗(yàn)收測(cè)試
3.循環(huán)隊(duì)列存儲(chǔ)在數(shù)組A[0..m]中,則入隊(duì)時(shí)的操作為()。
A.rear=rear+1
B.rear=(rear+1)mod(m-1)
C.rear=(rear+1)modm
D.rear=(rear+1)mod(m+1)
4.以下說法正確的是()。
A.函數(shù)可以返回另一個(gè)函數(shù)的整個(gè)函數(shù)體
B.函數(shù)返回值只能是基本數(shù)據(jù)類型的數(shù)值或指針
C.函數(shù)返回值可以是一個(gè)指向函數(shù)的指針
D.函數(shù)返回值可以是一個(gè)數(shù)組,同時(shí)返回多個(gè)值
5.以下程序的輸出結(jié)果是______。
A.54321
B.12345
C.12345
D.543210main(){intw=5;fun(w);printf("\n");}fun(intk){if(k>0)fun(k-1);printf("%d"",k);}
6.若變量已正確定義,有下列程序段:inta=3,b=5,c=7;if(a>B)a=b;c=a;if(c!=A)c=b;printf("%d,%d,%d\n",a,b,C);其輸出結(jié)果是()。A.程序段有語(yǔ)法錯(cuò)B.3,5,3C.3,5,5D.3,5,7
7.有以下程序:#include<stdio.h>#include<stdio.h>main(){charc[6];inti=0;for(;j<6;c[i]=getchar(),i++);for(i=0;i<6;i++)putchar(c[i]);printf("\n");}如果從鍵盤上輸入:ab<回車>c<回車>def<回車>則輸出結(jié)果為______。
A.abcdefB.abcdC.abcdD.abcdef
8.程序運(yùn)行后的輸出結(jié)果是()。A.10B.30C.0D.64
9.對(duì)線性表進(jìn)行二分法檢索,其前提條件是()。
A.線性表以順序方式存儲(chǔ),并按關(guān)鍵碼值排好序
B.線性表以順序方式存儲(chǔ),并按關(guān)鍵碼的檢索頻率排好序
C.線性表以鏈?zhǔn)椒绞酱鎯?chǔ),并按關(guān)鍵碼值排好序
D.線性表以鏈?zhǔn)椒绞酱鎯?chǔ),并按關(guān)鍵碼的檢索頻率排好序
10.在循環(huán)隊(duì)列中,若front與rear分別表示對(duì)頭元素和隊(duì)尾元素的位置,則判斷循環(huán)隊(duì)列空的條件是()。
A.front==rear+1B.rear==front+1C.front==rearD.front==0
11.有以下程序
#include<stdio.h>
voidfun(char*t,char*s)
{while(*t!=0)t++;
while((*t++=*s++)!=0);
}
main()
{charss[10]="acc",aa[10]="bbxxyy";
fun(ss,aa);printf("%s,%s\n",ss,aa);
}
程序的運(yùn)行結(jié)果是
A.accxyy,bbxxyy
B.acc,bbxxyy
C.accxxyy,bbxxyy
D.accbbxxyy,bbxxyy
12.
13.有以下程序main()inta[10]={1,2,3,4,5,6,7,8,9,10},*p=.&a[3],*q=p+2;printf("%d\n",*p+*q);程序運(yùn)行后輸出結(jié)查是
A.16B.10C.8D.6
14.在下列排序算法中,在待排序的數(shù)據(jù)表已經(jīng)為有序時(shí),花費(fèi)時(shí)間反而最多的是()
A.希爾排序B.堆排序C.冒泡排序D.快速排序
15.下面程序的輸出結(jié)果是()。
#include<stdio.h>
main()
{inta[4][5]={1,2,4,-4,5,-9,3,6,-3,2,7,8,4};
inti,j,n;
n=9;
i=n/5;
j=n-i*5-1;
printf("a[%d][%d]=%d\n",i,j,a[i][j]);
}
執(zhí)行后輸出結(jié)果是()。A.A.a[1][3]=6
B.a[1][3]=-3
C.a[1][3]=2
D.不確定
16.若變量a、i已正確定義,且i已正確賦值,合法的語(yǔ)句是()。
A.a==lB.++iC.a=a++=5D.a=int(i)
17.面向?qū)ο蟮脑O(shè)計(jì)方法與傳統(tǒng)的面向過程的方法有本質(zhì)不同,它的基本原理是()。
A.模擬現(xiàn)實(shí)世界中不同事物之間的聯(lián)系
B.強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而不強(qiáng)調(diào)概念
C.使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題
D.不強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而強(qiáng)調(diào)概念
18.有以下程序#include<stdio.h>intf(intx,inty){return()y-x)*x);}main(){inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c));printf(“%d\n”,d);}程序運(yùn)行后的輸出結(jié)果是A.10B.9C.8D.7
19.設(shè)有以下語(yǔ)句
charchl,ch2;scanf("%c%C",&chl,&ch2);
若要為變量chl和ch2分別輸入字符A和B,正確的輸入形式應(yīng)該是()。
A.A和B之間用逗號(hào)間隔
B.A和B之間不能有任何間隔符
C.A和B之間可以用回車間隔
D.A和B之間用空格間隔
20.數(shù)據(jù)庫(kù)是______的集合,它具有統(tǒng)一的結(jié)構(gòu)形式并存放于統(tǒng)一的存儲(chǔ)介質(zhì)內(nèi),可被各個(gè)應(yīng)用程序所共享。
A.視圖B.消息C.數(shù)據(jù)D.關(guān)系
二、2.填空題(20題)21.若有如下結(jié)構(gòu)體說明:
structSTRU
{inta,b;charc:doubled;
stmctSTRU*p1,*p2;
};
請(qǐng)?zhí)羁?,以完成?duì)t數(shù)組的定義,t數(shù)組的每個(gè)元素為該結(jié)構(gòu)體類型?!尽縯[20]
22.下面的函數(shù)strcat(str1,str2)實(shí)現(xiàn)將字符串str2拼接到字符串str1后面的功能。請(qǐng)?zhí)羁帐怪暾?/p>
char*strcat(str1,str2)
char*str1,*str2;
{char*t=str1;
while(【】)str1++;
while(【】);
return(t);}
23.軟件的【】設(shè)計(jì)又稱為總體結(jié)構(gòu)設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。
24.下列程序的輸出結(jié)果是16.00,請(qǐng)?zhí)羁眨?/p>
main()
{
inta=9,b=2;
floatx=【】,y=1.1,z;
z=a/2+b*x/y+1/2;
printf("%5.2f\n",z);
}
25.若下面程序的輸出結(jié)果是4,請(qǐng)?zhí)羁铡?/p>
main()
{inti,j,k;
k=0;i=j=【】;
k+=-(i+j);printf("%d\n",k);
}
26.以下程序用來輸出結(jié)構(gòu)體變量ex所占存儲(chǔ)單元的字節(jié)數(shù):
structst
{charname[20];doublescore;};
main()
{structstex;
printf("exsize:%d\n",sizeof(【】));
}
27.下面程序的輸出是【】。
main()
{inta[]={2,4,6},*ptr=&a[0],x=8,y,z;
for(y=0;y<3;y++)z=(*(ptr+y)<x)?*(prt+y):x;
printf("%d\n",z);
}
28.數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和______兩大類。
29.軟件定義時(shí)期主要包括______和需求分析兩個(gè)階段。
30.以下程序的輸出結(jié)果是【】。
main()
{
intp[7]={11,13,14,15,16,17,18};
inti=0,j=0;
while(i<7&&p[i]%2==1)j+=p[i++];
printf("%d\n",j);
}
31.設(shè)y為血型變量,請(qǐng)寫出描述“y是偶數(shù)”的表達(dá)式______。
32.數(shù)據(jù)的獨(dú)立性分為邏輯獨(dú)立性與物理獨(dú)立性。當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,這稱為______。
33.若a是int型變量,則表達(dá)式(a=2*3,a*2),a+6的值為______。
34.在樹型結(jié)構(gòu)中,根結(jié)點(diǎn)沒有【】結(jié)點(diǎn),其余每個(gè)結(jié)點(diǎn)有且僅有【】個(gè)前驅(qū)結(jié)點(diǎn);葉結(jié)點(diǎn)沒有后繼結(jié)點(diǎn),其余每個(gè)結(jié)點(diǎn)的【】結(jié)點(diǎn)數(shù)不受限制。
35.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管可管理多個(gè)項(xiàng)目,則實(shí)體"項(xiàng)目主管"與實(shí)體"項(xiàng)目"的聯(lián)系屬于【】的聯(lián)系。
36.為了列出當(dāng)前盤當(dāng)前目錄中所有第三個(gè)字符為C的文件名的有關(guān)信息,應(yīng)該使用命令【】。
37.下列軟件系統(tǒng)結(jié)構(gòu)圖的寬度為[]。
38.若有語(yǔ)句
inti=-19,j=i%4;
printf("%d\n",j),
則輸出的結(jié)果是______。
39.下面程序的功能是:輸出100以內(nèi)能被4整除且個(gè)位數(shù)為8的所有整數(shù),請(qǐng)?zhí)羁?。main(){inti,j;for(i=0=();i++){j=i*10+8;if(j%4!=0)continue;printf("%d",j);}}
40.寫出下列程序的輸出結(jié)果______。
main()
{intn=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
三、1.選擇題(20題)41.數(shù)據(jù)字典是對(duì)數(shù)據(jù)定義信息的集合,它所定義的對(duì)象都包含于______。
A.程序框圖B.軟件結(jié)構(gòu)C.數(shù)據(jù)流圖D.方框圖
42.以下程序試圖把從終端輸入的字符輸出到名為abc.txt的文件中,直到從終端讀入字符#時(shí)結(jié)束輸入和輸出操作,但程序有錯(cuò)。#include<stdio.h>main(){FILE*fout;charch;fout=fopen('abc.txt','W');ch=fgetc(stdin);while(ch!='#'){fputc(ch,fout);ch=fgetc(stdin);}fclose(fout);}出錯(cuò)的原因是()。
A.函數(shù)fopen調(diào)用形式錯(cuò)誤B.輸入文件沒有關(guān)閉C.函數(shù)fgetc調(diào)用形式錯(cuò)誤D.文件指針stdin沒有定義
43.下列程序執(zhí)行的輸出結(jié)果是()。#include<stdio.h>main(){chara[2][4];strcpy(a,"are");strcpy(a[1],"you");a[0][3]='&';printf("%s\n",a);}
A.are&youB.youC.areD.&
44.下列敘述中不正確的是
A.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題
B.數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
C.數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)一個(gè)能滿足用戶要求,性能良好的數(shù)據(jù)庫(kù)
D.數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),但是需要操作系統(tǒng)的支持
45.可在C程序中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是A.and2007
B.Date_y-m-d
C.HiDr.Tom
D.caseBigl
46.下列語(yǔ)句執(zhí)行后的結(jié)果是()y=5;p=&y;x=*p++;
A.x=5,y=5B.x=5,y=6C.x=6,y=5D.x=6,y=6
47.C語(yǔ)言中用于結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是A.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
B.if、switch、break
C.for、while、do-while
D.if、for、continue
48.設(shè)x、y和z是int型變量,且x=4,y=6,z=8,則下列表達(dá)式中值為0的是()。
A.x&&y
B.x<=y
C.x||y+z&&y-z
D.!((x<y)&&!z||1)
49.以下敘述不正確的是
A.一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成
B.一個(gè)C源程序必須包含一個(gè)main函數(shù)
C.C程序的基本組成單位是函數(shù)
D.在C程序中,注釋說明只能位于一條語(yǔ)句的后面
50.判斷字符型變量chr為小寫字母的表達(dá)式是______。
A.'a'<=chr<='z'
B.(chr>='a')||(chr<='z')
C.(chr>=A)&&(chr<=z)
D.(chr>='a')&&(chr<='z')
51.若有以下結(jié)構(gòu)體定義,則______是正確的引用或定義。structexample{intx;inty;}v1;
A.example.x=10
B.examplev2.x=10
C.example.x=10
D.structexamplev2={10};
52.下面程序的輸出是______。typedefunion{longx[2];inty[4];charz[8];}MYTYPE;MYTYPEthem;mare(){printf("%d\n",sizeof(them));}
A.32B.16C.8D.24
53.若有如下程序;main(){intm=-i;printf("%d,%u,%o,%X",m,m,m,m);}則程序運(yùn)行后的輸出結(jié)果是()。
A.-1,65535,177777,ffff
B.-1,-1,177777,fffe
C.-1,1,177777,ffff
D.-1,65535,177776,fffe
54.下面各選項(xiàng)中,均是C語(yǔ)言合法標(biāo)識(shí)符的選項(xiàng)組是
A.33weautoB._23me_3ewC._433e_elseD.ER-DF32
55.以下數(shù)組定義中錯(cuò)誤的是()。
A.intx[][3]={0};
B.intx[2][3]={{1,2},{3,4},{5,6}};
C.intx[][3]={{1,2,3},{4,5,6}};
D.intx[2][3]={1,2,3,4,5,6};
56.有以下程序段charch;intk;ch='a';k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII十進(jìn)制代碼為97,則執(zhí)行上述程序段后輸出結(jié)果是()。A.因變量類型與格式描述符的類型不匹配輸出無(wú)定值
B.輸出項(xiàng)與格式描述符個(gè)數(shù)不符,輸出為零值或不定值
C.a,97,12k=12
D.a,97,k=12
57.有下列程序:main(){inty=20;do{y--;}while(--y);printf("%d\n",y--);}當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。
A.-1B.1C.4D.0
58.下面程序段中c的二進(jìn)制值是______。chara=3,b=6,c;c=a^b<<1;
A.1011B.1111C.11110D.11100
59.下列程序的輸出結(jié)果是______。main(){char*s="12134211";intv[4]={0,0,0,0},k,i;for(k=0;s[k];k++){switch(s[k]){case'1':i=0;case'2':i=1;case'3':i=2;case'4':i=3;}vii]++;}for(k=O;k<4;k++)printf("%d",v[k]);}
A.4211B.0008C.4678D.8888
60.有以下程序:#include<stdio.h>main(){intc;while((c=getchar())!='\n')switch(c-'2'){case1:putchar(c+4);case2:putchar(c+4);break;case3:putchar(c+4);case4:putchar(c+4);break;}printf("\n");}輸入以下數(shù)據(jù),<CR>代表一個(gè)回車符,2743<CR>程序的輸出結(jié)果是()。
A.877B.966C.778D.766
四、選擇題(20題)61.
有下列程序段:
intn,t=1,S=0;
scanf("%d",&n);
do{s=s+t;t=t-2;while(t!=n);
為使此程序段不陷入循環(huán),從鍵盤輸入的數(shù)據(jù)應(yīng)該是()。
A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)
62.以下不合法的數(shù)值常量是()。
A.8.0E0.5B.lelC.0llD.0xabcd
63.
64.若函數(shù)調(diào)用時(shí)的實(shí)參為變量時(shí),以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。
A.函數(shù)的形參和實(shí)參分別占用不同的存儲(chǔ)單元
B.形參只是形式上的存在,不占用具體存儲(chǔ)單元
C.同名的實(shí)參和形參占同一存儲(chǔ)單元
D.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元
65.設(shè)intx=7,則~x的值是()。
A.-8B.7C.-1D.1
66.
設(shè)有如下定義:
intarr[]={6,7,8,9,10);
int*ptr:
ptr=arr;
*(ptr2)=2;
printf("%d,%d\n",*ptr,*(ptr2)):
則下列程序段的輸出結(jié)果為()。
A.8,10B.6,8C.7,9D.6,2
67.
68.已知
則以下敘述正確的是()。
A.循環(huán)控制表達(dá)式不合法B.循環(huán)控制表達(dá)式的值為0C.循環(huán)控制表達(dá)式的值為lD.以上說法都不對(duì)
69.以下敘述中錯(cuò)誤的是()。
A.C語(yǔ)言編寫的函數(shù)源程序,其文件名后綴可以是C
B.C語(yǔ)言編寫的函數(shù)都可以作為一個(gè)獨(dú)立的源程序文件
C.C語(yǔ)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 冰雪合同范本
- 減除合同范本
- pos機(jī)押金退還合同范本
- 2025年度房地產(chǎn)融資結(jié)算借款合同范本
- 二手車市場(chǎng)投資合同范本
- 2025年度公共自行車租賃與共享服務(wù)安全保障合同
- 出售經(jīng)紀(jì)服務(wù)合同范本
- 農(nóng)村房子用地改建合同范例
- 俄語(yǔ)供貨合同范例
- 加工紙訂購(gòu)合同范本
- (2024年)面神經(jīng)炎課件完整版
- 數(shù)據(jù)中心基礎(chǔ)知識(shí)培訓(xùn)-2024鮮版
- 第4課+中古時(shí)期的亞洲(教學(xué)設(shè)計(jì))-【中職專用】《世界歷史》(高教版2023基礎(chǔ)模塊)
- 保障性住房建設(shè)資金來源與運(yùn)作機(jī)制
- 金點(diǎn)子活動(dòng)總結(jié)匯報(bào)
- 原料驗(yàn)收標(biāo)準(zhǔn)知識(shí)培訓(xùn)課件
- 江蘇春節(jié)風(fēng)俗 南京夫子廟、鹽水鴨與昆曲
- Unit4MyfamilyStorytime(課件)人教新起點(diǎn)英語(yǔ)三年級(jí)下冊(cè)
- 物流運(yùn)作管理-需求預(yù)測(cè)
- 《電機(jī)與電氣控制(第三版)習(xí)題冊(cè)》 習(xí)題答案
- 鋼桁梁頂推施工方案
評(píng)論
0/150
提交評(píng)論