




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2022年江西省鷹潭市全國計算機等級考試C語言程序設計真題(含答案)學校:________班級:________姓名:________考號:________
一、單選題(20題)1.若有定義intx=3,y=2和floata=2.5,b=3.5,則表達式:(x+y)%2+(int)a/(int)b的值是()。
A.0B.2C.1.5D.1
2.有以下程序:
程序運行后的輸出結果是()。A.1B.11C.7D.9
3.輸入序列為(A,B,C,D),不可能得到的輸出序列是______.
A.(A,B,C,D)B.(D,C,B,A)C.(A,C,D,B)D.(C,A,B,D)
4.按照“先進先出”組織數(shù)據(jù)的數(shù)據(jù)結構是()。
A.隊列B.棧C.雙向鏈表D.二叉樹
5.以下程序輸出正確的是______。amovep(int*p,int(*a)[3],intn){inti,j;for(i=0;i<n;i++)for(j=0;j<n;j++){*p=a[i][j];p++;}}main(){int*p,a[3][3]={{1,3,5},{2,4,6}};p=(int*)malloc(100);arnovep(p,a,3);printf("%d%d\n",p[2],p[5];free(p);}
A.56B.25C.34D.程序錯誤
6.線性表的順序存儲結構是一種()。
A.隨機存取的存儲結構B.順序存取的存儲結構C.索引存取的存儲結構D.Hash存取的存儲結構
7.有以下程序:#includemain(){inty=9;for(;y>0;y--)If?y%3==0)printf("%d",---y);}程序的運行結果是()。A.852B.963C.741D.875421
8.要求當A的值為奇數(shù)時,表達式的值為“真”,A的值為偶數(shù)時,表達式的值為“假”,以下不滿足要求的表達式是()。A.A%2==1B.!(A%2==0)C.A%2D.!(A%2)
9.表達式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為()。A.intB.floatC.doubleD.不確定
10.以下說法錯誤的是()。
A.C語言中的常量是指在程序運行過程中經(jīng)常被用到的變量
B.C語言中的常量是指在程序運行過程中其值不能被改變的量
C.C語言中的常量可以用一個符號名來代表
D.C語言中的常量可以用宏來定義
11.以下敘述正確的是()。
A.C語言程序是由過程和函數(shù)組成的
B.C語言函數(shù)可以嵌套調用,例如:fun(fun(x))
C.C語言函數(shù)不可以單獨編譯
D.C語言中除了main函數(shù),其他函數(shù)不可作為單獨文件形式存在
12.以下選項中錯誤的是()。A.printf(“%s\n”,‘s’);
B.printf“%d%c\n”,‘s’,‘s’);
C.printf(“%c\n”,‘s’-32);
D.printf(“%c\n”,65);
13.有以下程序:#include<stdio.h>#include<stdlib.h>main{int*a,*b,*C;a=b=c=(int*)malloc(sizeof(int));*a=1;*b=2,*c=3;a=b:printf("%d,%d,%d\n",*a,*b,*c);}程序運行后的輸出結果是()。A.3,3,3B.2,2,3C.1,2,3D.1,1,3
14.棧這種數(shù)據(jù)結構一般應用在()。
A.遞歸調用B.子程序調用C.表達式求值D.A,B,C
15.在具有101個元素的順序表中查找值為x的元素結點時,平均比較元素的次數(shù)為()。
A.50B.51C.100D.101
16.一個C語言程序總是從()開始執(zhí)行。
A.書寫順序的第一函數(shù)B.書寫順序的第一條執(zhí)行語句C.主函數(shù)main()D.不確定
17.有如下程序段:inta[10]={1,2,3,4,5,6,7,8,9,10};int*p=&a[3],b;b=P[5];則b的值是()。
A.5B.6C.9D.8
18.以下有4組用戶標識符,其中合法的一組是()。
A.FOr-subCase
B.4dDOSize
C.f2_G3IFabc
D.WORDvoiddefine
19.在1,2,3,......1000中,有()個數(shù)各位乘積為0。
A.100B.101C.172D.181E.190F.191
20.設有定義:intn=0,*p=&n,**q=&p;則下列選項中正確的賦值語句是()。
A.p=1;B.*q=2;C.q=p;D.*p=5;
二、2.填空題(20題)21.數(shù)據(jù)的邏輯結構有線性結構和______兩大類。
22.表達式pow(2.8,sqrt(float(x)))值的數(shù)據(jù)類型為______型。
23.數(shù)據(jù)元素之間______的整體稱為邏輯結構。
24.能把計算機處理好的結果轉換成為文本、圖形、圖像或聲音等形式并輸送出來的設備稱為【】設備。
25.下列程序的運行結果是______。
#include<stdio.h>
main()
{inta,b,c;
a=3;b=4;c=5;
if(a>b)
if(a>c)
printf("%d",a);
elseprintf("%d",b);
printf("%d\n",c);
}
26.有以下程序:
main()
{inta[3][3],*p,i;
p=&a[0][0];
for(i=0;i<9;i++)p[i]=i+1;
printf("%d\n",a[1][2]);
}
程序運行后的輸出結果是【】。
27.以下程序運行后輸出結果是【】。
#include<stdio,h>
main()
{inta,b,c;
a=10;b:20;c=(a%b<1)‖(a/b>1);
printf("%d%d%d\n",a,b,c);
}
28.在一棵二叉樹上第6層的結點個數(shù)最多是【】。
29.設有如下變量說明,則a+(int)((int)b+c)>>(int)(b-c)的值為【】。
inta=5;floatb=7.2,c=3.6;
30.以下程序的運行結果是【】。
#include<stdio.h>
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
case3:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
31.以下程序運行后的輸出結果是【】。
intf(inta[],intn)
{if(n>=1)returnf(a,n-1)+a[n-1];
elsereturn0;
}
main()
{intaa[5]=(1,2,3,4,5),s;
s=f(aa,5);printf("%d\n",s);
}
32.數(shù)據(jù)流的類型有______和事務型。
33.以下函數(shù)用來求出兩整數(shù)之和,并通過形參將結果傳回,請?zhí)羁铡?/p>
voidfunc(intx,inty,【】z)
{*z=x+y;}
34.函數(shù)mycmp(char*s,char*t)的功能提比較字符串s和t的大小,當s等于t時返回0,當s>t返回正值,當s<t時返回負值。請?zhí)羁铡?/p>
mycmp(char*s,char*t)
{while(*s==*t)
{if(*s=='\0')return0;
++s;++t;
}
return(【】)
}
35.下面程序的運行結果是【】。
voidswap(int*a,int*b)
{
int*tp;
t=a;a=b;b=t;
}
main()
{
intx=3,y=5,*p=&x,*q=&y;
swap(p,q);
printf("%d%d\n",*p,*q);
}
36.設有以下程序,為使之正確運行,請在橫線中填入應包含的命令行。(注:try_me()函數(shù)在a:\myfile.txt中有定義。)
______
main()
{printf("\n");
try_me();
printf("\n");}
37.有兩個C程序文件T18.c和myfun.c同在VC系統(tǒng)目錄(文件夾)下,其中T18.c文件如下:
#include<stdio.h>
#include"myfun.c"
main()
{fun();prinff("\n");}
myfun.c文件如下:
voidfun()
{chars[80],c;intn=0;
while((c=getchar())!:'\n')s[n++]=c;
n--;
while(n>=0)prinff("%c",s[n--]);
}
當編譯連接通過后,運行程序T18時,輸入"Thank!”,則輸出結果是【】。
38.以下程序運行后的輸出結果是【】。
main()
{inta=l,b=3,c=5;
if(C=a+b)printf("yes\n");
elseprintf("no\n");
}
39.以下程序的輸出結果是()。main(){char*p[]={"ABC","DEF","GHI","JKL"};inti;for(i=3;i>=0;i--,i--)printf("%c",*p[i]);}
40.按照“先進先出”的原則組織數(shù)據(jù)的結構是______。
三、1.選擇題(20題)41.閱讀下列程序,當運行程序時,輸入asdafaaz67,則輸出為()。#include<sldio.h>intfun(char*str){inti,j=0;for(i=0;str[i]!='\0';i++)if(str[i]!=")str[j++]=str[i];str[j]='\0';}main(){charstr[81];intn;printf("Inputastring:");gets(str);fun(str);printf("%s\n",str);}
A.asdafaaz67B.asdafaaz67C.asdD.z67
42.一顆二叉樹中共有70個葉子節(jié)點與80個度為1的節(jié)點,則二叉樹的總節(jié)點數(shù)為()。
A.219B.221C.229D.231
43.數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)之間的關系是()
A.數(shù)據(jù)庫包括數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)
B.數(shù)據(jù)庫系統(tǒng)包括數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)
C.數(shù)據(jù)庫管理系統(tǒng)包括數(shù)據(jù)庫和數(shù)據(jù)庫系統(tǒng)
D.3者沒有明顯的包含關系
44.下列選項中,不能用作標識符的是A._1234_B._1_2C.int_2_D.2_int_
45.已知a、b、c為整型變量,若從鍵盤輸入5<空格>6<空格>7<回車>,使a的值為5,b的值為6,c的值為7,則下列選項中正確的輸入語句是()。
A.scanf("%3d%3d%3d",a,b,C);
B.scanf("%d%d%d",a,b,C);
C.scanf("%d%d%d",&a,&b,&c);
D.scanf("%d%d%d",&a,&b,&c);
46.對于建立良好的程序設計風格,下面描述正確的是()。
A.程序應簡單、清晰、可讀性好B.符號名的命名只要符合語法即可C.充分考慮程序的執(zhí)行效率D.程序的注釋可有可無
47.下列對于線性鏈表的描述中正確的是()
A.存儲空間不一定是連續(xù),且各元素的存儲順序是任意的
B.存儲空間不一定是連續(xù),且前件元素一定存儲在后件元素的前面
C.存儲空間必須連續(xù),且前件元素一定存儲在后件元素的前面
D.存儲空間必須連續(xù),且各元素的存儲順序是任意的
48.有下列程序:main{chars[]="abcde";s+=2:printf("%d\n",s[0]);}執(zhí)行后的結果是()。
A.輸出字符a的ASCII碼B.輸出字符c的ASCII碼C.輸出字符cD.程序出錯
49.若有以下程序
#include<stdio.h>
inta[]={2,4,6,8};
main()
{inti;
int*p=a;
for(i=0;i<4;i++)a[i]=*p;
printf("%d\n",a[2]);}
上面程序的輸出結果是
A.6B.8C.4D.2
50.有以下程序:intf1(intx,inty){returnx>y?x:y;}intf2(intx,inty){returnx>y?y:x;}main(){inta=4,b=3,c=5,d,e,f;d=fl(a,b);d=f1(d,c);e=f2(a,b);e=f2(e,c);f=a+b+c-d-e;printf("%d,%d,%d\n",d,f,e);}執(zhí)行后輸出結果是()。
A.3,4,5B.5,3,4C.5,4,3D.3,5,4
51.請選出可用作C語言用戶標識符的一組()。
A.voiddefineWORD
B.a3_b3_123IF
C.For_abccase
D.2aDOsizeof
52.如果按字長來劃分,微機可分為8位機、16位機、32位機和64位機。所謂32位機是指該計算機所用的CPU()
A.同時能處理32位二進制數(shù)B.具有32位的寄存器C.只能處理32位二進制定點數(shù)D.有32個寄存器
53.以下選項中非法的字符常量是()。
A.'\\'B.'\0201'C.'\xAA'D.'0'
54.下列循環(huán)體的執(zhí)行次數(shù)是()。#include<stdio.h>main(){inti,j;for(i=0j=1;i<j+1;i+=1,j--)printf("%d\n",j);}
A.3B.2C.1D.0
55.在C語言程序中,下列說法正確的是()。
A.函數(shù)的定義和函數(shù)的調用均可以嵌套
B.函數(shù)的定義不可以嵌套,但函數(shù)的調用可以嵌套
C.函數(shù)的定義可以嵌套,但函數(shù)的調用不可以嵌套
D.函數(shù)的定義和函數(shù)的調用均不可以嵌套
56.設有以下定義:inta=0;doubleb=1.25;charc='A';#defined2則下面語句中錯誤的是()。
A.a++;B.b++;C.c++;D.d++;
57.若有以下說明和語句:structst{intn;char*ch;}structsta[3]={5,"abc"7,"def",9",ghk"),*p=a;則值為6的表達式是______。
A.p++->nB.p->n++C.(*p).n++D.#NAME?
58.C語言中邏輯表達式的值為()
A.0或1B.非零值或者零值C.ture或falseD.'ture'或者'false'
59.15.與數(shù)據(jù)元素本身的形式、內容、相對位置、個數(shù)無關的是數(shù)據(jù)的()
A.存儲結構B.存儲實現(xiàn)C.邏輯結構D.運算實現(xiàn)
60.用樹形結構來表示實體之間聯(lián)系的模型稱為()。
A.關系模型B.層次模型C.網(wǎng)狀模型D.數(shù)據(jù)模型
四、選擇題(20題)61.若有“doublea;”,則正確的輸入語句是()。A.A.scanf("%1f",a);
B.scanf("%f",&a);
C.scanf("%1f",&a);
D.scanf("1e",&a);
62.設變量a是int型,f是int型,i是double型,則表達式10+a+i*f值的數(shù)據(jù)類型為
A.intB.floatC.doubleD.不確定
63.下列敘述中正確的是()。A.線性表的鏈式存儲結構與順序存儲結構所需要的存儲空間是相同的
B.線性表的鏈式存儲結構所需要的存儲空間一般要多于順序存儲結構
C.線性表的鏈式存儲結構所需要的存儲空間一般要少于順序存儲結構
D.線性表的鏈式存儲結構與順序存儲結構在存儲空間的需求上沒有可比性
64.
65.
66.
67.負責數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是()。
A.數(shù)據(jù)定義語言B.數(shù)據(jù)管理語言C.數(shù)據(jù)操縱語言D.數(shù)據(jù)控制語言
68.以下程序的輸出結果是()。
main
{charw[][10]={"ABCD","EFGH","IJKL","MNOP"),K;
for(k=1;k<3;k++)printf("%s\n",w[k]);A.A.ABCDFGHKLB.ABCDEFGUC.EFGJKOD.EFGHUKL
69.設有下列二叉樹:
對此二叉樹中序遍歷的結果為()。
A.ACBDEFB.DEBFCAC.ABDECFD.DBEAFC
70.
71.
72.將E—R圖轉換為關系模式時,實體和聯(lián)系都可以表示為()。
A.屬性B.鍵C.關系D.域
73.
74.若有定義:inta,h;通過語句:scanf(”%d;%d”,&a,&B.;,能把整數(shù)3賦給變量a,5賦給變量b的輸入數(shù)據(jù)是()。
A.35B.3,5C.3;5D.35
75.
76.以下程序運行后,輸出結果是()。
#include<stdio.h>
#definePT5.5
#defineS(x)PT*x*X
main
{inta=1,b=2:
printf("%4.1f\n",s(a+b));
}
A.49.5B.9.5C.22.0D.45.0
77.下列選項中,能夠滿足“只要字符串sl等于字符串s2,則執(zhí)行sT”要求的是()。程序執(zhí)行后的輸出結果是()。
A.2B.1C.3D.0
78.
79.有以下程序:
程序運行后的輸出結果是()。
A.1,2,3,4,5,6,7,8,9,0,
B.2,1,4,3,6,5,8,7,0,9,
C.0,9,8,7,6,5,4,3,2,1,
D.0,1,2,3,4,5,6,7,8,9,
80.(14)結構化程序設計主要強調的是()
A.程序的規(guī)模
B.程序的易讀性
C.程序的執(zhí)行效率
D.程序的可移植性
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:對M名學生的學習成績,按從高到低的順序找出前m(m≤10)名學生來,并將這些學生數(shù)據(jù)存放在一個動態(tài)分配的連續(xù)存儲區(qū)中,此存儲區(qū)的首地址作為函數(shù)值返回。
請修改程序中的錯誤,使它能得出正確的結果。
注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結構。
試題程序:
六、程序設計題(1題)82.請編寫函數(shù)voidproc(intx,intpp[],int*n),它的功能是:求出能整除x且不是偶數(shù)、不為1的各整數(shù),并按從大到小的順序放在PP所指的數(shù)組中,這些除數(shù)的個數(shù)通過形參n返回。
例如,若x的值為30,則有3個數(shù)符合要求,它們是15,5,3。
注意:部分源程序給出如下。
請勿改動main()函數(shù)和其他函數(shù)中的任何內容,僅在函數(shù)proc()的花括號中填入所編寫的若干語句。
試題程序:
參考答案
1.D
2.D題干中,函數(shù)fun的功能是將二維數(shù)組p的行下標為1、列下標為1的元素(p[1][1])的值賦給二維地址s指向的*s所指向的存儲單元。main函數(shù)中定義了整型指針p,動態(tài)分配了整型長度的內存空間,調用函數(shù)fun將數(shù)組元素a[1][1],即9賦給p所指向的空間。本題答案為D選項。
3.D
4.A隊列是一種特殊的線性表,只允許在表的一端插八元素,在表的另一端刪除元素,插入元素的一端叫“隊尾”,刪除元素的一端叫“隊頭”。先插入的元素先被刪除,是按“先進先出”的原則組織數(shù)據(jù)的。
【知識拓展】“隊列”和“棧”都是一種特殊的線性表。之所以稱之為“隊列”,其形式如“排隊”。要講究“先來后到”,先進先出,后進后出。
5.A解析:本題main函數(shù)中定義了指針p和二維數(shù)組a,通過函數(shù)amovep將數(shù)組的值存入指針p所指向的存儲單元中,a的各元素分別為:a[0][0]=1,a[0][1]=3,a[0][2]=5,a[1][0]=2,a[1][1]=4,a[1][2]=6,a[2][0]=0,a[2][1]=0,a[2][2]=0。通過mailoc()函數(shù)給指針分配內存空間,free()函數(shù)用于釋放指針變量所用內存空間。在主函數(shù)中通過amovep(p,a,3)調用函數(shù)amovep,使得實參p與形參p,實參數(shù)組a與形參中指向數(shù)組的指針變量共用同一存儲空間。最后輸出p[2],p[5]為56。
6.A
7.A答疑:[解析]第一次for循環(huán),y的值為9.y%3的值為0.滿足條件打印-y,即先減一-后打印,所以打印8;第二次for循環(huán),y的值為7.y%3的值為1.不執(zhí)行打印語句;第三次for循環(huán),y的值為6.y%3的值為0.滿足條件打印--y,即先減-后打印,所以打印5;第四次for循環(huán),y的值為4.不滿足條件,不執(zhí)行打印語句;第五次for循環(huán),y的值為3.滿足條件,打印輸出2;第六次for循環(huán),y的值為1.不滿足條件,不執(zhí)行打印語句。
8.D
9.C因為c語言數(shù)據(jù)進行計算時數(shù)據(jù)類型會由低級向高級進行隱式轉化,sqrt函數(shù)得到的是double類型,比其他的int數(shù)據(jù)類型高,所以整個結果得到的是double類型。
10.AC語言中的常量是指在程序運行過程中其值不能被改變的量,它可以用宏來定義,用一個符號名來代表。選項A錯誤,選項B、C、D正確。本題答案為A選項。
11.B解析:C語言中只有函數(shù)沒有過程,故選項A錯誤;C語言可以嵌套調用,故選項B正確;C語言函數(shù)可以單獨編譯成.dll文件,故選項C錯誤;C語言中除main函數(shù)以外,其他函數(shù)可作為單獨文件形式存在,故選項D也錯誤。
12.A%d表示以字符和整型類型的格式輸出,%c表示以字符類型的格式輸出,%s表示以字符串類型的格式輸出。選項A中,‘s’是字符,不能用%s格式來輸出。故本題答案為A選項。
13.A本題中,首先創(chuàng)建一個動態(tài)內存,然后將地址分別存入指針a、b、c中,即a、b、c都指向相同.的變量。分別給a、b、c所指的變量賦值,最終a、b、c所指的變量中的值為3,最后打印a、b、c所指的變量
14.D
15.B
16.C
17.C解析:p=&a[3]將指針指向數(shù)組a的第4個元素,p[5]則是數(shù)組a的第9個元素,而a[8]=9,所以b=9。
18.C解析:選項A中for和case為C語言中的保留字,不能作為用戶標志符,故A錯誤。選項B中的4d其開頭的第一個為數(shù)字,而在C語言中規(guī)定,第一個字符必須為字母或者下劃線,故B錯誤;選項D中void為C語言中的保留字,不能作為用戶標志符,故D錯誤。所以,4個選項中選項C符合題意。
19.D
20.D解析:選項A),B),C)的指針賦值表達方式都不正確,*p=5表達整數(shù)5放到指針p所指向的存儲單元中。注意:通過指針引用一個存儲單。
21.非線性結構非線性結構
22.floatfloat解析:在此表達式中x是float類型的變量,經(jīng)過開方所得到的結果仍是float類型,再和2.8進行運算時,應該先將2.8轉換成float類型再運算,最后結果仍是float型。
23.邏輯關系邏輯關系
24.輸出輸出
25.55解析:分析程序,當a=3;b=4;c=5時,判斷語句a>b不成立,所以不執(zhí)行后面的語句,直接執(zhí)行“printf('%d\\n',c);”語句,輸出c的值,輸出結果為5。
26.66解析:本題定義了二維數(shù)組a和指針變量p,p指向數(shù)組的首地址,for循環(huán)語句的功能是給數(shù)組元素賦值,結果為a[0][0]=1、a[0][1]=2、a[0][2]=3、a[1][0]=4、a[1][1]=5、a[1][2]=6、a[2][0]=7、a[2][1]=8、a[2][2]=9,故printf函數(shù)的輸出結果為6。
27.1020010200解析:程序中(a%b<1)||(a/b>1)的運算順序為先算括號→算術運算符→關系運算符→邏輯運算符。首先計算a%b=10,a/b=0,因為a%b<1為假(0),a/b>1也為假(0),所以整個表達式的結果為假(0),最后輸出a,b,c的值為10200。
28.3232解析:根據(jù)二叉樹的性質,在二叉樹的第k層上,最多有2的k-1次方個結點。所以,第6層的結點數(shù)最多為32。
29.11解析:在表達式a+(int)((int)b+c)>>(int)(b-c)中圓括號最優(yōu)先,其次為類型轉換(int)、加法+、減法-、右移運算>>。所以先看兩個圓括號((int)b+c)和(b-c),前者b先被轉換為int型7,然后與c相加得10.6,后者結果是3.6,現(xiàn)在表達式為a+(iot)10.6>>(int)3.6。C語言中,float型轉換為int型是截尾取整,所以表達式進一步簡化為5+10>>3=>15>>3。由于15的二進制為000011112(下標),所以15>>3的結栗是000000012(下標),即1。
30.a=2b=1a=2,b=1解析:本題考查了switch結構的內容。C語言中,程序執(zhí)行完一個case標號的內容后,如果沒有break語句,控制結構會轉移到下一個case繼續(xù)執(zhí)行,因為case常量表達式只是起語句標號作用,并不是在該處進行條件判斷。本題程序在執(zhí)行完內部switch結構后,繼續(xù)執(zhí)行了外部switch結構的case2分支,最后a和b的值分別為2和1。
31.1515解析:s=f(aa,5)=f(aa,4)+a[4]=f(aa,3)+a[3]+a[4]=f(aa,2)+a[2]+a[3]+a[4]
=f(aa,1)+a[1]+a[2]+a[3]|a[4]=0+a[0]+a[1]+a[2]+a[3]+a[4]=15。
32.變換型變換型
33.int*int*解析:從題中代碼可知:z應該是一個整型指針,因此應填int*。
34.*s-*t或-*t+*s*s-*t或-*t+*s解析:函數(shù)的兩個形參是兩個字符指針變量,字符串的首地址是指針變量的值,*s和*t表示字符串數(shù)組s和t的第一個字符,在while循環(huán)中,是通過s和t值的不斷變化來改變指針所指向的字符,要改變s和t所指不同字符的ASCII碼的差值,必須使用“*s-*t”得出。
35.3535解析:在主函數(shù)中通過定義和賦初值使p和q分別指向了x和y,執(zhí)行函數(shù)調用“swap(p,q)”,把p和q中的地址值傳給了形參指針.變量a和b,a和b分別指向了實參x和y。在函數(shù)swap()中交換了指針變量a和b的值,并沒有交換a和b指向的實參的值,所以函數(shù)調用返回后x和y依舊是原來的值。
36.#include<a:\myfile.txt>#include<a:\\myfile.txt>解析:本題考查了函數(shù)的存儲分類的概念。如果沒有特別說明,函數(shù)的存儲范圍是從定義函數(shù)的位置到文件的結尾,如果其他文件想使用這個函數(shù),需要用ginclude文件包含命令將定義函數(shù)的文件包含進來。
37.!knahT!knahT解析:程序中myfun.c被包含在T18.c中進行編譯。fun函數(shù)中用getehar函數(shù)輸入字符并賦給數(shù)組s,每輸入一個字符,數(shù)組下標n加1,直到遇到回車鍵時輸入結束。while(n>=0)循環(huán)反序輸出字符中。所以myfun.c文件用于實現(xiàn)字符串反序的功能。
38.yesyes解析:本題中,if后面括號里的表達式為c=a+b為真(即c=1+3=4為真),所以,執(zhí)行printf('yes\\n'),最后輸出yes。
39.JD
40.隊列隊列解析:隊列是一種特殊的線性表,只允許在表的一端插入元素,在表的另一端刪除元素,插入元素的一端叫做“隊尾”,刪除元素的一端叫做“隊頭”,先插入的元素先被刪除,是按先進先出的原則組織數(shù)據(jù)的。
41.A解析:本題題意是刪除字符串中所有空格。由于C語言中沒有直接刪除字符的操作,所以刪除字符的操作都是采用“留下”字符的算法來實現(xiàn)。從串頭str[0]到串尾逐一比較,判斷其是否為空格,若不是空格,則將其保存在str[j]中,最后加串結束符“\\0”。
42.A解析:樹的結點數(shù)等于所有結點的度與對應的結點個數(shù)乘積之和加1。對任何一棵二叉樹T,如果其葉子結點數(shù)為n0,度為2的結點數(shù)為n2,則n0=n2+1,即葉子結點數(shù)總是比度為2的結點數(shù)多1。由于葉子結點個數(shù)為70,則度為2的結點數(shù)為70-1=69,所以總結點個數(shù)為69×2+80×1十1=219。
43.B解析:數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,簡稱DBS)包括數(shù)據(jù)庫(Database,簡稱DB)、數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,簡稱DBMS):數(shù)據(jù)庫管理員、硬件和軟件。
44.D解析:本題考核的知識點是用戶的標識符。在C語言中,合法的標識符由字母、數(shù)字和下劃線組成,并且第一個字符必須為字母或者下劃線,如:acd,d_ad、_adf124,_124等都是合法的標識符號.而2asdf、_sd/=都不是合法的標識符.在C語言中大寫字母和小寫字母被認為是兩個不同的字符,如:ACD和acd是兩個不同的標識符號。選項D中用下劃線作為第一個字符,這是不合法的,故選項D不正確,所以,4個選項中選項D符合題意。
45.C解析:通過scanf()函數(shù)從鍵盤讀入數(shù)據(jù)時,接收參數(shù)的使用變量的地址值,所以選項A和B是錯誤的。選項D要求輸入時以逗號間隔,故按題目要求的輸入方式不能正確讀取到3個數(shù),也是錯誤的。所以正確答案是C。
46.A解析:選項B錯誤:符號名的命名除了要符合語法之外,還應具有一定的實際含義,以便理解程序功能;選項C錯誤:程序設計風格強調清晰第一,效率第二;選項D錯誤:程序注釋能幫助讀者理解程序,是提高程序可讀性的重要手段。所以選項A正確。
47.A本題考查的是線性單鏈表、雙向鏈表與循環(huán)鏈表的結構及其基本運算。\n在鏈式存儲結構中,存儲數(shù)據(jù)結構的存儲空間可以不連續(xù),各數(shù)據(jù)結點的存儲順序與數(shù)據(jù)元素之間的邏輯關系可以不一致,而數(shù)據(jù)元素之間的邏輯關系是由指針域來確定的。故本題答案為A。
48.D解析:因為字符數(shù)組s1)中的數(shù)組名s表示的是一個地址常量。所以語句“s+=2;”不能將指針在當前位置的基礎上再向后移動兩位,因而程序編譯時出錯。
49.D解析:在C語言中,數(shù)組元素下標是從0開始的;指針變量p指向數(shù)組的首地址。for循環(huán)語句中,指針變量p始終指向數(shù)組的首地址,因而執(zhí)行循環(huán)賦值語句后數(shù)組各元素的值均變?yōu)?。
50.C解析:函數(shù)f1()的作用是返回形參x和y的較大值,函數(shù)f2()的作用是返回形參x和y的較小值,在main()函數(shù)中通過調用兩次f1()函數(shù),求得a、b、c的最大值并存放在變量d中,通過調用兩次f2()函數(shù),求得a、b、c的最小值并存放到變量e中。由程序可知d值為5,f的值為4,e的值為3,因此最后輸出的d、f、e的值為5、4、3。所以C選項為所選。
51.B解析:C語言規(guī)定,標識符只能由字母、數(shù)字和下劃線三種符號組成,而且第一個字符必須是字母或下劃線。A)中的void與C語言的關鍵字重名,不合法;C)中的case和C語言的關鍵字重名,不合法;D)中的2a是數(shù)字開頭,而且sizeof與C語言的關鍵字重名,不合法。
52.A
53.B
54.C解析:本題考查for循環(huán)。第一次循環(huán)前先判斷循環(huán)條件,此時i=0,j=1,i<j+1成立,循環(huán)第一次;第二次循環(huán)前先判斷循環(huán)條件,此時i=1,j=0,(j--是先使用j的值再減1),i<j+1不成立,結束循環(huán)。
55.B解析:本題考查函數(shù)調用的基本概念。因為函數(shù)的結果是個未知量,而函數(shù)定義時不能使用未知量,所以函數(shù)定義不可以嵌套,但函數(shù)的調用可以嵌套。
56.D解析:本題考核的知識點是在自加運算符的運算對象。自加運算對象可以是整型變量也可以是實型變量,但不能是表達式和常量。本題中,#defined2定義了d為常數(shù)2,不能在對d進行自加運算.故選項D是個不正確的語句,所以,4個選項中選項D符合題意。
57.D解析:根據(jù)結構變量的存儲特點,p+l意味著增加地址值為結構體數(shù)組a的—個元素所占的字節(jié)數(shù),即P++使p由a[0]指向a[1]起始地址。本題++p->n得到p指向的結構體變量中成員n的值使之加1。因為p指向數(shù)組a起始地址,p->n的值為5,再執(zhí)行自加l運行,結果為6
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 4《不做“小馬虎”》(教學設計) 2023-2024學年統(tǒng)編版道德與法治一年級下冊
- 河北對外經(jīng)貿職業(yè)學院《生物合成藥物學》2023-2024學年第二學期期末試卷
- 廣州東華職業(yè)學院《織物產(chǎn)品結構與工藝(二)》2023-2024學年第二學期期末試卷
- 鄭州工程技術學院《國外文學》2023-2024學年第二學期期末試卷
- 河源廣東河源紫金縣專門學校駐校教官招聘7人筆試歷年參考題庫附帶答案詳解
- 新疆農業(yè)大學《工作分析》2023-2024學年第二學期期末試卷
- 梅河口康美職業(yè)技術學院《緬甸語閱讀》2023-2024學年第二學期期末試卷
- 凍土共振柱試驗機項目效益評估報告
- Unit 5 In the Park Lesson 2(教學設計)-2024-2025學年人教新起點版英語二年級上冊
- 重慶城市科技學院《建筑結構與平法識圖》2023-2024學年第二學期期末試卷
- 小學生勤儉節(jié)約課件
- 化工行業(yè)生產(chǎn)過程安全管理升級策略方案
- 慢性胰腺炎病教學查房
- 中考英語復習閱讀理解-主旨大意題、推理判斷題
- 電解質溶液的圖像分析(原卷版)-2025年高考化學一輪復習講義(新教材新高考)
- 2025年中考歷史一輪復習知識清單:隋唐時期
- 【生物】蒸騰作用- 2024-2025學年七年級上冊生物(北師大版2024)
- 《井巷掘進作業(yè)》課件
- 提高鋁合金外窗防滲漏施工一次合格率
- 銀行保安服務 投標方案(技術方案)
- 農村砍樹賠償合同模板
評論
0/150
提交評論