![2021-2022年安徽省淮南市全國計算機等級考試C語言程序設(shè)計真題(含答案)_第1頁](http://file4.renrendoc.com/view/c49a9cc9d819bb2e1a654cc7b4061d26/c49a9cc9d819bb2e1a654cc7b4061d261.gif)
![2021-2022年安徽省淮南市全國計算機等級考試C語言程序設(shè)計真題(含答案)_第2頁](http://file4.renrendoc.com/view/c49a9cc9d819bb2e1a654cc7b4061d26/c49a9cc9d819bb2e1a654cc7b4061d262.gif)
![2021-2022年安徽省淮南市全國計算機等級考試C語言程序設(shè)計真題(含答案)_第3頁](http://file4.renrendoc.com/view/c49a9cc9d819bb2e1a654cc7b4061d26/c49a9cc9d819bb2e1a654cc7b4061d263.gif)
![2021-2022年安徽省淮南市全國計算機等級考試C語言程序設(shè)計真題(含答案)_第4頁](http://file4.renrendoc.com/view/c49a9cc9d819bb2e1a654cc7b4061d26/c49a9cc9d819bb2e1a654cc7b4061d264.gif)
![2021-2022年安徽省淮南市全國計算機等級考試C語言程序設(shè)計真題(含答案)_第5頁](http://file4.renrendoc.com/view/c49a9cc9d819bb2e1a654cc7b4061d26/c49a9cc9d819bb2e1a654cc7b4061d265.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
2021-2022年安徽省淮南市全國計算機等級考試C語言程序設(shè)計真題(含答案)學(xué)校:________班級:________姓名:________考號:________一、單選題(20題)1.有以下程序:#include<stdio.h>main(){inti,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++)printf(“%d”,t[2-i][i]);}程序的運行結(jié)果是()。
A.357B.753C.369D.751
2.設(shè)有序順序表中有n個數(shù)據(jù)元素,則利用二分查找法查找數(shù)據(jù)元素X的最多比較次數(shù)不超過()。A.log2+1
B.log2(n-1)
C.log2n
D.log2(n+1)
3.下列定義數(shù)組的語句中,正確的是()。A.#defineN10?intx[N];
B.intN=10;int[N];
C.intx0..10];
D.Intx[];.
4.下列程序的輸出結(jié)果是()。main{inta,b,d=25;a=d/10%9;b=a&&(一1);printf("%d,%d\n",a,b);}A.6,1B.2,1C.6,0D.2,0
5.若有定義floata[15],*p=a;,且數(shù)組a的首地址為300H,則p+13所指向的數(shù)組元素的地址為()。
A.334HB.30DHC.352HD.31AH
6.若變量均已正確定義并賦值,以下合法的C語言賦值語句是()。
A.x=y==5;B.X=n%2.5:C.x+n=i;D.x=5=4+1:
7.若有定義“intb[8],*p=b;”,則p+6表示()。
A.數(shù)組元素b[6]的值B.數(shù)組元素b[6]的地址C.數(shù)組元素b[7]的地址D.數(shù)組元素b[0]的值加上6
8.有以下程序:voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i+=2)for(j=i+2;j<n;j+=2)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(aa,10);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");}其輸出結(jié)果是
A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.9,2,7,4,5,6,3,8,1,10,
D.1,10,3,8,5,6,7,4,9,2,
9.下列關(guān)于函數(shù)的敘述中正確的是()。A.A.每個函數(shù)都可以被其他函數(shù)調(diào)用(包括main函數(shù))
B.每個函數(shù)都可以被單獨編譯
C.每個函數(shù)都可以單獨運行
D.在一個函數(shù)內(nèi)部可以定義另一個函數(shù)
10.假定a為一個整型數(shù)組名,則元素a[4]的字節(jié)地址為()。
A.a+4B.a+8C.a+16D.a+32
11.若要求從鍵盤讀入含有空格字符的字符串,應(yīng)使用函數(shù)A.getc()B.gets()C.getchar()D.scanf()
12.已知字符A的ASCⅡ代碼值是65,字符變量c1的直是A,c2的值是D。執(zhí)行語句printf("%d,%d",c1,c2-2);后,輸出結(jié)果是()。
A.A,BB.A,68C.65,66D.65,68
13.若變量已正確定義為int型,要通過語句“scanf(“%d,%d,%d”,&a,&b,&c);”將a賦值為1、將b賦值為2、將c賦值為3,以下輸入形式中錯誤的是(注:□代表一個空格符)()。
A.1,2,3<Enter>
B.□□□1,2,3<Enter>
C.1,□□□2,□□□3<Enter>
D.1□2□3<Enter>
14.有下列程序:程序執(zhí)行后的輸出結(jié)果是()。A.efg,h,z,q,bcd
B.efg,d,zyz,wbbcd
C.efgabcdsnopqhijkIxyz,h,z,q,bcd
D.efgabcdsnopqhijkIxyz,d,zyz,w,bbcd
15.
16.有以下程序:#include<stdio.h>main(){FILE*pf;char*s1=“China”,*s2=“Beijing”;pf=fopen(“abc.dat”,“wb+”);fwrite(s2,7,1,pf);rewind(pf);/*文件位置指針回到文件開頭*/fwrite(s1,5,1,pf);fclose(pf);}程序執(zhí)行后,abc.dat文件的內(nèi)容是()。
A.ChinaB.ChinangC.ChinaBeijingD.BeijingChina
17.若要求在if后一對圓括號中表示a不等于0的關(guān)系,則能正確表示這一關(guān)系的表達式為()
A.a<>0B.!aC.a=0D.a
18.有以下程序:#include<stdio.h>#defineSUB(a)(a)-(a)main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d\n”,d);}程序的運行結(jié)果是()。
A.0B.-12C.-20D.10
19.程序設(shè)計的任務(wù)包括()。
A.編寫程序代碼并上機調(diào)試B.確定所用數(shù)據(jù)結(jié)構(gòu)C.確定所用算法D.以上選項均正確
20.設(shè)有定義:“struct{charmarkp[l2];intnuml;doublenum2;}tl,t2;”,若變量均已正確賦初值,則以下語句中錯誤的是()。
A.t1=t2;
B.t2.num1=tl.numl;
C.t2.mark=tl.mark;
D.t2.num2=tl.num2;
二、2.填空題(20題)21.在面向?qū)ο蠓椒ㄖ?,允許作用于某個對象上的操作稱為【】。
22.若a是血型變量,且a的初值為4,則計算a+=a-=a*a表達式后a的值為______。
23.以下程序運行后的輸出結(jié)果是______。
main()
{
inta,b,c;
a=25;
b=025;
c=0x25;
printf("%d%d%d\n",a,b,C);
}
24.以下程序的運行結(jié)果是()。
intk=0;
voidfun(intm)
{m+=k;k+=m;printf("m=%d\nk=%d",m,k++);}
main()
{inti=4;
fun(i++);printf("i=%dk=%d\n",i,k);
}
25.為了便于對照檢查,測試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期的【】兩部分組成。
26.下列程序段是從鍵盤輸入的字符中統(tǒng)計小寫字母的個數(shù),用換行符結(jié)束循環(huán)。請?zhí)羁铡?/p>
intn=0,c;
c=getchar();
while(c!='\n')
{if(______)
n++;
}
27.當(dāng)循環(huán)隊列非空且隊尾指針等于隊頭指針時,說明循環(huán)隊列已滿,不能進行入隊運算。這種情況稱為【】。
28.若從鍵盤輸入58,則以下程序輸出的結(jié)果是【】。
main()
{inta;
scanf("%d",&a);
if(a>50)printf("%d",a);
if(a>40)printf("%d",a);
if(a>30)printf("%d",a);}
29.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{intx=1,y=1,a=1,b=1;
switch(x)
{case1:
switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:
a++;b++;break;
}
printf("a=%d,b=%d\n",a,B);
}
30.在E-R圖中,矩形表示【】。
31.以下程序運行后的輸出結(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]);
}
}
32.當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)(存儲結(jié)構(gòu))改變時,不影響數(shù)據(jù)庫的邏輯結(jié)構(gòu),從而不致引起應(yīng)用程序的變化,這是指數(shù)據(jù)的_______。
以下程序的輸出結(jié)果是#include<stdio.h>voidprt(int*x,int*y,int*z){printf("%d,%d,%d\n",++*x,++*y,*(z++));}main(){inta=10,b=40,c=20;prt(&a,&b,&c);prr(&a,&b,&c);}
33.數(shù)據(jù)的邏輯結(jié)構(gòu)有線性結(jié)構(gòu)和______兩大類。
34.以下程序段打開文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用ftell函數(shù)返回當(dāng)前文件位置指針的具體位置,從而確定文件長度,請?zhí)羁铡?/p>
FILE*myf;longfl;
myf=【】("test.t","rb");
fseek(myf,(),SEEK_END)fl+ftell(myf);
fclose(myf);
printf("%ld\n",fl);
35.防止軟盤感染病毒的最有效的方法是【】。
36.下列程序的輸出結(jié)果是______。
main()
{imti,sum;
for(i=1;i<7;i++)
sum+=i;
printf("%d",sum);
}
37.已知字母A的ASCII碼為65。以下程序運行后的輸出結(jié)果是______。
main()
{chara,b;
a='A'+'5'-'3';b=a+'6'-'2';
printf("%d%c\n",a,B);
}
38.以下程序運行后的輸出結(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);
}
39.若變量n中的值為24,則print函數(shù)共輸出【】行,最后一行有【】個數(shù)。
voidprint(intn,intaa[])
{inti;
for(i=1;i<=n;i++)
{printf("%6d",aa[i]);
if(!(i%5))
printf("\n");
}
printf("\n");
}
40.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
main()
{intn=12345,d;
while(n!=0){d=n%10;printf("%d",D);n/=10;}
}
三、1.選擇題(20題)41.指針變量p的基類型為double,并已指向一連續(xù)存儲區(qū),若p中當(dāng)前的地址值為65490,則執(zhí)行p++后,p中的值為()
A.65490B.65492C.65494D.65498
42.能將高級語言程序轉(zhuǎn)換成目標語言程序的是______。
A.調(diào)試程序B.解釋程序C.編譯程序D.編輯程序
43.有以下程序#include<stdio.h>intf(intx){inty;if(x==0||x==1)return(3);y=x*x-f(x-2);returny;}main(){intz;z=f(3);printf("%d\n",z);}程序的運行結(jié)果是
A.0B.9C.6D.8
44.設(shè)有如下程序:charsub(char*q){while(*q,='\0'){if(*q>='A'&&*q<='Z')*q=*q+32;elseif(*q>='a'&&*q<='z')*q=*q-32;printf("%c",*q);q++;}}main(){char*s="abcABC";sub(s);}則程序運行后的輸出結(jié)果是()
A.ABCabcB.abcABCC.abcabcD.ABCABC
45.以下敘述中正確的是A.構(gòu)成C語言程序的基本單位是函數(shù)
B.可以在一個函數(shù)中定義另一個函數(shù)
C.main()函數(shù)必須放在其他函數(shù)之前
D.所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定義
46.若有如下程序:main(){staticchar*a[3]={"123","456","789");char**b;b=a;++b;printf("%s,%s\n",*a,*a+1);printf("%s,%s\n",*b,b[1]);}則程序運行后的輸出結(jié)果是()。
A.123,456,456,789
B.123,23456,56
C.123,23456,789
D.123,456456,56
47.以下程序的輸出結(jié)果是()#include<stdio.h>main(){structstru{inta,b:charc[6];}:printf("%d\n",sizeof(stru)),}
A.2B.4C.8D.10
48.算法的空間復(fù)雜度是指()。
A.算法程序的長度B.算法程序中的指令條數(shù)C.算法程序所占的存儲空間D.算法執(zhí)行過程中所需要的存儲空間
49.下列程序的運行結(jié)果是()。main(){inta=-5,b=1,c=1;intx=0,Y=2,z=0;if(c>0)x=x+y;if(a<=0){if(b>0)if(c<=0)y=x-y;}elseif(c>0)Y=x-y;elsez=y;printf("%d,%d,%d\n",x,y,z);}
A.2,2,0B.2,2,2C.0,2,0D.2,0,2
50.在下列敘述中,不正確的一條是______。
A.在C語言中,函數(shù)中的自動變量可以賦初值,每調(diào)用一次,賦一次初值
B.在C語言中,外部變量的隱含類別是自動存儲類別
C.在C語言中,在調(diào)用函數(shù)時,實際參數(shù)和對應(yīng)形參在類型上只需賦值兼容
D.在C語言中,函數(shù)形參可以說明為register變量
51.程序流程圖(PFD)中的箭頭代表的是()。
A.組成關(guān)系B.控制流C.調(diào)用關(guān)系D.數(shù)據(jù)流
52.下述程序的輸出結(jié)果是()。#include<stdio.h>voidmain(){inta[5]={1,2,3,4,5};int*p=a,**q=&p;printf("%d",*(p++));printf("%d",**q);}
A.22B.11C.34D.12
53.有下列二叉樹,對此二叉樹前序遍歷的結(jié)果為()。
A.XZCYABB.XYZABCC.XYABCZD.XYAZBC
54.下列關(guān)于線性鏈表的描述中,正確的是()。Ⅰ、只含有一個指針域來存放下一個元素地址Ⅱ、指針域中的指針用于指向該結(jié)點的前一個或后一個結(jié)點(即前件或后件)Ⅲ、結(jié)點由兩部分組成:數(shù)據(jù)域和指針域。
A.僅Ⅰ、ⅡB.僅Ⅰ、ⅢC.僅Ⅱ、ⅢD.全部
55.下列敘述中錯誤的是()。
A.測試是程序執(zhí)行的過程,目的在于發(fā)現(xiàn)錯誤
B.一個好的測試在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤
C.一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤
D.上述說法都不對
56.設(shè)x、y、t均為血型變量,則執(zhí)行語句x=y=3;t=++x||++y;后,y的值為______。
A.不定值B.4C.3D.1
57.數(shù)字字符0的ASCII值為48,若有以下程序main(){chara='1',b='2';printf("%c,",b++);printf("%d\n",b-A);}程序運行后的輸出結(jié)果是
A.3,2B.50,2C.2,2D.2,50
58.若執(zhí)行下列程序時從鍵盤上輸入2,則輸出結(jié)果是()。#include<stdio.h>main(){inta;scanf("%d",&a);if(a++<3)printf("%d\n",a);elseprintf("%d\n",a--);}
A.1B.3C.2D.4
59.假定int類型變量占用兩個字節(jié),若有定義:intx[10]={0,2,4);,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是______。
A.3B.6C.10D.20
60.下面關(guān)于數(shù)據(jù)庫三級模式結(jié)構(gòu)的敘述中,正確的是()
A.內(nèi)模式可以有多個,外模式和模式只有一個
B.外模式可以有多個,內(nèi)模式和模式只有一個
C.內(nèi)模式只有一個,模式和外模式可以有多個
D.模式只有一個,外模式和內(nèi)模式可以有多個
四、選擇題(20題)61.在結(jié)構(gòu)化方法中,軟件功能分別屬于下列軟件開發(fā)中的(
)階段。A.詳細設(shè)計B.需求分析C.總體設(shè)計D.編程調(diào)試
62.在面向?qū)ο蠓椒ㄖ校粚儆凇皩ο蟆咎攸c的是()。A.一致性B.分類性C.多態(tài)性D.標識唯一性
63.設(shè)有如下定義:char*aa[2]={"abcd","ABCD"};則以下說法中正確的是()。
A.aa數(shù)組成元素的值分別是"abcd"和ABCD"
B.aa是指針變量,它指向含有兩個數(shù)組元素的字符型一維數(shù)組
C.aa數(shù)組的兩個元素分別存放的是含有4個字符的一維字符數(shù)組的首地址
D.aa數(shù)組的兩個元素中各自存放了字符’a’和’A’的地址
64.
65.
66.有以下程序:
#include<stdio.h>
main()
{inta=0,b=0,c=0;
c=(a=a=5);(a=b,b+=4);
printf("%d,%d,%d\n",a,bc);
}
程序運行后的輸出結(jié)果是()。
A.0,4,5B.4,4,5C.4,4,4D.0,0,0
67.概要設(shè)計是軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計,以下選項中不屬于概要設(shè)計的是()。A.A.把軟件劃分成模塊B.確定模塊之間的調(diào)用關(guān)系C.確定各個模塊的功能D.設(shè)計每個模塊的偽代碼
68.
有以下程序:
main
{inta[]=(2,4,6,8,10},y=0,x,*P;
p=&a[1];
for(x=1;x<3;x++)y+=p[x];
printf("%d\n,y");
}
程序運行后的輸出結(jié)果是()。
A.10B.11C.14D.15
69.(32)數(shù)據(jù)的存儲結(jié)構(gòu)是指()
A.數(shù)據(jù)所占的存儲空間量
B.數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機中的表示
C.數(shù)據(jù)在計算機中的順序存儲方式
D.存儲在外存中的數(shù)據(jù)
70.以下所列的C語言常量中,錯誤的是()。
A.0xFFB.1.2e0.5C.2LD.‘72’
71.
72.有以下程序程序運行后的輸出結(jié)果是()。
A.4B.3C.1D.9
73.以下程序的輸出結(jié)果是()。
main()
{inta=4,b=5,c=0,d;
d=!a&&!b║!c;
printf("%d\n",d);
}
A)1B)0
C)非0的數(shù)D)-1
74.
下列程序的輸出結(jié)果是()。
main
{inta,b,d=25;
a=d/10%9;
b=a&&(一1);
printf("%d,%d\n",a,b);}
A.6,1B.2,1C.6,0D.2,0
75.有以下程序:
程序執(zhí)行后的輸出結(jié)果是()。
A.5B.24C.32D.40
76.若intk=8;則執(zhí)行下列程序后,變量k的正確結(jié)果是
main()
{intk=8;
switch(k)
{case9:k+=1;
case10:k+=1;
default:k+=1;
case11:k+=1;break;
}
printf("%d\n",k);
}
A.12B.1
C.10D.9
77.有以下程序:
fun(inta,intb)
{a++;b++;
if(a>b)return(a);
elsereturn(b);
}
void
main()
{intx=3,y=8,z=6,r;
r=fun(fun(x,y++),2*z);
printf("%d\n",r);
}
程序運行后的輸出結(jié)果是()。
A.13B.6
C.8D.12
78.下列關(guān)于C語言文件的敘述中正確的是()。
A.文件由一系列數(shù)據(jù)依次排列組成,只能構(gòu)成二進制文件
B.文件由結(jié)構(gòu)序列組成,可以構(gòu)成二進制文件或文本文件
C.文件由數(shù)據(jù)序列組成,可以構(gòu)成二進制文件或文本文件
D.文件由字符序列組成,其類型只能是文本文件
79.下列關(guān)于C語言數(shù)據(jù)文件的敘述中正確的是______。
A.文件由ASCII碼字符序列組成,C語言只能讀寫文本文件
B.文件由二進制數(shù)據(jù)序列組成,C語言只能讀寫二進制文件
C.文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進制文件和文本文件
D.文件由記錄序列組成,可按數(shù)據(jù)的存放形式分為二進制文件和文本文件
80.
五、程序改錯題(1題)81.下列給定程序中函數(shù)proc()的功能是計算1/n!的值。例如,給n輸入3,則輸出0.166667。請修改程序中的錯誤,使它能得到正確結(jié)果。注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計題(1題)82.編程將文件read.txt中的字符讀出顯示到屏幕上。
參考答案
1.A二維數(shù)組t[][3]即t[3][3]={{9,8,7},{6,5,4},{3,2,1}}。執(zhí)行循環(huán)for語句,當(dāng)i=0時,t[2][0]=3;當(dāng)i=1時,t[l][1]=5;當(dāng)i=2時,t[0][2]=7;當(dāng)i=3時,循環(huán)結(jié)束,即t[2][0]=3、t[1][1]=5、t[0][2]=7。故本題答案為A選項。
2.A
3.A數(shù)組說明的一般形式為:類型說明符數(shù)組名[常量表達式]。B)中N是變量,不能用變量定義數(shù)組長度。C)選項中數(shù)組長度是非法的一串?dāng)?shù)字。定義數(shù)組時必須為其指明長度,D)選項中數(shù)組長度為空,所以非法。
4.B當(dāng)邏輯運算符“&&”兩邊的值是非零時,邏輯表達式的值為真(即為1)。所以b=2&&(-1)=1,2%9=2,故a=2,故先算a/10=25/10=2。
5.C解析:解答本題,首先要明白在對指針進行加、減運算的時候,數(shù)字“1”不是十進制的數(shù)“1”,而是指'1'個存儲單元長度,而1個存儲單元長度占多少存儲空間,應(yīng)該視具體情況而定。如果基本類型是int型,移動1個存儲單元的長度就是位移2個字節(jié),如果基本類型是float型,移動1個存儲單元的長度就是位移4個字節(jié)。所以p+13所指向的數(shù)組元素的地址:300H+(13*上標)4)H=352H。
6.AB選項中運算符“%”的運算對象為整數(shù)。C選項中不能將變量賦給表達式“x+n”。D選項中不能將表達式“4+1”賦給常量5。故本題答案為A選項。
7.B指針中存放的是變量的地址,指針也可以進行增減運算,這時指針移動的最小單位是一個存儲單元,而不是一個字節(jié)。所以題中“P+6”指的是將指針向后移動了6個存儲單元,即指向uE63,存放的是b[6]的地址。
8.C解析:本題考核的知識點是程序中算法的基本分析。sort()函數(shù)作用是將數(shù)組aa中的下標為偶數(shù)的元素按大到小排序.主函數(shù)中首先定義了一個長度為10的數(shù)組并賦值,然后調(diào)用sort()函數(shù),將數(shù)組aa中奇數(shù)個元素的值按大到小排序,因此執(zhí)行完該函數(shù)后,數(shù)組中奇數(shù)個元素的值為9,7、5、3和1,故主函數(shù)中最后通過一個for循環(huán)輸出數(shù)組aa中各元素的值為9、2、7、4、5、6、3、8、1和10,所以,4個選項中選項C符合題意。
9.B在C語言中,函數(shù)定義是平行的,函數(shù)不能嵌套定義,即函數(shù)之間沒有從屬關(guān)系。雖然函數(shù)之間可以相互調(diào)用,但main函數(shù)不能被調(diào)用,選項A)錯誤;C程序從main函數(shù)開始執(zhí)行,當(dāng)main數(shù)執(zhí)行完畢時,整個程序就結(jié)束了。C程序的執(zhí)行必須從main函數(shù)開始,選項C)選項錯誤;函數(shù)不能嵌套定義,選項D)錯誤。
10.C
11.Bscanf(\u3000)語句中用“空格”間隔不同的字符串,空格將被全部忽略掉,所以用scanf(\u3000)函數(shù)不能輸入空格;getehar(\u3000)函數(shù)用于輸入字符,其調(diào)用形式為:ch=getelaar(\u3000),getehar(\u3000)函數(shù)從終端讀入一個字符作為函數(shù)值,把讀入的字符賦給變量ch。在輸入時,空格、回車符都將作為字符讀入,而且只有在用戶敲入Enter鍵時,讀入才開始執(zhí)行。gets(\u3000)函數(shù)的凋用形式為:gets(str_adr),其中stradr是存放輸入字符串的起始地址,可以是字符數(shù)組名、字符數(shù)組元素的地址或字符指針變量。9ets函數(shù)用來從終端鍵盤讀入字符串(包括空格符),直到讀入一個換行符為止。getc(\u3000)函數(shù)的調(diào)用形式為:ch=getc(pf)其中pf是文件指針。函數(shù)的功能是從pf指定的文件中讀入一個字符,并把它作為函數(shù)值返回。
12.C在C語言中,用整型格式輸出字符時,輸出的是其ASCII碼值。
13.D在輸入整數(shù)或?qū)崝?shù)這類數(shù)值型數(shù)據(jù)時,輸入數(shù)據(jù)之間必須用空格、回車符、制表符等間隔符隔開,間隔符個數(shù)不限。scanf的格式控制字符串也可以使用其他非空白字符,如本題中的逗號,但在輸入時必須輸入這些字符,以保證匹配,所以逗號必須輸入。故本題答案為D選項。
14.A程序定義一個二維字符數(shù)組v,使用5個字符串對其初始化。對于表達式“*v”等價于“*(v+0)”,輸出的是數(shù)組v的第1個元素efg;“**(v+3)”等價于“*(*(v+3)+0)”,輸出的是數(shù)組v的第4個元素的第1個字符h;“v[4]”表示數(shù)組v的第5個元素,“v[4]+2”表示輸出從下標2開始的所有字符,即z;“v[2]”表示數(shù)組v的第3個元素,“*(v[2]+4)”表示數(shù)組v的第3個元素的下標為4的字符q;“v[1]+1”表示數(shù)組v的第2個元素從下標1開始的子字符串,即bcd。所以程序輸出:efg,h,z,q,bcd。本題答案為A選項。
15.B
16.B題目中先是將s2字符串寫入adc.dat中,然后執(zhí)行rewind函數(shù)將寫指針放置于文件開頭,寫入s1字符串。s1字符串將前5個字符覆蓋,所以最終結(jié)果為Chinang。故本題答案為B選項。
17.D
18.C宏定義只是做簡單的替換,本題中SUB(a+b)*c=(a+b)-(a+b)*c=-20。故本題答案為C選項。
19.D程序設(shè)計是一門技術(shù),需要相應(yīng)的理論、技術(shù)、方法和工具來支持。程序設(shè)計的任務(wù)包括選項A)、B)、c)等方面。
20.C結(jié)構(gòu)體不能通過結(jié)構(gòu)體名字整體賦值,通過結(jié)構(gòu)體名.成員名的方式賦值。所以C選項錯誤。
21.方法方法解析:在面向?qū)ο蠓椒ㄖ?,方法是指允許作用于某個對象上的各種操作。
22.-24-24解析:本題考查賦值運算符a+=b等價于a=a+b;a-=a*a等價于a-a-a*a=4-4*4=-12:a+=a,即a=a+a=-24。
23.252137252137解析:本題中先定義了整型變量a、b和c,然后分別給賦值a為25,b為八進制的025,c為十六進制0x25。然后調(diào)用pruntf()函數(shù)將a、b和c分別用十進制輸出,且中間用空格隔開,八進制025轉(zhuǎn)換為十進制的值為21,十六進制的0x25轉(zhuǎn)換為十進制的值為37,故最后的輸出結(jié)果為252137。
24.m=4k=4i=5k=5m=4k=4i=5k=5解析:在主函數(shù)main()中定義了一個變量i,并賦初值4,調(diào)用fun()函數(shù)將i的初值傳遞給形參m,進行fun()函數(shù)后的運算,輸出結(jié)果為m=4,k=4。將k值輸出后自行增加1,k=5,此時全局變量k的值變?yōu)?。主函數(shù)中調(diào)用fun()函數(shù)后,i再自行增加1,i=5,所以主函數(shù)輸出的結(jié)果為“i=5k=5”。
25.輸出結(jié)果輸出結(jié)果解析:注意:測試的基本方法和步驟。
26.c>='a'&&c<='z'c>='a'&&c<='z'解析:小寫字母在內(nèi)存中以ASCII的形式存入,且從a到z依次遞增,所以可以直接用c>='a'&&c<='z'判斷是不是小寫字母;c!='\\n'判斷是用換行符結(jié)束循環(huán)。
27.上溢上溢解析:入隊運算是指在循環(huán)隊列的隊尾加入一個新元素。這個運算有兩個基本操作:首先將隊尾指針進一(即rear=rear+1),并當(dāng)rear=m+1時置rear=1;然后將新元素插入隊尾指針指向的位置。當(dāng)循環(huán)隊列非空(s=1)時且隊尾指針等于隊頭指針時,說明循環(huán)隊列已滿,不能進行入隊運算,這種情況稱為“上溢”。
28.585858585858解析:本題考查對if語句的掌握,當(dāng)輸入58以后,程序中的3個if語句都成立,所以分別輸出58。
29.a=2b=3a=2,b=3解析:分析程序,程序從x=1語句開始執(zhí)行,之后執(zhí)行第一個switch語句,switch(x)=switch(1),所以執(zhí)行case1,case1語句中包含一個復(fù)合switch語句:這時執(zhí)行第二個switch語句,此時y=1,所以switch(y)=switch(1),因此執(zhí)行case1,將b加1,得到b=2,遇到break語句,退出第二個switch語句,則整個case1的復(fù)合語句執(zhí)行完畢,由于在這個case1的后面沒有break語句使其退出第一個switch語句,所以接著執(zhí)行下列的case2后面的語句,即將a,b各加1,得到a=2,b=3。
30.實體實體解析:E-R模型中,有3個基本的抽象概念:實體、聯(lián)系和屬性。在E-R圖中,用矩形框表示實體,菱形框表示聯(lián)系,橢圓形框表示屬性。
31.1371513715解析:本題中,定義了一個整型數(shù)組n并初始化,在for循環(huán)語句中,再對數(shù)組中各元素重新賦值。循環(huán)執(zhí)行第一次時,n[1]=n[0]*2+1=0+1=1,pnntf函數(shù)輸出1,然后i的值加1,比較i<4成立,繼續(xù)執(zhí)行循環(huán)體語句,相應(yīng)輸出3、7、15,直至i<=4不成立,退出循環(huán)。所以最后輸出為1、3、7、15。
32.B
33.非線性結(jié)構(gòu)非線性結(jié)構(gòu)
34.fopenfopen解析:C語言中的文件分為:ASCII文件與二進制文件。文件在使用前打開,使用后要關(guān)閉。打開文件的函數(shù)為:fopen(),調(diào)用形式為:fp=fopen('文件名','使用文件方式');關(guān)閉文件的函數(shù)為:fclose(),調(diào)用形式為:fclose(fp),其中fp為文件指針。
35.進行寫保護進行寫保護
36.無定值無定值解析:for(i=1;i<7;i++)決定了循環(huán)次數(shù)為6次,每次執(zhí)行的操作是Sum+=i,但由于sum沒有初始化,并不知道sum的初值是多少,所以結(jié)果無定值.
37.67G67G解析:字符型變量中保存的是某個字符的ASCII碼值,是一個整數(shù),因此字符型變量的算術(shù)運算和整型變量并無區(qū)別。所以。a='A'+'5'-'3'='A'+('5'='3')='A'+2=65+2=67:b=a+'6'='2'='C'+('6'-'2')='C'+4='G'。最后分別按十進制整數(shù)和字符形式輸出a和b的值為:67G。
38.abcfgabcfg解析:本題考查的是字符數(shù)組用作函數(shù)參數(shù)。C語言中數(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的長度-2位置,循環(huán)中讓s[i]=s[i+2],所以函數(shù)fun()實現(xiàn)的功能簡單來說就是將字符串s下標為p+2~k范圍的字符整體復(fù)制到字符串s下標為p~k-2的位置上。在本題中strlen(s)返回s的長度7,所以復(fù)制的字符為s[5]~s[7],即'f'、'g','\\0'三個字符,復(fù)制到s[3]~s[5],故最終輸出的字符串為abcfg(因為s[5]為'\\0',所以后面的字符不會輸出)。
39.54
40.5432154321解析:在while循環(huán)中,d=n%10;語句每次求得的結(jié)果是n個位上的數(shù)值,例如12345÷10所得的余數(shù)就是個位上的5。接下來輸出得到的個位數(shù)字d,然后執(zhí)行n/=10;語句,該語句等價于n=n/10;。在C語言中,如果/運算的兩個運算分量都是整數(shù),那所得的結(jié)果也截尾取整,所以12345/10=1234,即n-=n/10;語句的作用是讓n截去個位上的數(shù)字。由此可知,隨著while循環(huán)的繼續(xù),n依次為12345、1234、123、12、1,而每次輸出n的個位數(shù)字將為5、4、3、2、1。故本題應(yīng)填543210。
41.D
42.C解析:用高級語言編寫的程序稱為“源程序”,而計算機只能識別和執(zhí)行由O和1組成的二進指令,所以高級語言必須先用—種稱為“編譯程序”的軟件,把源程序翻譯成二進制形式的“目標程序”。
43.C解析:函數(shù)intf(intx)是一個遞歸函數(shù)調(diào)用,當(dāng)x的值等于0或1時,函數(shù)值等于3,其他情況下y=x2-f(x-2),所以在主函數(shù)中執(zhí)行語句z=f(3)時,y=3*3-f(3-2)=9-f(1)=9-3=6。
44.A
45.A解析:根據(jù)函數(shù)的定義語法規(guī)定,在C語言程序中,不能嵌套定義,即不能在函數(shù)中再定義函數(shù);main()函數(shù)在C語言程序中是必須的,但函數(shù)可以放在程序中的任意位置;當(dāng)在所有函數(shù)的外部、被調(diào)用之前說明函數(shù)時,在函數(shù)說明后面的任何位置上都可以對函數(shù)進行調(diào)用。函數(shù)說明也可以放在調(diào)用函數(shù)的說明部分,如在main函數(shù)內(nèi)部進行說明,則只能在main函數(shù)內(nèi)部才能識別函數(shù)。
46.C解析:a為指針數(shù)組,a[0]即數(shù)組a的數(shù)組名指向字符串'123'的首地址,輸出*a為'123',*a+1將指針下移1個存儲單元,輸出字符串為”23”。a[1]指向字符串'456'的首地址,a[2]指向字符串'789'的首地址。b為指針的指針,它的值為數(shù)組a的首地址。
47.D
48.D【解析】算法的空間復(fù)雜度是指執(zhí)行這個算法所需要的內(nèi)存空間。一個算法所占用的存儲空間包括算法程序所占的空間、輸入的初始數(shù)據(jù)所占的存儲空間以及算法執(zhí)行中所需要的額外空間。其中額外空間包括算法程序執(zhí)行過程中的工作單元以及某種數(shù)據(jù)結(jié)構(gòu)所需要的附加存儲空間。如果額外空間量相對于問題規(guī)模來說是常數(shù),則稱該算法是原地工作的。在許多實際問題中,為了減少算法所占的存儲空間,通常采用壓縮存儲技術(shù),以便盡量減少不必要的額外空間。
49.A解析:本題考查ifelse語句的使用。先判斷第1個if語句,因為c=1>0,所以x=x+y=0+2=2。第1個if語句,因為a=-5<0,所以進入下列的復(fù)合語句。經(jīng)判斷發(fā)現(xiàn),復(fù)合語句中第2個if語句的條件均不滿足,不執(zhí)行任何語句退出,在這個過程中y和z的值沒有發(fā)生變化。
50.B
51.B解析:在程序流程圖(PFD)中,箭頭代表的是控制流,用以指明程序的動態(tài)執(zhí)行順序。
52.D解析:程序首先定義了一個指向一維數(shù)組a的指針p,一個指向指針變量p的指針變量q,輸出*(p++)是先輸出*p即a[0]的值,再將指針p指向數(shù)組的下一個元素a[1],輸出**q是輸出指針p所指向單元的內(nèi)容,即a[1]的值。
53.D解析:對二叉樹的前序遍歷是指先訪問根結(jié)點,然后訪問左于樹,最后訪問右子樹,并且在訪問左、右子樹時,先訪問根結(jié)點,再依次訪問其左、右于樹。
54.D解析:在定義的鏈表中,若只含育一個指針域來存放下一個元素地址,稱這樣的鏈表為單鏈表或線性鏈表。在鏈式存儲方式中,要求每個結(jié)點由兩部分組成:一部分用于存放數(shù)據(jù)元素值,稱為數(shù)據(jù)域:另一部分用于存放指針,稱為指針域。其中指針用于指向該結(jié)點的前一個或后一個結(jié)點(即前件或后件)。
55.D解析:選項A、B、C中的說法都正確。測試的目的是設(shè)法暴露程序中的錯誤和缺陷,它是程序執(zhí)行的過程,目的在于發(fā)現(xiàn)錯誤;好的測試在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤;成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤。
56.C解析:C語言中在做邏輯或運算時,自左向右判斷各個參加或運算的表達式,一旦運算到某式的值為非零時,表明整個表達式一定為真,余下的語句則不再進行運算。本題中,++x的值為真,則++y并沒有進行運算,所以y值不變。
57.C解析:本題考查了字符型變量的運算及輸出。在C語言中,字符型變量可以看作整型變量來對待,與整型所不同的是字符型變量在內(nèi)存中只占1個字節(jié),而整型是2個字節(jié)。字符型變量中所存的數(shù)值是它所表示字符的ASCII碼值。ASCII碼中的一些相關(guān)字符是順序排列的,如\'0\'的ASCII碼值為48,\'1\'為49以此類推一直到\'9\';\'A\'的ASCII碼值為65,\'B\'為66以此類推一直到\'Z\'。本題程序一開始就定義了兩個字符型變量a和b,并初始化為字符\'1\'和\'2\',由于題目已經(jīng)告訴,0,的ASCII值為48,所以變量a、b中所存儲的數(shù)據(jù)分別為49和50。第一條輸出語句是按字符格式輸出表達式b++的值和字符\',\',后綴自加表達式b++的值就是b的值,不過執(zhí)行完該表達式之后,變量b中的值會增1。所以第一次輸出的字符串是'2,',執(zhí)行完后b中的數(shù)據(jù)為51.第二條輸出語句是按整型格式輸出表達式b-a的值和一個換行符\'\\n\',b-a的值是51-49=2,故最終的輸出應(yīng)該為'2,2\\n',\'\\n\'是非打印字符,即不會在屏幕上顯示什么,所以,4個選項中選項C符合題意。
58.B解析:本題考查ifelse語句。程序中首先使用函數(shù)scanf()通過鍵盤讀入a的值,并通過第1個if語句,先判斷條件,取a的值2和3比較,然后將a的值加1,發(fā)現(xiàn)條件成立,執(zhí)行下列的printf語句,輸出a的值3。
59.D解析:當(dāng)數(shù)組定義后,系統(tǒng)就為其分配內(nèi)存空間,而不論其中有沒有內(nèi)容。因此,本題中數(shù)組x[10]不論是否為其元素初始化,它所分配的存儲空間仍為2*10=20個字節(jié)。
60.BB)【解析】數(shù)據(jù)庫的三級模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)
\n的外模式、模式和內(nèi)模式。一個數(shù)據(jù)庫可以有多個外模式,但只有一個模式和一個內(nèi)模式。
61.C總體設(shè)計過程通常由兩個主要階段組成:系統(tǒng)設(shè)計,確定系統(tǒng)的具體實現(xiàn)方案;結(jié)構(gòu)設(shè)計,確定軟件結(jié)構(gòu)。為確定軟件結(jié)構(gòu),首先需要從實現(xiàn)角度把復(fù)雜的功能進~步分解。分析員結(jié)合算法描述仔細分析數(shù)據(jù)流圖中的每個處理,如果一個處理的功能過分復(fù)雜,必須把它的功能適當(dāng)?shù)胤纸獬梢幌盗斜容^簡單的功能。
62.A在面向?qū)ο蠓椒ㄖ?,對象的基本特點包括:標識唯一性、分類性、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋼軌探傷星級評定復(fù)習(xí)測試卷附答案
- 2025年中國集裝箱活動辦公室市場調(diào)查研究報告
- 2025年中國耐溫瓷盤市場調(diào)查研究報告
- 廣東省汕頭市潮陽區(qū)潮師高級中學(xué)2024年高三5月第三次聯(lián)考數(shù)學(xué)試題試卷
- 2025至2031年中國金融單位庫房庫存管理系統(tǒng)行業(yè)投資前景及策略咨詢研究報告
- 2025至2030年中國橫式止回閥數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國兒童保暖鞋數(shù)據(jù)監(jiān)測研究報告
- 建筑清潔工作中的人文關(guān)懷考核試卷
- 影視信號處理器批發(fā)考核試卷
- 制糖業(yè)產(chǎn)品差異化策略考核試卷
- 2025年中國山泉水市場前景預(yù)測及投資規(guī)劃研究報告
- 重慶市2025屆高三第一次聯(lián)合診斷檢測英語試卷(含解析含聽力原文無音頻)
- 《榜樣9》觀后感心得體會二
- 《西安交通大學(xué)》課件
- 天津市部分區(qū)2024-2025學(xué)年九年級(上)期末物理試卷(含答案)
- 小學(xué)二年級數(shù)學(xué)計算題共4165題
- 一氧化碳中毒培訓(xùn)
- 初二上冊好的數(shù)學(xué)試卷
- 保潔服務(wù)質(zhì)量與服務(wù)意識的培訓(xùn)
- 廣東省潮州市2024-2025學(xué)年九年級上學(xué)期期末道德與法治試卷(含答案)
- 突發(fā)公共衛(wèi)生事件衛(wèi)生應(yīng)急
評論
0/150
提交評論