




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022-2023年廣東省肇慶市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.已有定義:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判斷c中的字符是否為大寫(xiě)字堪的表達(dá)式是()。
A.isupper(c)B.A<=c<=ZC.A<=c&&c<=ZD.c<=(z-32)&&(a-32)<=c
2.有以下程序:#include<stdio.h>main(){FILE*fp;charstr[10];fp=fopen(“myfile.dat”,“w”);fputs(“abc”,fp);fclose(fp);fp=fopen(“myfile.dat”,“a+”);fprintf(fp,“%d”,28);rewind(fp);fscanf(fp,“%s”,str);puts(str);fclose(fp);}程序的運(yùn)行結(jié)果是()。
A.abcB.28cC.abc28D.因類型不一致而出錯(cuò)
3.fun函數(shù)的功能是:通過(guò)鍵盤(pán)輸入給x所指的整型數(shù)組所有元素賦值。在下劃線處應(yīng)填寫(xiě)的是()。#include<stdio.h>#defineN5voidfun(intx[N]){intm;for(m=N-t;m>=O;m-)scanf("%d",____);}A.%&X[++m]B.&x[m+1]C.x+(m++)D.x+m
4.一個(gè)模塊直接調(diào)用的下層模塊的數(shù)目稱為模塊的()。
A.扇入數(shù)B.扇出數(shù)C.寬度D.作用域
5.
6.
7.下列4個(gè)關(guān)于C語(yǔ)言的結(jié)論中錯(cuò)誤的是()。
A.可以用do…while語(yǔ)句實(shí)現(xiàn)的循環(huán)一定可以用while語(yǔ)句實(shí)現(xiàn)
B.可以用for語(yǔ)句實(shí)現(xiàn)的循環(huán)一定可以用while語(yǔ)句實(shí)現(xiàn)
C.可以用while語(yǔ)句實(shí)現(xiàn)的循環(huán)一定可以用for語(yǔ)句實(shí)現(xiàn)
D.do…while語(yǔ)句與while語(yǔ)句的區(qū)別僅是關(guān)鍵字“while”出現(xiàn)的位置不同
8.有嵌套的if語(yǔ)句:if(a<b) if(a<c)k=a; elsek=c;elseif(b<c)k=b;elsek=c;以下選項(xiàng)中與上述if語(yǔ)句等價(jià)的語(yǔ)句是()。
A.k=(a<b)?((b<c)?a:b):((b>c)?b:c);
B.k=(a<b)?((a<c)?a:c):((b<c)?b:c);
C.k=(a<b)?a:b;k=(b<c)?b:c;
D.k=(a<b)?a:b;k=(a<c)?a:c;
9.以下定義數(shù)組的語(yǔ)句錯(cuò)誤的是()。
A.intnum[]={1,2,3,4,5,6};
B.intnum[][3]={{1,2},3,4,5,6};
C.intnum[2][4]={{1,2},{3,4},{5,6}};
D.intnum[][4]={1,2,3,4,5,6};
10.若有說(shuō)明charc[7]={'s','t','r','i','n','g'};則對(duì)元素的非法引用是()。
A.c[0]B.c[9-6]C.c[4*2]D.c[2*3]
11.在inta=3,int*p=&a;中,*p的值是()。
A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3
12.將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串時(shí),選用()函數(shù)。A.strlen()B.strcpy()C.strcat()D.strcmp()
13.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為節(jié)省時(shí)間,應(yīng)該采用的算法是()
A.直接選擇排序B.堆排序C.快速排序D.直接插入排序
14.下列程序的輸出結(jié)果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;chark;}un;printf("%d,%d\n",sizeof(structst),sizeof(un));}
A.6,2B.6,4C.8,4D.8,6
15.在Windows環(huán)境下,單擊當(dāng)前應(yīng)用程序窗口中的“關(guān)閉”按鈕,其功能是A.將當(dāng)前應(yīng)用程序轉(zhuǎn)為后臺(tái)運(yùn)行
B.退出Windows后再關(guān)機(jī)
C.退出Windows后重新啟動(dòng)計(jì)算機(jī)
D.終止當(dāng)前應(yīng)用程序的運(yùn)行
16.關(guān)系R和關(guān)系S的并運(yùn)算是______。
A.由關(guān)系R和關(guān)系S的所有元組合并組成的集合,再刪去重復(fù)的元組
B.由屬于R而不屬于S的所有元組組成的集合
C.由既屬于R又屬于S的元組組成的集合
D.由R和S的元組連接組成的集合
17.以下程序是用來(lái)計(jì)算兩個(gè)非負(fù)數(shù)之間的最大公約數(shù):我們假設(shè)x,y中最大的那個(gè)數(shù)的長(zhǎng)度為n,基本運(yùn)算時(shí)間復(fù)雜度為O(1),那么該程序的時(shí)間復(fù)雜度為()A.O(1)B.O(logn)C.O(n)D.O(n^2)
18.下列描述中正確的是______。A.軟件工程只是解決軟件項(xiàng)目的管理問(wèn)題
B.軟件工程主要解決軟件產(chǎn)品的生產(chǎn)率問(wèn)題
C.軟件工程的主要思想是強(qiáng)調(diào)在軟件開(kāi)發(fā)過(guò)程中需要應(yīng)用工程化原則
D.軟件工程只是解決軟件開(kāi)發(fā)中的技術(shù)問(wèn)題
19.信息隱蔽的概念與下述哪一種概念直接相關(guān)?
A.軟件結(jié)構(gòu)定義B.模塊獨(dú)立性C.模塊類型的劃分D.模塊耦合度
20.由權(quán)值分別為3,8,6,2,5的葉子結(jié)點(diǎn)生成一棵哈夫曼樹(shù),它的帶權(quán)路徑長(zhǎng)度為_(kāi)_______。
A.24B.48C.72D.53
二、2.填空題(20題)21.以下程序的運(yùn)行結(jié)果是【】。
#defineMAX(a,b)(a>b?a:b)+1
main()
{inti=6,j=8,k;
printf("%d\n",MAX(i,j));
}
22.下列表達(dá)式用于判斷y是否為閏年。閏年的判斷條件是:年號(hào)能被4整除但不能被100整除或年號(hào)能被400整除,請(qǐng)?zhí)羁誣_____。
23.以下程序運(yùn)行后的輸出結(jié)果是______。
#include<string.h>
voidfun(char*s,intp,intk)
{inti;
for(i=p;i<k-1;i++)s[i]=s[i+2];
}
main()
{chars[]="abcdefg";
fun(s,3,strlen(s));puts(s);
}
24.子程序通常分為兩類:【】和函數(shù),前者是命令的抽象,后者是為了求值。
25.在關(guān)系模型中,二維表的行稱為_(kāi)_____。
26.設(shè)變量已正確定義為整型,則表達(dá)式n=i=2,++i,i++的值為【】。
27.下面程序執(zhí)行后輸出的結(jié)果是【】。
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);
}
main()
{inta=7,b=5;
printf("%d\n",fun(a,b)/m);
}
28.以下程序的作用是:從名為filea.dat的文本文件中逐個(gè)讀入字符并顯示在屏幕上。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE*fp;charch;
fp=fopen(【】);
ch=fgetc(fp);
while(!feof(fp)){putchar(ch);ch=fgetc(fp);}
putchar('\n');fclose(fp);
}
29.設(shè)有chara,b;,若要通過(guò)a&b運(yùn)算屏蔽掉a中的其他位,只保留第2位和第8位(右起為第1位),則b的二進(jìn)制是【】。
30.數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下6個(gè)設(shè)計(jì)階段:需求分析階段、______、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。
31.有以下程序:
main()
{inti,n=0;
for(i=2;i<5;i++)
{do
{if(i%3)continue;
n++;
}while(!i);
n++;
}
printf("n=%d\n",n);
}
程序執(zhí)行后輸出結(jié)果是【】。
32.mystrlen函數(shù)的功能是計(jì)算str所指字符串的長(zhǎng)度,并作為函數(shù)值返回。請(qǐng)?zhí)羁铡?/p>
intmystrlen(char*str)
{inti;
for(i=0;【】!='\0';i++);
return(【】);
}
33.用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間。
st=(char*)【】;
34.以下程序的輸出結(jié)果是【】。
fun(intx,inty,intz)
{z=x*x+y*y;}
main()
{inta=31;
fun(6,3,a)
printf("%d,a)
}
35.有以下程序段:
inta[l0]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;
b=p[5];
b中的值是【】。
36.已有定義:double*p;,請(qǐng)寫(xiě)出完整的語(yǔ)句,利用malloc函數(shù)使p指向一個(gè)雙精度型的動(dòng)態(tài)存儲(chǔ)單元______。
37.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{inti,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
{n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
38.以下程序的輸出結(jié)果是【】。
floatfun(intx,inty)
{return(x+y);}
main()
{inta=2,b=5,c=8;
printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}
39.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{chara[]="Language",b[]="Pragrame";
char*p1,*p2;intk;
p1=a;p2=b;
for(k=0;k<=7;k++)
if(*(p1+k)==*(p2+k))
printf("%c",*(p1+k));
}
40.函數(shù)fun的功能是計(jì)算xn。
doublefun(doublex,intn)
{inti;doubley=1;
for(i=1;i<=n;i++)y=y*x;
returny;
}
主函數(shù)中已正確定義m、a、b變量并賦值,并調(diào)用fun函數(shù)計(jì)算:m=a4+b4-(a+b)3。實(shí)現(xiàn)這一計(jì)算的函數(shù)調(diào)用語(yǔ)句為【】。
三、1.選擇題(20題)41.下列敘述中正確的是()。
A.調(diào)用printf()函數(shù)時(shí),必須要有輸出項(xiàng)
B.使用putchar()函數(shù)時(shí),必須在之前包含頭文件stdio.h
C.在C語(yǔ)言中,整數(shù)可以以二進(jìn)制、八進(jìn)制或十六進(jìn)制的形式輸出
D.調(diào)節(jié)getchar()函數(shù)讀入字符時(shí),可以從鍵盤(pán)上輸入字符所對(duì)應(yīng)的ASCII碼
42.有以下程序:#include<stdio.h>inta=1;intfun(intC){staticinta=2;c=c+1;return(a++)+c;}main(){inti,k=0;for(i=0;i<2;i++){inta=3;k+=f(A);}k+=a;printf("%d\n",k);}程序的運(yùn)行結(jié)果是()。
A.14B.15C.16D.17
43.設(shè)有定義:intn1=0,n2,*P=&n2,*q=&n1;,以下賦值語(yǔ)句中與n2=n1;語(yǔ)句等價(jià)的是()。
A.*p=*q;B.p=q;C.*p=&n1;D.p=*q;
44.下列敘述中正確的是()。A.實(shí)體集之間一對(duì)一的聯(lián)系實(shí)際上就是一一對(duì)應(yīng)的關(guān)系
B.關(guān)系模型只能處理實(shí)體集之間一對(duì)一的聯(lián)系
C.關(guān)系模型屬于格式化模型
D.以上三種說(shuō)法都不對(duì)
45.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專門(mén)關(guān)系運(yùn)算包括()。
A.排序、索引、統(tǒng)計(jì)B.選擇、投影、連接C.關(guān)聯(lián)、更新、排序D.顯示、打印、制表
46.以下程序有錯(cuò),錯(cuò)誤原因是main(){int*p,i;char*q,ch;p=&i;q=&ch;*p=40;*p=*q;……}
A.p和q的類型不一致,不能執(zhí)行*p=*q;語(yǔ)句
B.*p中存放的是地址值,因此不能執(zhí)行*p=40;語(yǔ)句
C.q沒(méi)有指向具體的存儲(chǔ)單元,所以*q沒(méi)有實(shí)際意義
D.q雖然指向了具體的存儲(chǔ)單元,但該單元中沒(méi)有確定的值,所以執(zhí)行*p=*q;沒(méi)有意義,可能會(huì)影響后面語(yǔ)句的執(zhí)行結(jié)果
47.以下程序輸出的結(jié)果為_(kāi)_____。main(){char*alpha[6]={"ABCD","EFGH","IJKL","MNOP","QRST","UVWX");char**p;inti;p=alpha;for(i=0;i<4;i++)printf("%s",p[i]);}
A.ABCDEFGHIJKLB.ABCDC.ABCDEFGHIJKLMNOPD.AEIM
48.有以下程序:#include<stdio.h>#defineN8voidfun(int*x,inti){*x=*(x+i)+1;}main(){inta[N]={1,2,3,4,5,6,7,8},i;fun(a,2);for(i=0;i<N/2;i++){printf("%d",a[i]);}printf("\n");}程序運(yùn)行后的輸出結(jié)果是()。
A.1313B.3234C.4234D.1234
49.設(shè)有定義語(yǔ)句:intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數(shù)組6個(gè)元素中的值,不能完成此操作的語(yǔ)句是()。
A.for(i=0;i<6;i++)printf("%2d",*(p++));
B.for(i=0;i<6;i++)printf("%2d",*(p+i));
C.for(i=0;i<6;i++)printf("%2d",*p++);
D.for(i=0;i<6;i++)printf("%2d",(*p)++);
50.若有定義floata[15],*p=a;,且數(shù)組a的首地址為300H,則p+13所指向的數(shù)組元素的地址為()。
A.334HB.30DHC.352HD.31AH
51.以下數(shù)據(jù)結(jié)構(gòu)中屬于線性數(shù)據(jù)結(jié)構(gòu)的是
A.集合B.線性表C.二叉樹(shù)D.圖
52.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線性表B.結(jié)性鏈表C.二叉鏈表D.有序線性鏈表
53.為了避免嵌套的if-else的二義性,C語(yǔ)言規(guī)定:else與______配對(duì)。
A.縮排位置相同的ifB.其之前最近的ifC.其之后最近的ifD.同一行上的if
54.設(shè)已執(zhí)行預(yù)編譯命令#include<string.h>,以下程序段的輸出結(jié)果是
chars[]="anapple";
printf("%d\n",strlen(s));
A.7B.8C.9D.10
55.在下列選項(xiàng)中,沒(méi)有構(gòu)成死循環(huán)的是()。
A.inti=100;while(1){i=i%100+1;if(i>100)break;}
B.for(;;);
C.intk=10000;do{k++;}while(k>10000);
D.ints=36;while(s)--s;
56.若要“向文本文件尾增加數(shù)據(jù)”,在fopen函數(shù)中應(yīng)使用的文件方式是()
A.ab+B.aC.abD.a+
57.下列的程序用來(lái)輸出兩個(gè)字符串前7個(gè)字符中對(duì)應(yīng)相等的字符及其位置號(hào),程序空白處應(yīng)該填寫(xiě)的是()。#include<stdio.h>main(){Charsl[]="Chinese",s2[]="japnese";inti;for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++)if(s1[i]=s2[i]&&i<7)____________________;}
A.putchar(s2[i];putchar(i)
B.puts(s1[i],i)
C.printf("%c%d\n",s2[i],i)
D.printf("%c",s1[i]);printf("%d\n",i)
58.算法的有窮性是指A.算法程序的運(yùn)行時(shí)間是有限的
B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長(zhǎng)度是有限的
D.算法只能被有限的用戶使用
59.在下列幾種排序方法中,要求內(nèi)存量最大的是______。
A.插入排序B.選擇排序C.快速排序D.歸并排序
60.有下列程序:
main()
{intk=5,n=0;
do
{switch(k)
{case1:case3:n+=1;k--;break;
default:n=0;k--;
Case2:case4;n+=2;k--;break;
}
printf("%d",n);
}while(k>0&&n<5);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.235B.0235C.02356D.2356
四、選擇題(20題)61.下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是()。
A.帶鏈隊(duì)列B.循環(huán)隊(duì)列C.帶鏈棧D.二叉樹(shù)
62.若各選項(xiàng)中所用變量已正確定義,函數(shù)fun中通過(guò)return語(yǔ)句返回一個(gè)函數(shù)值,以下選項(xiàng)中錯(cuò)誤的程序是
63.用樹(shù)形結(jié)構(gòu)來(lái)表示實(shí)體之間聯(lián)系的模型稱為()。
A.關(guān)系模型B.層次模型C.網(wǎng)狀模型D.數(shù)據(jù)模型
64.下列判斷正確的是()。
A.chara="ABCD":等價(jià)于char*a;*a="ABCD":
B.charstr[10]={"ABCD"}:等價(jià)于charstr[10];str[]={"ABCD"};
C.char*s="ABCD":等價(jià)于chars;*s="ABCD";
D.charc[5]="ABCD",d[5]="ABCD":等價(jià)于charc[5]-d[5]="ABCD";
65.
66.表達(dá)式a+=a-=a=9的值是()。
A.9B.-9C.18D.0
67.為了提高軟件的獨(dú)立性,模塊之間最好是()。
A.控制耦合B.公共耦合C.內(nèi)容耦合D.數(shù)據(jù)耦合
68.以下敘述中錯(cuò)誤的是()。。
A.C程序必須由一個(gè)或一個(gè)以上的函數(shù)組成
B.函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語(yǔ)句存在
C.NN數(shù)NNN值,必須通過(guò)return語(yǔ)句返回
D.函數(shù)形參的值也可以傳回給對(duì)應(yīng)的實(shí)參
69.有以下程序:
#include<stdio.h>
main()
{inta=7;
while(a--);
print[("%d\n",a);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.-l
B.0
C.1
D.7
70.在執(zhí)行完下列的c語(yǔ)句段之后,則B的值是()。chara=A;intb;B=((34&&56)&&(a<b));A.0B.1C.TRUED.FALSE
71.
72.
73.軟件設(shè)計(jì)中衡量模塊獨(dú)立性的度量標(biāo)準(zhǔn)是()。
A.抽象和信息隱蔽B.局部化和封裝化C.內(nèi)聚性和耦合性D.激活機(jī)制和控制方法
74.
75.執(zhí)行下列程序時(shí)輸入:123<空格>456<空格>789<回車>,輸出結(jié)果是
main()
{chars[100];intc,i;
scanf("%c",&c);scanf("%d",&i);scanf("%s",s);
prinnf("%c,%d,%s\n",c,i,s);}
A.123,456,789B.1,456,789
C.1,23,456,789D.1,23,456
76.以下敘述中錯(cuò)誤的是()。A.用戶定義的函數(shù)中可以有多個(gè)return語(yǔ)句,以便可以調(diào)用二次返回多個(gè)函數(shù)值
B.用戶定義的函數(shù)中可以沒(méi)有return語(yǔ)句
C.用戶定義的函數(shù)中若沒(méi)有retum語(yǔ)句,則應(yīng)當(dāng)定義函數(shù)為void類型
D.函數(shù)的return語(yǔ)句中可以沒(méi)有表達(dá)式
77.在黑盒測(cè)試方法中,設(shè)計(jì)測(cè)試用例的主要根據(jù)是()。
A.程序內(nèi)部邏輯B.程序外部功能C.程序數(shù)據(jù)結(jié)構(gòu)D.程序流程圖
78.下面描述中錯(cuò)誤的是()。
A.系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細(xì)設(shè)計(jì)
B.軟件設(shè)計(jì)是將軟件需求轉(zhuǎn)換為軟件表示的過(guò)程
C.數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫(kù)設(shè)計(jì)是軟件設(shè)計(jì)的任務(wù)之一
D.PAD圖是軟件詳細(xì)設(shè)計(jì)的表示工具
79.
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun()的功能是:將P所指字符串中的所有字符復(fù)制到b中,要求在每復(fù)制3個(gè)字符之后插入1個(gè)空格。
例如,若給a輸入字符串:“ABCDEFGHIJK”,調(diào)用函數(shù)后,字符數(shù)組b中的內(nèi)容為:“ABCDEFGHIJK”。
請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(shù)fun(),其功能是:求SS所指字符串中指定字符的個(gè)數(shù),并返回此值。例如,若輸入字符串“123412132”,輸入字符為“1”,則輸出3。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.B選項(xiàng)B先計(jì)算關(guān)系表達(dá)式“A<=c”的值是0還是l,再比較該值與字符z之間的大小關(guān)系,不能實(shí)現(xiàn)題目所要求的功能。
2.Cfprintf函數(shù)將內(nèi)容寫(xiě)入硬盤(pán)的文件,fputs函數(shù)將字符串寫(xiě)入文件,最終文件的內(nèi)容為abc28。故本題答案為C選項(xiàng)。
3.DD【知識(shí)點(diǎn)】宏定義與數(shù)組地址的考察【解析】數(shù)組名本身就是地址,所以不需要在用&符號(hào)。C選項(xiàng)不能對(duì)所有元素賦值而是反復(fù)再給一個(gè)數(shù)值賦值且是死循環(huán)。
4.B扇入數(shù)是指調(diào)用一個(gè)給定模塊的模塊個(gè)數(shù)。扇出數(shù)是指由一個(gè)模塊直接調(diào)用的其他模塊數(shù),即一個(gè)模塊直接調(diào)用的下層模塊的數(shù)目。本題答案為B選項(xiàng)。
5.A
6.B
7.D解析:本題考查幾個(gè)循環(huán)語(yǔ)句的關(guān)系。①do…while語(yǔ)句、while語(yǔ)句、for語(yǔ)句所實(shí)現(xiàn)的循環(huán)可以相互替代;②do…while語(yǔ)句和while語(yǔ)句的區(qū)別是do…while語(yǔ)句至少執(zhí)行一次。
8.B題目中嵌套語(yǔ)句的含義是當(dāng)“a<b”且“a<c”成立時(shí),將a的值賦給k。如果“a<b”成立而“a<c”不成立,則將c的值賦給k。如果“a<b”不成立而“b<c”成立,則將b的值賦給k。如果“a<b”不成立且“b<c”也不成立,則將c的值賦給k。判斷條件表達(dá)式,只有B選項(xiàng)可以表示這個(gè)含義。故本題答案為B選項(xiàng)。
9.B二維數(shù)組的定義有3種形式,第一種是分行為兩位數(shù)組賦值,即intnum[]={{12},{3,4},{5,6}},第二種是按照數(shù)組排列順序進(jìn)行賦值,即intnum[]={1,2,3,4,5,6},第三種為對(duì)部分元素賦初值,即intnum[]={{1,2}{},{3,4},{5,6}},所以錯(cuò)誤的為B。
10.C
11.D
12.C將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串,選用strcat函數(shù)來(lái)連接。
13.D
14.B解析:本題主要考查結(jié)構(gòu)體和聯(lián)合內(nèi)存使用的區(qū)別:結(jié)構(gòu)中不同的成員分別使用不同的內(nèi)存空間,一個(gè)結(jié)構(gòu)所占內(nèi)存空間的大小是結(jié)構(gòu)中每個(gè)成員所占內(nèi)存空間大小的總和,結(jié)構(gòu)中每個(gè)成員相互獨(dú)立;聯(lián)合所占用的內(nèi)存空間為最長(zhǎng)的成員所占用的空間。
15.D
16.A
17.B
18.C\r\n軟件工程是試圖用工程、科學(xué)和數(shù)學(xué)的原理與方法研制、維護(hù)計(jì)算機(jī)軟件的有關(guān)技術(shù)及管理方法。軟件工程的主要思想是強(qiáng)調(diào)在軟件開(kāi)發(fā)工程中需要應(yīng)用工程化的原則。軟件工程用來(lái)解決以下問(wèn)題:軟件需求的增長(zhǎng)得不到滿足、軟件開(kāi)發(fā)成本和進(jìn)度無(wú)法控制、軟件質(zhì)量難以保證、軟件不可維護(hù)或維護(hù)程度低、軟件得成本不斷提高、軟件開(kāi)發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和應(yīng)用需求的增長(zhǎng)。軟件項(xiàng)目的管理、軟件產(chǎn)品的生產(chǎn)率、軟件開(kāi)發(fā)中的技術(shù)都是軟件工程需要解決的部分問(wèn)題。因此選項(xiàng)C正確。
19.B解析:采用信息隱蔽的目的就是為了確保每個(gè)模塊的獨(dú)立性。
20.D
21.99解析:本題考查宏定義與三目運(yùn)算符的綜合用法,宏定義是原樣替換,本題中,如果a>b成立,則a+1的值為整個(gè)表達(dá)式的值,否則為b+1的值為整個(gè)表達(dá)式的值,(應(yīng)注意后面的加1)。
22.(y%4==0)&&(y%100!=0)||(y%400==0)(y%4==0)&&(y%100!=0)||(y%400==0)解析:考查邏輯表達(dá)。年號(hào)能被4整除(y%4==0)但不能被100整除(y%100!=0),兩者是與的關(guān)系,年號(hào)能被400整除即y%400==0,與前兩項(xiàng)是或的關(guān)系。
23.abcfgabcfg解析:本題考查的是字符數(shù)組用作函數(shù)參數(shù)。C語(yǔ)言中數(shù)組名可以看作該數(shù)組首地址的常量指針、因此可以直接傳遞給指針類型的參數(shù)。本題的主函數(shù)調(diào)用fun(s,3,strlen(s));后,函數(shù)中for循環(huán)就是for(i=3;i<strlen(s)-1;i++),即i從3遞增到字符數(shù)組s的長(zhǎng)度-2位置,循環(huán)中讓s[i]=s[i+2],所以函數(shù)fun()實(shí)現(xiàn)的功能簡(jiǎn)單來(lái)說(shuō)就是將字符串s下標(biāo)為p+2~k范圍的字符整體復(fù)制到字符串s下標(biāo)為p~k-2的位置上。在本題中strlen(s)返回s的長(zhǎng)度7,所以復(fù)制的字符為s[5]~s[7],即'f'、'g','\\0'三個(gè)字符,復(fù)制到s[3]~s[5],故最終輸出的字符串為abcfg(因?yàn)閟[5]為'\\0',所以后面的字符不會(huì)輸出)。
24.過(guò)程過(guò)程
25.元組元組解析:在關(guān)系型數(shù)據(jù)庫(kù)中,用二維表來(lái)表示關(guān)系,二維表的表名即關(guān)系名,二維表的行稱為關(guān)系的元組,二維表的列,稱為關(guān)系的屬性。
26.33解析:本題考查的是C語(yǔ)言逗號(hào)表達(dá)式的相關(guān)知識(shí)。程序在計(jì)算逗號(hào)表達(dá)式時(shí),從左到右計(jì)算由逗號(hào)分隔各表達(dá)式的值,整個(gè)逗號(hào)表達(dá)式的值等于其中最后一個(gè)表達(dá)式的值。本題中,首先i被賦值為2,再自加1,最后i++的值計(jì)算為3。
27.22解析:本題變量m既是外部變量(值是13),又是fun函數(shù)的局部變量(值為3)。函數(shù)fun(x*y-m)的值為7*5-3=32,在main函數(shù)中,fun(a,b)/m中的m應(yīng)取外部變量的值13,因此輸出2。
28.“filea.dat”“r”“filea.dat”,“r”解析:fopen函數(shù)的調(diào)用方式通常為fopen(文件名,使用文件方式)。本題中要求程序可以打開(kāi)filea.dat文件,并且是要讀取文件中的內(nèi)容,所以空白處應(yīng)當(dāng)填入'filea.dat','r'。
29.1000001010000010解析:運(yùn)算“&”的規(guī)則是只有當(dāng)兩個(gè)相應(yīng)的二進(jìn)制位都為1時(shí),該位的結(jié)果才為1。要保留第2、8位,只要將其與二進(jìn)制數(shù)10000010相與。
30.概念設(shè)計(jì)階段(數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段)概念設(shè)計(jì)階段(數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段)
31.n=4n=4解析:continue語(yǔ)句是結(jié)束本次循環(huán)。i=2時(shí)因i%3條件為真,故不執(zhí)行do-while語(yǔ)句中的n++,只執(zhí)行一次n++得n=1;i=3時(shí),i%3條件為假,執(zhí)行兩次n++得n=3;i=4時(shí),i%3條件為真,執(zhí)行一次n++得n=4。
32.str[i]或str+iistr[i]或str+i\r\ni
33.malloc(11)或malloc(sizeof(char*)11)malloc(11)或malloc(sizeof(char*)11)解析:該題主要考查malloc函數(shù)的使用。一個(gè)字符在內(nèi)存中占一個(gè)字節(jié),因此malloc的參數(shù)為11。也可按指向字符指針的大小來(lái)分配。
34.3131解析:在函數(shù)調(diào)用時(shí),形參值和改變,不會(huì)改變實(shí)參的值。
35.99解析:p是一個(gè)指針變量,指向數(shù)組a的元素a[3],所以b=p[5]=a[5+3]=a[8]=9。
36.p=(double*)malloc(sizeof(double)):或p=(double*)malloc(8);p=(double*)malloc(sizeof(double)):或p=(double*)malloc(8);解析:malloc()函數(shù)只有一個(gè)參數(shù),該參數(shù)指定了需要分配多少字節(jié)的內(nèi)存。然后將分配好的內(nèi)存塊的首地址作為void*(未知類型指針)返回.故標(biāo)準(zhǔn)的調(diào)用形式應(yīng)該寫(xiě)成:
p(double*)malloc(sizeof(double));
37.1371513715解析:本題中,定義了一個(gè)整型數(shù)組n并初始化,在for循環(huán)語(yǔ)句中,再對(duì)數(shù)組中各元素重新賦值。循環(huán)執(zhí)行第一次時(shí),n[1]=n[0]*2+1=0+1=1,printf函數(shù)輸出1,然后i的值加1,比較i<=4成立,繼續(xù)執(zhí)行循環(huán)體語(yǔ)句,使后一個(gè)數(shù)為前一個(gè)數(shù)的2倍加1。所以最后輸出為1、3、7、15。
38.99解析:本題考查函數(shù)的綜合知識(shí)。首先,我們可以利用強(qiáng)制轉(zhuǎn)換類型轉(zhuǎn)換運(yùn)算符,將一個(gè)表達(dá)式轉(zhuǎn)換成所需類型。如:(double)a是將a轉(zhuǎn)換成double類型;(int)(x+y)是將x+y的值轉(zhuǎn)換成整型。
本題可按部就班地逐步運(yùn)算:
fun((int)fun(a+c,b),a-c)
fun((int)fun(10,5),2-8)
fun((int)15.000000,-6)
fun(15,-6)
9
39.gaegae解析:主函數(shù)中定義了字符數(shù)組a和b,其初值分別為L(zhǎng)anguage和Programe,然后定義了兩個(gè)指針變量p1和p2,并讓它們指向a和b。通過(guò)分析可知下面的for循環(huán)中,每循環(huán)一次就將p1+k和p2+k所指向的字符進(jìn)行比較,如果相等,輸出該字符,循環(huán)共執(zhí)行8次,顯然Language和Programe中只有字符gae相等,所以最后轄出為gae。
40.m=fun(a4)+fun(b4)-fun(a+b3);m=fun(a,4)+fun(b,4)-fun(a+b,3);解析:函數(shù)fun(x,n)的作用是求xn,因此a4應(yīng)該調(diào)用函數(shù)fun(a,4),b4應(yīng)該調(diào)用函數(shù)fun(b,4),(a+b)3應(yīng)該調(diào)用函數(shù)fun(a+b,3),所以題目中的數(shù)學(xué)表達(dá)式,寫(xiě)成C程序中的語(yǔ)句為m=fun(a,4)+fun(b,4)-fun(a+b,3)。
41.B
42.A解析:本題考查的重點(diǎn)是對(duì)static變量以及全局變量的理解。static變量是函數(shù)或文件中的永久變量。本題中staticinta=2語(yǔ)句定義了一個(gè)static局部變量,編譯程序?yàn)槠渖捎谰么鎯?chǔ)單元,即調(diào)用函數(shù)fun時(shí),其值一直都保存著,而不是使用函數(shù)外所賦的值(盡管開(kāi)頭定義了一個(gè)同名的全局變量)。在主函數(shù)中,for循環(huán)進(jìn)行兩次,第一次循環(huán)得f(3)=3+1+2=6,從而k+=f(3)=6,第二次循環(huán)由于static局部變量a變成了3,從而f(3)的值為7,故k+=f(3)=13,再執(zhí)行k+=a時(shí),此時(shí)a的值為全局變量,其值為1,故k的值為14,選項(xiàng)A是正確的。
43.A解析:根據(jù)題意,p和q為整型指針,分別指向整型變量n2和n1,選項(xiàng)B是將q賦給p,即p指向n1,選項(xiàng)C是將n1的地址賦給n2,選項(xiàng)D是將n2的值賦給p,均與n2=n1不等價(jià)。只有選項(xiàng)A中,*p即n2,*q即n1,*p=*q即等價(jià)于n2=n1。
44.D解析:實(shí)體集之間一對(duì)一的聯(lián)系不一定是一一對(duì)應(yīng)的關(guān)系。例如,在一個(gè)教室中,實(shí)體集“學(xué)生”與實(shí)體集“座位”之間是一對(duì)一的聯(lián)系。因?yàn)閷?shí)體集“學(xué)生”中的每一個(gè)學(xué)生最多與實(shí)體集“座位”中的一個(gè)座位有聯(lián)系(學(xué)生坐在該座位上);并且,實(shí)體集“座位”中中的每一個(gè)座位也最多與實(shí)體集“學(xué)生”中的一個(gè)學(xué)生有聯(lián)系(座位上坐著該學(xué)生)。但該教室中的學(xué)生與座位之間不一定是一一對(duì)應(yīng)的關(guān)系,因?yàn)橛锌赡苣承┳皇强盏模瑳](méi)有學(xué)生去坐。因此,選項(xiàng)A)中的說(shuō)法是錯(cuò)誤的。在關(guān)系模型中,由于使用表格數(shù)據(jù)來(lái)表示實(shí)體之間的聯(lián)系,因此,可以直接描述多對(duì)多的實(shí)體聯(lián)系。因此,選項(xiàng)B)中的說(shuō)法也是錯(cuò)誤的。關(guān)系模型是與格式化模型完全不同的數(shù)據(jù)模型,它與層次模型、網(wǎng)狀模型相比有著本質(zhì)的區(qū)別。關(guān)系模型是用表格數(shù)據(jù)來(lái)表示實(shí)體本身及其相互之間的聯(lián)系,它是建立在數(shù)學(xué)理論基礎(chǔ)上的。因此,選項(xiàng)C)中的說(shuō)法也是錯(cuò)誤的。
45.B解析:此題為數(shù)據(jù)庫(kù)的基本概念,可以對(duì)照辦工軟件的電子表格進(jìn)行如下理解:選擇:我們根據(jù)某條件選擇出一行或多行元組(一個(gè)元組即為二維表中的一行)。投影:按字段(也稱屬性,比如學(xué)生關(guān)系(學(xué)號(hào),姓名,出生年月,性別),學(xué)號(hào)、姓名…都是屬性)選取一列或多列(一個(gè)二維表中所有元組在某一列或幾列上截取出來(lái))。連接:2個(gè)或2個(gè)以上的表連接組成一張新的表,通常有條件連接。比如學(xué)生關(guān)系(學(xué)號(hào),姓名,系號(hào)),又有一張系表(系號(hào),系名,主任),2張表可以合并為一張這樣的表(學(xué)號(hào),姓名,系號(hào),系名,主任)。
46.D解析:該程序的執(zhí)行過(guò)程是:首先聲明整型指針變量P和整型變量i,字符型指針變量q和字符型變量ch,將i的地址賦給指針變量p,將ch的地址賦給指針變量q,將40賦給*p,此時(shí),q已經(jīng)指向了一個(gè)具體的存儲(chǔ)單元,但ch的值不確定,即*p沒(méi)有確定的值,所以不能執(zhí)行*p=*q語(yǔ)句。
47.C解析:alpha[0]指向“ABCD”的首地址;alpha[1]指向“EFGH”的首地址;alpha[2]指向“IJKL”的首地址,依此類推。當(dāng)執(zhí)行p=alpha后,p指向指針數(shù)組alpha的首地址。for循環(huán)中輸出了4個(gè)字符串。
48.C解析:函數(shù)fun(int*x,inti)的功能是把數(shù)組元素x[i]的值加1賦給x[0]。所以在主函數(shù)中執(zhí)行fun(a,2)后,數(shù)組元數(shù)a[0]的值等于4。然后在for循環(huán)語(yǔ)句中,輸出數(shù)組a中的前4個(gè)元素的值,分別是4,2,3,4。
49.D解析:*p=x的作用是將x的首地址賦給指針變量p。選項(xiàng)A)正確,*(P++)中括號(hào)內(nèi)的++是在P的后面,所以它先取*P的值x[0],再執(zhí)行p++;選項(xiàng)B)正確,p+i表示x[i]的地址,*(p+i)表示x[i]的值;選項(xiàng)C)中的*和++處于同一優(yōu)先級(jí)別,而結(jié)合方向?yàn)樽杂叶螅虼?p++相當(dāng)于*(p++),與選項(xiàng)A)相同;選項(xiàng)D)中的(*p)++是使*p的值+1,即x[0]的值加1,它不能實(shí)現(xiàn)指針的移動(dòng),每次循環(huán)只是x[0]的值在改變,而P的值并沒(méi)有改變,所以不能實(shí)現(xiàn)6個(gè)元素的輸出。
50.C解析:解答本題,首先要明白在對(duì)指針進(jìn)行加、減運(yùn)算的時(shí)候,數(shù)字“1”不是十進(jìn)制的數(shù)“1”,而是指'1'個(gè)存儲(chǔ)單元長(zhǎng)度,而1個(gè)存儲(chǔ)單元長(zhǎng)度占多少存儲(chǔ)空間,應(yīng)該視具體情況而定。如果基本類型是int型,移動(dòng)1個(gè)存儲(chǔ)單元的長(zhǎng)度就是位移2個(gè)字節(jié),如果基本類型是float型,移動(dòng)1個(gè)存儲(chǔ)單元的長(zhǎng)度就是位移4個(gè)字節(jié)。所以p+13所指向的數(shù)組元素的地址:300H+(13*上標(biāo))4)H=352H。
51.B解析:所謂的線性結(jié)構(gòu):如果一個(gè)非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個(gè)條件,即
1)有且只有一個(gè)根結(jié)點(diǎn);
2)每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件。同時(shí)滿足兩個(gè)條件的只有線性表,而其他三種數(shù)據(jù)結(jié)構(gòu)的結(jié)點(diǎn)可能存在多個(gè)前件或后件,所以不是線性結(jié)構(gòu)。
52.A\nA。【解析】二分法查找只適用于順序存儲(chǔ)的有序線性表,對(duì)于順序存儲(chǔ)的非有序線性表和線性鏈表,都只能采用順序查找。
\n
53.B解析:在if語(yǔ)句中又包含—個(gè)或多個(gè)if語(yǔ)句稱為if語(yǔ)句的嵌套。應(yīng)當(dāng)注意if與else的配對(duì)關(guān)系,在C語(yǔ)言中,從最內(nèi)層開(kāi)始,else總是與它上面最近的(未曾配對(duì)的)if配對(duì)。
54.B解析:考查了測(cè)字符串長(zhǎng)度函數(shù)strlen。如果一個(gè)字符數(shù)組中存放一個(gè)字符串,則函數(shù)strlen的值為'\\0'之前的全部字符個(gè)數(shù),也包括空格在內(nèi)。
55.D解析:選項(xiàng)A)的循環(huán)表達(dá)式條件永久為1,由于小于100的數(shù)與100取余不超過(guò)99,所以在循環(huán)體內(nèi)表達(dá)式i%100+1的值永遠(yuǎn)不大于100,break語(yǔ)句永遠(yuǎn)不會(huì)被執(zhí)行,所以是死循環(huán);選項(xiàng)B)的括號(hào)內(nèi)沒(méi)有能使循環(huán)終止的條件,是死循環(huán);選項(xiàng)C)中先執(zhí)行k++,使k=10001,陷入死循環(huán);選項(xiàng)D)中的s從36開(kāi)始,每循環(huán)一次就減小1,直到s為0,循環(huán)結(jié)束,不會(huì)構(gòu)成死循環(huán)。
56.D
57.C解析:putchar(s)的功能是把字符s輸出到標(biāo)準(zhǔn)輸出設(shè)備;puts(s1)是把s1指向的字符串輸出到標(biāo)準(zhǔn)輸出設(shè)備。
58.A算法的有窮性,是指算法必須能在有限的時(shí)間內(nèi)做完,即算法必須能在執(zhí)行有限個(gè)步驟之后終止。
59.D解析:快速排序的基本思想是,通過(guò)一趟排序?qū)⑴判蛴涗浄指畛瑟?dú)立的兩部
分,其中一部分記錄的關(guān)鍵字均比另一部分記錄的關(guān)鍵字小,再分別對(duì)這兩部分記錄繼
續(xù)進(jìn)行排序,以達(dá)到整個(gè)序列有序;插入排序的基本操作是指將無(wú)序序列中的各元素依
次插入到已經(jīng)有序的線性表中,從而得到一個(gè)新的序列;選擇排序的基本思想是:掃描整
個(gè)線性表,從中選出最小的元素,將它交換到表的最前面(這是它應(yīng)有的位置),然后對(duì)剩
下的于表采用同樣的方法,直到表空為止;歸并:排序是將兩個(gè)或兩個(gè)以上的有序表組合
成一個(gè)新的有序表。
注意:各種排序方法實(shí)現(xiàn)過(guò)程及實(shí)現(xiàn)機(jī)制。
60.B解析:因?yàn)樽兞康某跏贾捣謩e為k=5,n=0,所以程序第1次進(jìn)入循環(huán)時(shí),執(zhí)行default語(yǔ)句,輸出0,k減1;這時(shí)n=0,k=4,程序進(jìn)行第2次循環(huán),執(zhí)行case4:這個(gè)分支,結(jié)果是n=2,k=3,打印出2:這時(shí)n=2,k=3,程序進(jìn)行第3次循環(huán),執(zhí)行case3:這個(gè)分支,結(jié)果是n=3,k=2,打印出3;這時(shí)n=3,k=2,程序然后進(jìn)行第4次循環(huán),執(zhí)行case2:case4:這個(gè)分支,結(jié)果是n=5,k=1,打印出5,這時(shí)因?yàn)閚=5不滿足n<5的循環(huán)條件,因此退出循環(huán),程序運(yùn)行結(jié)束。所以在屏幕上打印出的結(jié)果是0235。
61.D根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。線性結(jié)構(gòu)表示數(shù)據(jù)元素之間為一對(duì)一的關(guān)系,非線性結(jié)構(gòu)表示數(shù)據(jù)元素之間為一對(duì)多或者多對(duì)一的關(guān)系。根據(jù)各種結(jié)構(gòu)的定義知二叉樹(shù)是一種非線性結(jié)構(gòu)。
\n
62.A在函數(shù)調(diào)用前,需要定義或聲明,A)選項(xiàng)錯(cuò)誤。
63.B解析:在數(shù)據(jù)庫(kù)系統(tǒng)中,由于采用的數(shù)據(jù)模型不同,相應(yīng)的數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)也不同。目前常用的數(shù)據(jù)模型有3種:層次模型、網(wǎng)狀模型和關(guān)系模型。在層次模型中,實(shí)體之間的聯(lián)系是用樹(shù)結(jié)構(gòu)來(lái)表示的,其中實(shí)體集(記錄型)是樹(shù)中的結(jié)點(diǎn),而樹(shù)中各結(jié)點(diǎn)之間的連線表示它們之間的關(guān)系。所以,本題的正確答案是B。
64.Da=“ABCD”書(shū)寫(xiě)錯(cuò)誤,因?yàn)椤?”左邊不能出現(xiàn)常量;數(shù)組名S是代表S數(shù)組首地址常量,而不是變量;字符串只有在定義時(shí)維數(shù)可以省略。
65.A
66.D解析:+=、-=、=等符號(hào)優(yōu)先級(jí)相同結(jié)合性是由右至左,所以選D。
67.D在程序設(shè)計(jì)中,各模塊間的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)聚、低耦合,以有利于提高模塊的獨(dú)立性。耦合性與內(nèi)聚性是模塊獨(dú)立的兩個(gè)定性標(biāo)準(zhǔn),是互相關(guān)聯(lián)的。
68.D形參是函數(shù)定義時(shí)由用戶定義的形式上的變量,實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在C語(yǔ)言中,實(shí)參向形參傳送數(shù)據(jù)的方式是“值傳遞”。因此D選項(xiàng)正確。
69.A\n此題考查a--和--a之間的區(qū)別,當(dāng)while(a--)為真循環(huán)執(zhí)行,a--是執(zhí)行再減1,所以答案選擇A。
\n
70.B本題考查3個(gè)知識(shí)點(diǎn):將一個(gè)字符賦給一個(gè)字符變量時(shí),是將該字符對(duì)應(yīng)的ASCIl碼存儲(chǔ)到內(nèi)存單元中;常見(jiàn)ASCII碼的值如A和a;只要邏輯與運(yùn)算符&&的兩個(gè)運(yùn)算對(duì)象都為真時(shí),返回值就是1。
71.D
72.D
73.C耦合性與內(nèi)聚性是模塊獨(dú)立與否的兩個(gè)定性標(biāo)準(zhǔn),耦合與內(nèi)聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)蒙、低耦合,即減弱模塊之間的耦合性而提高模塊內(nèi)的內(nèi)聚性,這樣有利于提高模塊的獨(dú)立性。
74.A
75.D本題考查格式輸入。程序中定義了一個(gè)字符數(shù)組s,兩個(gè)整型變量i和c。隨后調(diào)用了三次格式輸入函數(shù)scanf。第一個(gè)scanf函數(shù)只能輸入一個(gè)字符型的數(shù)據(jù),第二個(gè)函數(shù)是輸入一個(gè)整型數(shù)據(jù),第三個(gè)函數(shù)是輸入一個(gè)字符串。執(zhí)行代碼時(shí),輸入123<空格>456<空格>789<回車>,將1作為一個(gè)字符用第一個(gè)scanf函數(shù)輸入,23作為一個(gè)整型數(shù)據(jù)由第二個(gè)函數(shù)輸入,而字符串的輸入則是以非空白字符開(kāi)始到第一個(gè)空白字符結(jié)束,將456作為字符串由第三個(gè)scanf函數(shù)輸入到數(shù)組中,該函數(shù)在第二個(gè)空格處結(jié)束。
76.Areturni吾句結(jié)束函數(shù).即使函數(shù)中有多個(gè)retum語(yǔ)句,也只會(huì)執(zhí)行一個(gè)。所以選項(xiàng)A)錯(cuò)誤。
77.B黑盒測(cè)試法指的是根據(jù)程序的外部功能,把程序本身看成一個(gè)黑盒子,設(shè)計(jì)測(cè)試用例來(lái)驗(yàn)證程序外部功能的正確性。
78.A詳細(xì)設(shè)計(jì)的任務(wù)是為軟件結(jié)構(gòu)圖中而非總體結(jié)構(gòu)圖中的每一個(gè)模塊確定實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)工具表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié),所以A錯(cuò)誤。
79.B
80.C
81.(1)錯(cuò)誤:b[k]=p;
正確:b[k]=*p;
(2)錯(cuò)誤:b[k]=ˊ\0ˊ;
正確:b[k]=ˊˊ;k++
【解析】此題,首先要知道函數(shù)的參數(shù)類型可以是整型、實(shí)型、字符型和指針型。此處正是指針類型變量作為函數(shù)的參數(shù),因此應(yīng)該是“b[k]=*p”,而不是“b[k]=p”;題目要求在3個(gè)字符后加1個(gè)空格,通過(guò)條件表達(dá)式“i<=3&&*p”,①找到不需移動(dòng)的字符(從第4個(gè)位置開(kāi)始。每隔3個(gè)字符)并將其存入數(shù)組b中;②此時(shí)下標(biāo)落到了需要移動(dòng)的字符的位置,在數(shù)組b中此位置插入空格,具體語(yǔ)句為:“b[k]=ˊˊ;k++”,繼續(xù)執(zhí)行①直到處理到字符串p的最后一個(gè)字符。
82.
【解析】此題考查用for循環(huán)遍歷字符串和通過(guò)條件表達(dá)式*ss!=ˊ\0ˊ來(lái)判斷字符串是否結(jié)束。給字符串加上結(jié)束標(biāo)識(shí)ˊ\0ˊ,通過(guò)for循環(huán)遍歷字符串中每一個(gè)字符,在遇到結(jié)束標(biāo)識(shí)前,如果遇到指定(即用戶輸入)字符,變量i加1,最后將變量i返回,即用戶輸入字符在字符串中出現(xiàn)的次數(shù)。
2022-2023年廣東省肇慶市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.已有定義:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判斷c中的字符是否為大寫(xiě)字堪的表達(dá)式是()。
A.isupper(c)B.A<=c<=ZC.A<=c&&c<=ZD.c<=(z-32)&&(a-32)<=c
2.有以下程序:#include<stdio.h>main(){FILE*fp;charstr[10];fp=fopen(“myfile.dat”,“w”);fputs(“abc”,fp);fclose(fp);fp=fopen(“myfile.dat”,“a+”);fprintf(fp,“%d”,28);rewind(fp);fscanf(fp,“%s”,str);puts(str);fclose(fp);}程序的運(yùn)行結(jié)果是()。
A.abcB.28cC.abc28D.因類型不一致而出錯(cuò)
3.fun函數(shù)的功能是:通過(guò)鍵盤(pán)輸入給x所指的整型數(shù)組所有元素賦值。在下劃線處應(yīng)填寫(xiě)的是()。#include<stdio.h>#defineN5voidfun(intx[N]){intm;for(m=N-t;m>=O;m-)scanf("%d",____);}A.%&X[++m]B.&x[m+1]C.x+(m++)D.x+m
4.一個(gè)模塊直接調(diào)用的下層模塊的數(shù)目稱為模塊的()。
A.扇入數(shù)B.扇出數(shù)C.寬度D.作用域
5.
6.
7.下列4個(gè)關(guān)于C語(yǔ)言的結(jié)論中錯(cuò)誤的是()。
A.可以用do…while語(yǔ)句實(shí)現(xiàn)的循環(huán)一定可以用while語(yǔ)句實(shí)現(xiàn)
B.可以用for語(yǔ)句實(shí)現(xiàn)的循環(huán)一定可以用while語(yǔ)句實(shí)現(xiàn)
C.可以用while語(yǔ)句實(shí)現(xiàn)的循環(huán)一定可以用for語(yǔ)句實(shí)現(xiàn)
D.do…while語(yǔ)句與while語(yǔ)句的區(qū)別僅是關(guān)鍵字“while”出現(xiàn)的位置不同
8.有嵌套的if語(yǔ)句:if(a<b) if(a<c)k=a; elsek=c;elseif(b<c)k=b;elsek=c;以下選項(xiàng)中與上述if語(yǔ)句等價(jià)的語(yǔ)句是()。
A.k=(a<b)?((b<c)?a:b):((b>c)?b:c);
B.k=(a<b)?((a<c)?a:c):((b<c)?b:c);
C.k=(a<b)?a:b;k=(b<c)?b:c;
D.k=(a<b)?a:b;k=(a<c)?a:c;
9.以下定義數(shù)組的語(yǔ)句錯(cuò)誤的是()。
A.intnum[]={1,2,3,4,5,6};
B.intnum[][3]={{1,2},3,4,5,6};
C.intnum[2][4]={{1,2},{3,4},{5,6}};
D.intnum[][4]={1,2,3,4,5,6};
10.若有說(shuō)明charc[7]={'s','t','r','i','n','g'};則對(duì)元素的非法引用是()。
A.c[0]B.c[9-6]C.c[4*2]D.c[2*3]
11.在inta=3,int*p=&a;中,*p的值是()。
A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3
12.將兩個(gè)字符串連接起來(lái)組成一個(gè)字符串時(shí),選用()函數(shù)。A.strlen()B.strcpy()C.strcat()D.strcmp()
13.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為節(jié)省時(shí)間,應(yīng)該采用的算法是()
A.直接選擇排序B.堆排序C.快速排序D.直接插入排序
14.下列程序的輸出結(jié)果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;chark;}un;printf("%d,%d\n",sizeof(structst),sizeof(un));}
A.6,2B.6,4C.8,4D.8,6
15.在Windows環(huán)境下,單擊當(dāng)前應(yīng)用程序窗口中的“關(guān)閉”按鈕,其功能是A.將當(dāng)前應(yīng)用程序轉(zhuǎn)為后臺(tái)運(yùn)行
B.退出Windows后再關(guān)機(jī)
C.退出Windows后重新啟動(dòng)計(jì)算機(jī)
D.終止當(dāng)前應(yīng)用程序的運(yùn)行
16.關(guān)系R和關(guān)系S的并運(yùn)算是______。
A.由關(guān)系R和關(guān)系S的所有元組合并組成的集合,再刪去重復(fù)的元組
B.由屬于R而不屬于S的所有元組組成的集合
C.由既屬于R又屬于S的元組組成的集合
D.由R和S的元組連接組成的集合
17.以下程序是用來(lái)計(jì)算兩個(gè)非負(fù)數(shù)之間的最大公約數(shù):我們假設(shè)x,y中最大的那個(gè)數(shù)的長(zhǎng)度為n,基本運(yùn)算時(shí)間復(fù)雜度為O(1),那么該程序的時(shí)間復(fù)雜度為()A.O(1)B.O(logn)C.O(n)D.O(n^2)
18.下列描述中正確的是______。A.軟件工程只是解決軟件項(xiàng)目的管理問(wèn)題
B.軟件工程主要解決軟件產(chǎn)品的生產(chǎn)率問(wèn)題
C.軟件工程的主要思想是強(qiáng)調(diào)在軟件開(kāi)發(fā)過(guò)程中需要應(yīng)用工程化原則
D.軟件工程只是解決軟件開(kāi)發(fā)中的技術(shù)問(wèn)題
19.信息隱蔽的概念與下述哪一種概念直接相關(guān)?
A.軟件結(jié)構(gòu)定義B.模塊獨(dú)立性C.模塊類型的劃分D.模塊耦合度
20.由權(quán)值分別為3,8,6,2,5的葉子結(jié)點(diǎn)生成一棵哈夫曼樹(shù),它的帶權(quán)路徑長(zhǎng)度為_(kāi)_______。
A.24B.48C.72D.53
二、2.填空題(20題)21.以下程序的運(yùn)行結(jié)果是【】。
#defineMAX(a,b)(a>b?a:b)+1
main()
{inti=6,j=8,k;
printf("%d\n",MAX(i,j));
}
22.下列表達(dá)式用于判斷y是否為閏年。閏年的判斷條件是:年號(hào)能被4整除但不能被100整除或年號(hào)能被400整除,請(qǐng)?zhí)羁誣_____。
23.以下程序運(yùn)行后的輸出結(jié)果是______。
#include<string.h>
voidfun(char*s,intp,intk)
{inti;
for(i=p;i<k-1;i++)s[i]=s[i+2];
}
main()
{chars[]="abcdefg";
fun(s,3,strlen(s));puts(s);
}
24.子程序通常分為兩類:【】和函數(shù),前者是命令的抽象,后者是為了求值。
25.在關(guān)系模型中,二維表的行稱為_(kāi)_____。
26.設(shè)變量已正確定義為整型,則表達(dá)式n=i=2,++i,i++的值為【】。
27.下面程序執(zhí)行后輸出的結(jié)果是【】。
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);
}
main()
{inta=7,b=5;
printf("%d\n",fun(a,b)/m);
}
28.以下程序的作用是:從名為filea.dat的文本文件中逐個(gè)讀入字符并顯示在屏幕上。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE*fp;charch;
fp=fopen(【】);
ch=fgetc(fp);
while(!feof(fp)){putchar(ch);ch=fgetc(fp);}
putchar('\n');fclose(fp);
}
29.設(shè)有chara,b;,若要通過(guò)a&b運(yùn)算屏蔽掉a中的其他位,只保留第2位和第8位(右起為第1位),則b的二進(jìn)制是【】。
30.數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下6個(gè)設(shè)計(jì)階段:需求分析階段、______、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。
31.有以下程序:
main()
{inti,n=0;
for(i=2;i<5;i++)
{do
{if(i%3)continue;
n++;
}while(!i);
n++;
}
printf("n=%d\n",n);
}
程序執(zhí)行后輸出結(jié)果是【】。
32.mystrlen函數(shù)的功能是計(jì)算str所指字符串的長(zhǎng)度,并作為函數(shù)值返回。請(qǐng)?zhí)羁铡?/p>
intmystrlen(char*str)
{inti;
for(i=0;【】!='\0';i++);
return(【】);
}
33.用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間。
st=(char*)【】;
34.以下程序的輸出結(jié)果是【】。
fun(intx,inty,intz)
{z=x*x+y*y;}
main()
{inta=31;
fun(6,3,a)
printf("%d,a)
}
35.有以下程序段:
inta[l0]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;
b=p[5];
b中的值是【】。
36.已有定義:double*p;,請(qǐng)寫(xiě)出完整的語(yǔ)句,利用malloc函數(shù)使p指向一個(gè)雙精度型的動(dòng)態(tài)存儲(chǔ)單元______。
37.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{inti,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
{n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
38.以下程序的輸出結(jié)果是【】。
floatfun(intx,inty)
{return(x+y);}
main()
{inta=2,b=5,c=8;
printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}
39.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{chara[]="Language",b[]="Pragrame";
char*p1,*p2;intk;
p1=a;p2=b;
for(k=0;k<=7;k++)
if(*(p1+k)==*(p2+k))
printf("%c",*(p1+k));
}
40.函數(shù)fun的功能是計(jì)算xn。
doublefun(doublex,intn)
{inti;doubley=1;
for(i=1;i<=n;i++)y=y*x;
returny;
}
主函數(shù)中已正確定義m、a、b變量并賦值,并調(diào)用fun函數(shù)計(jì)算:m=a4+b4-(a+b)3。實(shí)現(xiàn)這一計(jì)算的函數(shù)調(diào)用語(yǔ)句為【】。
三、1.選擇題(20題)41.下列敘述中正確的是()。
A.調(diào)用printf()函數(shù)時(shí),必須要有輸出項(xiàng)
B.使用putchar()函數(shù)時(shí),必須在之前包含頭文件stdio.h
C.在C語(yǔ)言中,整數(shù)可以以二進(jìn)制、八進(jìn)制或十六進(jìn)制的形式輸出
D.調(diào)節(jié)getchar()函數(shù)讀入字符時(shí),可以從鍵盤(pán)上輸入字符所對(duì)應(yīng)的ASCII碼
42.有以下程序:#include<stdio.h>inta=1;intfun(intC){staticinta=2;c=c+1;return(a++)+c;}main(){inti,k=0;for(i=0;i<2;i++){inta=3;k+=f(A);}k+=a;printf("%d\n",k);}程序的運(yùn)行結(jié)果是()。
A.14B.15C.16D.17
43.設(shè)有定義:intn1=0,n2,*P=&n2,*q=&n1;,以下賦值語(yǔ)句中與n2=n1;語(yǔ)句等價(jià)的是()。
A.*p=*q;B.p=q;C.*p=&n1;D.p=*q;
44.下列敘述中正確的是()。A.實(shí)體集之間一對(duì)一的聯(lián)系實(shí)際上就是一一對(duì)應(yīng)的關(guān)系
B.關(guān)系模型只能處理實(shí)體集之間一對(duì)一的聯(lián)系
C.關(guān)系模型屬于格式化模型
D.以上三種說(shuō)法都不對(duì)
45.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專門(mén)關(guān)系運(yùn)算包括()。
A.排序、索引、統(tǒng)計(jì)B.選擇、投影、連接C.關(guān)聯(lián)、更新、排序D.顯示、打印、制表
46.以下程序有錯(cuò),錯(cuò)誤原因是main(){int*p,i;char*q,ch;p=&i;q=&ch;*p=40;*p=*q;……}
A.p和q的類型不一致,不能執(zhí)行*p=*q;語(yǔ)句
B.*p中存放的是地址值,因此不能執(zhí)行*p=40;語(yǔ)句
C.q沒(méi)有指向具體的存儲(chǔ)單元,所以*q沒(méi)有實(shí)際意義
D.q雖然指向了具體的存儲(chǔ)單元,但該單元中沒(méi)有確定的值,所以執(zhí)行*p=*q;沒(méi)有意義,可能會(huì)影響后面語(yǔ)句的執(zhí)行結(jié)果
47.以下程序輸出的結(jié)果為_(kāi)_____。main(){char*alpha[6]={"ABCD","EFGH","IJKL","MNOP","QRST","UVWX");char**p;inti;p=alpha;for(i=0;i<4;i++)printf("%s",p[i]);}
A.ABCDEFGHIJKLB.ABCDC.ABCDEFGHIJKLMNOPD.AEIM
48.有以下程序:#include<stdio.h>#defineN8voidfun(int*x,inti){*x=*(x+i)+1;}main(){inta[N]={1,2,3,4,5,6,7,8},i;fun(a,2);for(i=0;i<N/2;i++){printf("%d",a[i]);}printf("\n");}程序運(yùn)行后的輸出結(jié)果是()。
A.1313B.3234C.4234D.1234
49.設(shè)有定義語(yǔ)句:intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數(shù)組6個(gè)元素中的值,不能完成此操作的語(yǔ)句是()。
A.for(i=0;i<6;i++)printf("%2d",*(p++));
B.for(i=0;i<6;i++)printf("%2d",*(p+i));
C.for(i=0;i<6;i++)printf("%2d",*p++);
D.for(i=0;i<6;i++)printf("%2d",(*p)++);
50.若有定義floata[15],*p=a;,且數(shù)組a的首地址為300H,則p+13所指向的數(shù)組元素的地址為()。
A.334HB.30DHC.352HD.31AH
51.以下數(shù)據(jù)結(jié)構(gòu)中屬于線性數(shù)據(jù)結(jié)構(gòu)的是
A.集合B.線性表C.二叉樹(shù)D.圖
52.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。
A.順序存儲(chǔ)的有序線性表B.結(jié)性鏈表C.二叉鏈表D.有序線性鏈表
53.為了避免嵌套的if-else的二義性,C語(yǔ)言規(guī)定:else與______配對(duì)。
A.縮排位置相同的ifB.其之前最近的ifC.其之后最近的ifD.同一行上的if
54.設(shè)已執(zhí)行預(yù)編譯命令#include<string.h>,以下程序段的輸出結(jié)果是
chars[]="anapple";
printf("%d\n",strlen(s));
A.7B.8C.9D.10
55.在下列選項(xiàng)中,沒(méi)有構(gòu)成死循環(huán)的是()。
A.inti=100;while(1){i=i%100+1;if(i>100)break;}
B.for(;;);
C.intk=10000;do{k++;}while(k>10000);
D.ints=36;while(s)--s;
56.若要“向文本文件尾增加數(shù)據(jù)”,在fopen函數(shù)中應(yīng)使用的文件方式是()
A.ab+B.aC.abD.a+
57.下列的程序用來(lái)輸出兩個(gè)字符串前7個(gè)字符中對(duì)應(yīng)相等的字符及其位置號(hào),程序空白處應(yīng)該填寫(xiě)的是()。#include<stdio.h>main(){Charsl[]="Chinese",s2[]="japnese";inti;for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++)if(s1[i]=s2[i]&&i<7)____________________;}
A.putchar(s2[i];putchar(i)
B.puts(s1[i],i)
C.printf("%c%d\n",s2[i],i)
D.printf("%c",s1[i]);printf("%d\n",i)
58.算法的有窮性是指A.算法程序的運(yùn)行時(shí)間是有限的
B.算法程序所處理的數(shù)據(jù)量是有限的
C.算法程序的長(zhǎng)度是有限的
D.算法只能被有限的用戶使用
59.在下列幾種排序方法中,要求內(nèi)存量最大的是______。
A.插入排序B.選擇排序C.快速排序D.歸并排序
60.有下列程序:
main()
{intk=5,n=0;
do
{switch(k)
{case1:case3:n+=1;k--;break;
default:n=0;k--;
Case2:case4;n+=2;k--;break;
}
printf("%d",n);
}while(k>0&&n<5);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.235B.0235C.02356D.2356
四、選擇題(20題)61.下列數(shù)據(jù)結(jié)構(gòu)中,屬于非線性結(jié)構(gòu)的是()。
A.帶鏈隊(duì)列B.循環(huán)隊(duì)列C.帶鏈棧D.二叉樹(shù)
62.若各選項(xiàng)中所用變量已正確定義,函數(shù)fun中通過(guò)return語(yǔ)句返回一個(gè)函數(shù)值,以下選項(xiàng)中錯(cuò)誤的程序是
63.用樹(shù)形結(jié)構(gòu)來(lái)表示實(shí)體之間聯(lián)系的模型稱為()。
A.關(guān)系模型B.層次模型C.網(wǎng)狀模型D.數(shù)據(jù)模型
64.下列判斷正確的是()。
A.chara="ABCD":等價(jià)于char*a;*a="ABCD":
B.charstr[10]={"ABCD"}:等價(jià)于charstr[10];str[]={"ABCD"};
C.char*s="ABCD":等價(jià)于chars;*s="ABCD";
D.charc[5]="ABCD",d[5]="ABCD":等價(jià)于charc[5]-d[5]="ABCD";
65.
66.表達(dá)式a+=a-=a=9的值是()。
A.9B.-9C.18D.0
67.為了提高軟件的獨(dú)立性,模塊之間最好是()。
A.控制耦合B.公共耦合C.內(nèi)容耦合D.數(shù)據(jù)耦合
68.以下敘述中錯(cuò)誤的是()。。
A.C程序必須由一個(gè)或一個(gè)以上的函數(shù)組成
B.函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語(yǔ)句存在
C.NN數(shù)NNN值,必須通過(guò)return語(yǔ)句返回
D.函數(shù)形參的值也可以傳回給對(duì)應(yīng)的實(shí)參
69.有以下程序:
#include<stdio.h>
main()
{inta=7;
while(a--);
print[("%d\n",a);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.-l
B.0
C.1
D.7
70.在執(zhí)行完下列的c語(yǔ)句段之后,則B的值是()。chara=A;intb;B=((34&&56)&&(a<b));A.0B.1C.TRUED.FALSE
71.
72.
73.軟件設(shè)計(jì)中衡量模塊獨(dú)立性的度量標(biāo)準(zhǔn)是()。
A.抽象和信息隱蔽B.局部化和封裝化C.內(nèi)聚性和耦合性D.激活機(jī)制和控制方法
74.
75.執(zhí)行下列程序時(shí)輸入:123<空格>456<空格>789<回車>,輸出結(jié)果是
main()
{chars[100];intc,i;
scanf("%c",&c);scanf("%d",&i);scanf("%s",s);
prinnf("%c,%d,%s\n",c,i,s);}
A.123,456,789B.1,456,789
C.1,23,456,789D.1,23,456
76.以下敘述中錯(cuò)誤的是()。A.用戶定義的函數(shù)中可以有多個(gè)return語(yǔ)句,以便可以調(diào)用二次返回多個(gè)函數(shù)值
B.用戶定義的函數(shù)中可以沒(méi)有return語(yǔ)句
C.用戶定義的函數(shù)中若沒(méi)有retum語(yǔ)句,則應(yīng)當(dāng)定義函數(shù)為void類型
D.函數(shù)的return語(yǔ)句中可以沒(méi)有表達(dá)式
77.在黑盒測(cè)試方法中,設(shè)計(jì)測(cè)試用例的主要根據(jù)是()。
A.程序內(nèi)部邏輯B.程序外部功能C.程序數(shù)據(jù)結(jié)構(gòu)D.程序流程圖
78.下面描述中錯(cuò)誤的是()。
A.系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細(xì)設(shè)計(jì)
B.軟件設(shè)計(jì)是將軟件需求轉(zhuǎn)換為軟件表示的過(guò)程
C.數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫(kù)設(shè)計(jì)是軟件設(shè)計(jì)的任務(wù)之一
D.PAD圖是軟件詳細(xì)設(shè)計(jì)的表示工具
79.
80.
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun()的功能是:將P所指字符串中的所有字符復(fù)制到b中,要求在每復(fù)制3個(gè)字符之后插入1個(gè)空格。
例如,若給a輸入字符串:“ABCDEFGHIJK”,調(diào)用函數(shù)后,字符數(shù)組b中的內(nèi)容為:“ABCDEFGHIJK”。
請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(shù)fun(),其功能是:求SS所指字符串中指定字符的個(gè)數(shù),并返回此值。例如,若輸入字符串“123412132”,輸入字符為“1”,則輸出3。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.B選項(xiàng)B先計(jì)算關(guān)系表達(dá)式“A<=c”的值是0還是l,再比較該值與字符z之間的大小關(guān)系,不能實(shí)現(xiàn)題目所要求的功能。
2.Cfprintf函數(shù)將內(nèi)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工作總結(jié)與工作計(jì)劃
- 師德師風(fēng)個(gè)人計(jì)劃
- 北師大八年級(jí)數(shù)學(xué)上冊(cè)實(shí)數(shù)《估算》示范課教學(xué)課件
- 公司軟件銷售工作計(jì)劃
- 全屋家具定制合同范本
- 咖啡烘焙店裝潢合作協(xié)議
- 五金委外加工合同范本
- 第2節(jié) 種子植物教學(xué)設(shè)計(jì)-2024-2025學(xué)年蘇教版生物七年級(jí)上冊(cè)
- 信息技術(shù)知識(shí)
- 《商務(wù)交際禮儀課件制作》
- 中醫(yī)24節(jié)氣課件
- 《化工安全技術(shù)》教學(xué)設(shè)計(jì)(教學(xué)教案)
- 環(huán)衛(wèi)應(yīng)急預(yù)案8篇
- 《與顧客溝通的技巧》課件
- DB14-T2980-2024低品位鋁土礦資源綜合利用技術(shù)規(guī)范
- 2024小學(xué)語(yǔ)文新教材培訓(xùn):一年級(jí)語(yǔ)文教材的修訂思路和主要變化
- 上消化道異物的內(nèi)鏡處理
- 健康教育學(xué)全套課件完整版
- 2024年遼寧省中考語(yǔ)文真題含解析
- 農(nóng)產(chǎn)品食品檢驗(yàn)員二級(jí)技師技能理論考試題含答案
- 《財(cái)政學(xué)》財(cái)政及經(jīng)管類專業(yè)全套教學(xué)課件
評(píng)論
0/150
提交評(píng)論