




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(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.執(zhí)行下面的程序段后,變量k中的值為()。intk=3,s[2];s[0]=k;k=s[1]*10;
A.不定值B.33C.30D.10
2.樹(shù)的度為3,且有9個(gè)度為3的節(jié)點(diǎn),5個(gè)度為1的節(jié)點(diǎn),但沒(méi)有度為2的節(jié)點(diǎn)。則該樹(shù)中的葉子節(jié)點(diǎn)數(shù)為()。
A.18B.33C.19D.32
3.成功的測(cè)試是指A.A.運(yùn)行測(cè)試實(shí)例后未發(fā)現(xiàn)錯(cuò)誤
B.發(fā)現(xiàn)程序的錯(cuò)誤
C.證明程序正確
D.軟件產(chǎn)生
4.有以下程序,程序中庫(kù)函數(shù)islower(ch)用以判斷ch中的字母是否為小寫(xiě)字母:
程序運(yùn)行后的輸出結(jié)果是()。
A.abcdEFg!B.AbCdEFg!C.abcdEFG!D.aBcDEFG!
5.以下函數(shù)調(diào)用語(yǔ)句中含有實(shí)參個(gè)數(shù)為().func((exp1,exp2),(exp3,exp4,exp5));
A.1個(gè)B.2個(gè)C.4個(gè)D.5個(gè)
6.對(duì)一個(gè)關(guān)系投影操作以后,新關(guān)系的元組個(gè)數(shù)______原來(lái)關(guān)系的元組個(gè)數(shù)。
A.小于B.小于或等于C.等于D.大于
7.若要求從鍵盤(pán)讀入含有空格字符的字符串,應(yīng)使用函數(shù)()。
A.getcharB.getcC.getsD.scanf
8.有下列程序:fun(intX,inty){return(x+y);)main(){inta=1,b=2,c=3,sum;sum=fun((a++,b++,a+b),c++);printf("%d\n",sum);}執(zhí)行后的輸出結(jié)果是()。A.6B.7C.8D.9
9.為非法的字符串常量()。A.“case”B.“”C.”056”D.‘123’
10.下列敘述中正確的是()。
A.順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的
B.順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)
C.順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表
D.鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間
11.有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句:structSTD{charname[10];intage;charsex;}s[5],*ps;ps=&s[0];則下列scanf函數(shù)調(diào)用語(yǔ)句有錯(cuò)誤的是()。
A.scanf(“%s”,s[0].name);
B.scanf(“%d”,&s[0].age);
C.scanf(“%c”,&(ps->sex));
D.scanf(“%d”,ps->age);
12.數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS中用來(lái)定義模式、內(nèi)模式和外模式的語(yǔ)言為()。
A.CB.BasicC.DDLD.DML
13.已知A=10,B=20,下類表達(dá)式正確的是()。
A.C=(A++)*(--B)=200
B.A-=30
C.C=(A++)+(B--)=30
D.C=(++A)*(--B)=210
14.有以下程序:#includemain(){intx,y,z;x=y=1;z=x++,y++,++y;printf(“%d,%d,%d\n”,x,y,z);}程序運(yùn)行后的輸出結(jié)果是()。A.2.3.3B.2.3.2C.2.3.1D.2.2.1
15.對(duì)于長(zhǎng)度為n的線性表,在最壞情況下,下列各種排序法所對(duì)應(yīng)的比較次數(shù)中正確的是(
A.冒泡排序?yàn)閚/2B.冒泡排序?yàn)閚C.快速排序?yàn)閚D.快速排序?yàn)閚(n-1)/2
16.按照C語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是()。A.大寫(xiě)字母B.下劃線C.數(shù)字字符D.連接符
17.有以下程序main(){inta[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i;for(i=0;i<3;i++)printf("%d",a[1][i]);}程序運(yùn)行后的輸出結(jié)果是
A.12B.123C.234D.345
18.下列敘述中錯(cuò)誤的是()。
A.可以用typedef將已存在的類型用一個(gè)新的名字來(lái)代表
B.可以通過(guò)typedef增加新的類型
C.用typedef定義新的類型名后,原有類型名仍有效
D.用typedef可以為各種類型起別名,但不能為變量起別名
19.有以下定義和語(yǔ)句
StructWorkers
{intnum;charname[20];charc;
struct
{intday;intmonth;intyear;}s;
};
StructWorkersW,*pe;
PW=&W;
能給W中yeaR成員賦1980的語(yǔ)句是A.*pW.yeaR=1980;
B.W.yeaR=1980;
C.pW->yeaR=1980;
D.W.s.yeaR=1980;
20.以下敘述中錯(cuò)誤的是()。
A.函數(shù)的返回值類型不能是結(jié)構(gòu)體類型,只能是簡(jiǎn)單類型
B.函數(shù)可以返回指向結(jié)構(gòu)體變量的指針
C.可以通過(guò)指向結(jié)構(gòu)體變量的指針訪問(wèn)所指結(jié)構(gòu)體變量的任何成員
D.只要類型相同,結(jié)構(gòu)體變量之間可以整體賦值
二、2.填空題(20題)21.實(shí)現(xiàn)程序可將磁盤(pán)中的一個(gè)文件復(fù)制到另一個(gè)文件中,兩個(gè)文件的文件名在可執(zhí)行命令的命令行中(相當(dāng)于copy命令),假定文件在當(dāng)前目錄下。請(qǐng)補(bǔ)全程序。
#include<stdio.h>
voidmain(intargc,char*argv[])
{FILE*f1,*f2;
if(argc<【】)
{printf("parametererror!\n");exit(0);}
f1=fopen(argv[1],"r");
f2=fopen(argv[2],"w");
while(【】)fputc(fgetc(f1),f2);
fclose(f1);
fclose(f2);
}
22.若輸入thistestterminal,以下程序的輸出結(jié)果為:terminaltestthis。請(qǐng)?zhí)羁铡?/p>
#defineMAXLINE20
【】
{inti;
char*pstr[3],str[3][MAXLINE];
for(i=0;i<3;++)pstr[i]=str[i];
for(i=0;i<3;i++)scanf("%s",pstr[1]);
sort(pstr);
for(i=0;i<3;i++)prntf("%s",pstr[i]);
}
sort(【】)
char*pstr[3];
{inti,j;
char*p;
for(i=0;i<3;i++)
for(j=i+1;j<3;j++)
if(strcmp(*(pstr+i,*(pstr+j)>0
{p=*(pstr+i);
*(pstr+i=【】;
*(pstr+j)=p;
}
23.以下程序用來(lái)輸出結(jié)構(gòu)體變量ex所占存儲(chǔ)單元的字節(jié)數(shù):
structst
{charname[20];doublescore;};
main()
{structstex;
printf("exsize:%d\n",sizeof(【】));
}
24.閱讀下列程序,則程序的輸出結(jié)果為【】。
#include"stdio.h"
structty
{intdata;
charc;};
main()
{structtya={30,'x'};
fun(a);
printf("%d%c",a.data,a.c);}
fun(structtyb)
{b.data=20;
b.c='y';}
25.以下程序是從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們的和。請(qǐng)?zhí)羁铡?/p>
main()
{
inti,a[20],sum,count;
sum=count=【】;
for(i=0;i<20;i++)scanf("%d",【】);
for(i=0;i<20;i++)
{
if(a[i]>0)
{count++:
sum+=【】;
}
}
printf("sum=%d,count=%d\n",sum.count);
}
26.下列程序的輸出結(jié)果是______。
#include<stdio.h>
sb(ints[],intb)
{staticintn=3;
b=s[n];
n--;
return(b);
}
main()
{ints[]={1,5,6,8};
inti,x=0;
for(i=0;i<4;i++)
{x=sb(s,x);
printf("%d",x);
}
printf("\n");
}
27.若輸入tear、test、arj,則下列程序的運(yùn)行結(jié)果為【】。
main()
{char*strl[20],*str2[20],*str3[20];
charswap();
scanf("%s",str1);
scanf("%s",str2);
scanf("%s",str3);
if(strcmp(str1,str2)>0)swap(str1,str2);
if(strcmp(str1,str3)>0)swap(str1,str3);
if(strcmp(str2,str3)>0)swap(str2,str3);
printf("%s%s%s\n",str1,str2,str3);
}
charswap(p1,p2)
char*p1,*p2;
{char*p[20];
strcpy(p,p1);strcpy(p1,p2);strcpy(p2,p);
}
28.設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for語(yǔ)句后,k的值為【】。
for(i=0,j=10;i<=j;i++,j--)k=i+j;
29.算法的復(fù)雜度主要包括空間復(fù)雜度和______復(fù)雜度。
30.以下程序的功能是從名為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);
}
31.以下程序中,函數(shù)fun的功能是計(jì)算x2-2x+6,主函數(shù)中將調(diào)用fun函數(shù)計(jì)算:
y1=(x+8)2-2(x+8)+6
y2=sin2(x)-2sin(x)+6
請(qǐng)?zhí)羁铡?/p>
#include"math.h"
doublefun(doublex){return(x*x-2*x+6);}
main()
{doublex,y1,y2;
printf("Enterx:");scanf("%lf",&x);
y1=fun(【】);
y2=fun(【】);
printf("y1=%lf,y2=%lf\n",y1,y2);
}
32.設(shè)有下面的程序段:chars[]="china";char*p;p=S;則下列敘述正確的是
33.若有以下程序:
main()
{chara;
a='H'-'A'+'0';
printf("%c\n",a);
}
執(zhí)行后的輸出結(jié)果是【】。
34.下面程序的功能是:計(jì)算110之間的奇數(shù)之和與偶數(shù)之和,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{inta,b,c,I;
a=c=0;
for(I=0;I<=10;I+=2)
{a+=I;
【】;
c+=b;}
printf("偶數(shù)之和=%d\n",a);
printf("奇數(shù)之和=%d\n",c-11);}
35.以下函數(shù)用來(lái)求出兩整數(shù)之和,并通過(guò)形參將結(jié)果傳回,請(qǐng)?zhí)羁铡?/p>
voidfunc(intx,inty,【】z)
{*z=x+y;}
36.在C語(yǔ)言中,字符的比較就是對(duì)它們的【】碼進(jìn)行比較。
37.以下isprime函數(shù)的功能是判斷形參a是否為素?cái)?shù),是素?cái)?shù),函數(shù)返回1,否則返回0。請(qǐng)?zhí)羁铡?/p>
intisprime(inta)
for(i=2;i<=a/2;i++)
if(a%i==0)[8];
[9];
38.數(shù)據(jù)庫(kù)系統(tǒng)階段的數(shù)據(jù)具有較高獨(dú)立性,數(shù)據(jù)獨(dú)立性包括物理獨(dú)立性和【】?jī)蓚€(gè)含義。
39.以下程序運(yùn)行后的輸出結(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);
}
40.C語(yǔ)言中用______表示邏輯值為“真”,用數(shù)字“0”表示邏輯值為“假”。
三、1.選擇題(20題)41.設(shè)變量x為noat型且已賦值,則以下語(yǔ)句中能將x中的數(shù)值保留到小數(shù)點(diǎn)后兩位,并將第3位四舍五入的是()。
A.X=X*100+0.5/100.0;
B.x=(x*100+0.5)/100.0;
C.x=(int)(x*100+0.5)/100.0;
D.x=(x/100+0.5)*100.0;
42.請(qǐng)讀程序:#include<stdio.h>main(){inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);printf("\na=%d,b=%f,c=%f\n",a,b,c)}若運(yùn)行時(shí)從鍵盤(pán)上輸入987643210則上面程序的輸出結(jié)果是______。
A.a=98,b=75,c=4321
B.a=10,b=432,c=8765
C.a=98,b=765.000000c=4321.000000
D.a=98,b=765.0,c=4321.000000
43.下列程序的運(yùn)行結(jié)果是()。main(){intx=1,y=3,a=0;while(x++!=(y=1)){a+1;if(y<x)break;}printf("%d,%d,%d\n”,x,y,a);}
A.2,3,2B.2,3,1C.1,3,3D.3,1,2
44.下列二叉樹(shù)描述中,正確的是()
A.任何一棵二叉樹(shù)必須有一個(gè)度為2的結(jié)點(diǎn)B.二叉樹(shù)的度可以小于2C.非空二叉樹(shù)有0個(gè)或1個(gè)根結(jié)點(diǎn)D.至少有2個(gè)根結(jié)點(diǎn)
45.以下不屬于對(duì)象的基本特點(diǎn)的是()
A.分類性B.多態(tài)性C.繼承性D.封裝性
46.下列是用戶自定義標(biāo)識(shí)符的是
A._w1B.3_xyC.intD.LINE-3
47.對(duì)長(zhǎng)度為n的線性表進(jìn)行順序查找,在最壞的情況下需要比較的次數(shù)為()。
A.125B.n/2C.nD.n+1
48.在軟件生存周期中,能準(zhǔn)確確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是()。
A.概要設(shè)計(jì)B.詳細(xì)設(shè)計(jì)C.可行性分析D.需求分析
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]);}上面程序的輸出結(jié)果是()。
A.6B.8C.4D.2
50.設(shè)有定義:structsk{inta;floatb;}data,*p;若有p=&data;,則對(duì)data中的a域的正確引用是()
A.(*p).data.aB.(*p).aC.p->data.aD.p.data.a
51.以下程序的輸出結(jié)果是______。#include<stdio.h>main(){inta=200;#definea100printf("%d",a);#undefaprintf("%d",a);}
A.200100B.100100C.100200D.200200
52.當(dāng)執(zhí)行下面兩個(gè)語(yǔ)句后,輸出的結(jié)果為()charcl=97,c2=98;printf("%d%c",c1,c2);
A.9798B.97bC.a98D.ab
53.有下列程序:#include<stdio.h>main(){charc1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2,&c3,&c4);c5=getchar();c6=getchar();putchar(c1);putchar(c2);printf("%c%c\n",c5,c6);}程序運(yùn)行后,若從鍵盤(pán)輸入(從第1列開(kāi)始)123<CR>45678<CR>則輸出結(jié)果是()。
A.1267B.1256C.1278D.1245
54.下列程序中函數(shù)sort()的功能是對(duì)數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序。
#include<stdio.h>
voidsort(inta[],intn)
{inti,j,t;
for(i=0;i<n-1;i++)
for(j=i+1;<n;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[j]=t;
}
}
main()
{inta[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&a[1],7);
for(i=0;i<10;i++)printf("
A.1,2,3,4,5,6,7,8,9,10,
B.10,9,8,7,6,5,4,3,2,1,
C.1,8,7,6,5,4,3,2,9,10,
D.1,2,10,9,8,7,6,5,4,3,
55.下列敘述中正確的是()。
A.顯示器和打印機(jī)都是輸出設(shè)備B.顯示器只能顯示字符C.通常的彩色顯示器都有7種顏色D.打印機(jī)只能打印字符和表格
56.以下不正確的敘述是A.A.在C程序中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低
B.在C程序中,APH和aph是兩個(gè)不同的變量
C.若a和b類型相同,在計(jì)算了賦值表達(dá)式a=b后b中的值將放入a中,而b中的值不變
D.當(dāng)從鍵盤(pán)輸入數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型數(shù)值,對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)值
57.若x,i,j和k都是int型變量,則計(jì)算表達(dá)式x=(i=4,j=16,k=32)后,x的值為()。
A.4B.16C.32D.52
58.若有說(shuō)明語(yǔ)句:inta,b,c,*d=&c;,則能正確從鍵盤(pán)讀入3個(gè)整數(shù)分別賦給變量a、b、c的語(yǔ)句是()。
A.scanf("%d%d%d",&a,&b,d);
B.scanf("%d%d%d",&a,&b,&d);
C.scanf("%d%d%d",a,b,d);
D.scanf("%d%d%d",a,b,*d);
59.下面程序在屏幕上的輸出是______。main(){printf(“ab\b\bc”);}A.ab\b\bcB.acC.abcD.abc
60.以下程序運(yùn)行后,輸出結(jié)果為_(kāi)_____。main(){inta[2][3]={1,3,5,7,9,11},*s[2],**pp,*p;s[0]=a[0],s[1]=a[1];pp=s;p=(int*)malloc(sizeof(int));**pp=s[1][1];p=*pp;printf("%d\n",*p);}
A.1B.7C.9D.11
四、選擇題(20題)61.
62.
63.下列描述錯(cuò)誤的是()。
A.繼承分為多重繼承和單繼承
B.對(duì)象之間的通信靠傳遞消息來(lái)實(shí)現(xiàn)
C.在外面看不到對(duì)象的內(nèi)部特征是基于對(duì)象的“模塊獨(dú)立性好”這個(gè)特征
D.類是具有共同屬性、共同方法的對(duì)象的集合
64.下列數(shù)據(jù)結(jié)構(gòu)中,能夠按照‘‘先進(jìn)后出”原則存取數(shù)據(jù)的是()。A.循環(huán)隊(duì)列B.棧C.隊(duì)列D.二叉樹(shù)
65.
66.若某二叉樹(shù)的前序遍歷訪問(wèn)順序是abdgcefh,中序遍歷訪問(wèn)順序是dgbaechf,則其后序遍歷的結(jié)點(diǎn)訪問(wèn)順序是()。
A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca
67.下列程序的輸出的結(jié)果是()。main{doubled=3.2;intx,Y;x=1.2;v=(x+3.8)/5.0;printf("%d\n",d*y);}A.3B.3.2C.0D.3.07
68.以下程序有錯(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é)果
69.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。
A.DB包含DBS和DBMSB.DBMS包含DB和DBSC.DBS包含DB和DBMSD.沒(méi)有任何關(guān)系
70.設(shè)有如下三個(gè)關(guān)系表:
71.耦合性和內(nèi)聚性是對(duì)模塊獨(dú)立性度量的兩個(gè)標(biāo)準(zhǔn)。下列敘述中正確的是()。
A.提高耦合性降低內(nèi)聚性有利于提高模塊的獨(dú)立性
B.降低耦合性提高內(nèi)聚性有利于提高模塊的獨(dú)立性
C.耦合性是指一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度
D.內(nèi)聚性是指模塊間互相連接的緊密程度
72.
73.
74.已知大寫(xiě)字母A的ASCII碼是65,小寫(xiě)字母a的ACSII碼是97。下列能將變量C中的大寫(xiě)字母轉(zhuǎn)換為對(duì)應(yīng)小寫(xiě)字母的語(yǔ)句是()。
A.c=(c-'A')%26+'A'B.c=c+32C.c=c-'A'+'A'D.c=('A'+C)%26-'a'
75.
76.
77.有三個(gè)關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是()。
A.自然連接B.交C.投影D.并
78.一棵二叉樹(shù)共有25個(gè)結(jié)點(diǎn),其中5個(gè)是葉子結(jié)點(diǎn),則度為1的結(jié)點(diǎn)數(shù)為()。
A.16B.10C.6D.4
79.有以下程序
80.以下敘述中正確的是()。A.A.當(dāng)對(duì)文件的讀(寫(xiě))操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失
B.打開(kāi)一個(gè)已存在的文件并進(jìn)行了寫(xiě)操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋
C.在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫(xiě)操作后,必須先關(guān)閉該文件然后再打開(kāi),才能讀到第1個(gè)數(shù)據(jù)
D.c語(yǔ)言中的文件是流式文件,因此只能順序存取數(shù)據(jù)
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc的功能是:讀入一個(gè)字符串(長(zhǎng)度<20),將該字符串中的所有字符按ASCII碼升序排序后輸出。
例如,輸入opdye,則應(yīng)輸出deopy。
請(qǐng)修改程序中的錯(cuò)誤,使它能得到正確結(jié)果。
注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
#include<string.h>
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
//****found****
intproc(charstr[])
{
charc;
unsignedi,j;
for(i=0;i<strlen(str)-1;i++)
for(j=i+1;j<strlen(str);j++)
if(str[i]>str[j])
{
c=str[j]:
//****found****
str[j]=str[i++];
str[i]=c;
}
}
voidmain
{
charstr[81];
system("CLS");
printf("\nPleaseenteracharacter
string:");
gets(str);
printf("\n\nBeforesorting:\n%s",str);
proc(str);
printf("\nAftersortingdecendingly:\n
%s",str);
}
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開(kāi)考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫(xiě)函數(shù)fun(),它的功能是求出能整除x且不是偶數(shù)的整數(shù),并將這些整數(shù)按從小到大的順序放在PP所指的數(shù)組中,總個(gè)數(shù)通過(guò)形參n返回。如x中的值為30,則有4個(gè)數(shù)符合要求,它們是1、3、5、15。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。試題程序:
參考答案
1.A解析:定義數(shù)組時(shí),沒(méi)有對(duì)s[1]進(jìn)行初始化,因此s[1]的值不確定,所以k=s[1]*10的值也不確定。
2.C設(shè)葉子結(jié)點(diǎn)數(shù)為〃,則該樹(shù)的結(jié)點(diǎn)數(shù)為n+9+5=n+\n14,根據(jù)樹(shù)中的結(jié)點(diǎn)數(shù)=樹(shù)中所有結(jié)點(diǎn)的度之和+1,得9×3+0×2+5×1+n×0+1=n+14,則n=19。本題選擇C選項(xiàng)。
3.B軟件測(cè)試的目的主要有以下幾個(gè)方面。
(1)軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程。
(2)一個(gè)好的測(cè)試用例能夠發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯(cuò)誤。
(3)一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。
另外,即使經(jīng)過(guò)了最嚴(yán)格的測(cè)試,可能仍然還有沒(méi)被發(fā)現(xiàn)的錯(cuò)誤藏在程序中,測(cè)試只是找出程序中的錯(cuò)誤,不能證明程序中沒(méi)有錯(cuò)誤。
4.D調(diào)用缸函數(shù)后,實(shí)參數(shù)組名sl傳給形參指針P,P也指向數(shù)組sl。m函數(shù)的功能是遍歷字符數(shù)組中的所有字符,如果某一個(gè)字符是空格并且前一個(gè)字符是小寫(xiě)字母的話,就把前一個(gè)字符轉(zhuǎn)換為大寫(xiě)。程序中語(yǔ)句P[i一1]=P[i—1]一ga’+-A‘;即P[i一1]=P[i一1]一32,意思是將P[i一1]中的字符轉(zhuǎn)換為大寫(xiě)。因此D選項(xiàng)正確。
5.B
6.B解析:投影操作是從關(guān)系中選擇某些列,投影后消去了某些屬性,就可能出現(xiàn)重復(fù)元組,根據(jù)關(guān)系的性質(zhì),應(yīng)消去這些完全相同的元組。這樣使得新關(guān)系的元組數(shù)小于或等于原來(lái)的元組數(shù)。
7.C當(dāng)輸入字符串時(shí),函數(shù)scanf用“空格”間隔不同的字符串,scanf函數(shù)不能輸入空格。getchar函數(shù)用于輸入字符,其調(diào)用形式為ch=getchar(),getehar函數(shù)從終端讀入一個(gè)字符作為函數(shù)值,把讀入的字符賦給變量ch。在輸入時(shí),空格、回車(chē)符都將作為字符讀入,而且只有在用戶按<Enter>鍵時(shí),讀入才開(kāi)始執(zhí)行。gets函數(shù)的調(diào)用形式為getS(Str_adr),其中“str_adr”是存放輸入字符串的起始地址,可以是字符數(shù)組名、字符數(shù)組元素的地址或字符指針變量。gets函數(shù)用來(lái)從終端鍵盤(pán)讀入字符串(包括空格符),直到讀入一個(gè)換行符為止。getc函數(shù)的調(diào)用形式為ch=getc(Pf),其中“pf”是文件指針,函數(shù)的功能是從“pf”指定的文件中讀入一個(gè)字符,并把它作為函數(shù)值返回。故本題答案為C選項(xiàng)。
8.C函數(shù)fun(intx,inty)的功能是返回x+Y的值。在主函數(shù)中,變量a,b,c的初始值分別為1,2,3。因此逗號(hào)表達(dá)式“a++,b++,a+b”的值等于5,表達(dá)式c++的值為3,調(diào)用于函數(shù)的表達(dá)式為“fun(5,3);”,其返回值等于8。
9.D
10.A解析:順序存儲(chǔ)結(jié)構(gòu)就是用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)該線性表中的各個(gè)元素,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)序號(hào)是不連續(xù)的,并且各結(jié)點(diǎn)在存儲(chǔ)空間中的位置關(guān)系與邏輯關(guān)系也不一致,所以選項(xiàng)A是正確的。兩者都可以存儲(chǔ)線性的、有序的邏輯結(jié)構(gòu),所以選項(xiàng)B、C不正確。順序結(jié)構(gòu)使用的是連續(xù)物理空間,鏈?zhǔn)浇Y(jié)構(gòu)可以使用零散的物理空間存儲(chǔ),鏈?zhǔn)浇Y(jié)構(gòu)更靈活,不存在誰(shuí)節(jié)約空間的說(shuō)法,所以選項(xiàng)D不正確。
11.D題目中需要輸入一個(gè)變量,scanf要求輸入?yún)?shù)為指針,而D選項(xiàng)中“ps->age”為變量,不是指針。故本題答案為D選項(xiàng)。
12.C解析:選項(xiàng)A)、選項(xiàng)B)顯然不合題意。數(shù)據(jù)定義語(yǔ)言(DataDefinitionLanguage,簡(jiǎn)稱DDL)負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建;數(shù)據(jù)操縱語(yǔ)言(DataManipulationLanguage,簡(jiǎn)稱DML)負(fù)責(zé)數(shù)據(jù)的操縱,包括查詢及增、刪、改等操作。
13.C
14.C整型變量x、y的初值都為1,“x++,y++,++y”是一個(gè)逗號(hào)表達(dá)式,程序執(zhí)行“z=x++,y++,++y”之后,x的值為2,y的值為3,z取逗號(hào)表達(dá)式中的第二個(gè)表達(dá)式的值,為1。因此本題的答案為選項(xiàng)C。
15.D在最壞情況下,冒泡排序和快速排序的比較次數(shù)都是n(n一1)/2?!局R(shí)拓展】所謂冒泡排序,就是將相鄰的兩個(gè)數(shù)據(jù)比較,如前面的數(shù)據(jù)大于后面的,則位置互換。這樣不停地比較、互換,其實(shí)就是把大的數(shù)往后排,小的數(shù)往前排(就像冒泡一樣冒出來(lái)了)。
16.D[解析]C語(yǔ)言中標(biāo)識(shí)符由字母、下劃線、數(shù)字組成,且開(kāi)頭必須是字母或下劃線。所以D)選項(xiàng)中的連接符不合法。
17.D解析:本題考查的是二維數(shù)組元素在內(nèi)存中的排列形式。雖然二維數(shù)組成多維數(shù)組從結(jié)構(gòu)上來(lái)看不是線性的,但是在C語(yǔ)言中,這些數(shù)組元素在內(nèi)存中的排列是連續(xù)線性存放的。它們的排列規(guī)則是:第一維下標(biāo)變化最慢,最右邊的下標(biāo)變化最快.例如本題中定義的二維數(shù)組a[3][3]中9個(gè)元素在內(nèi)存中的排列順序是:a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2],a[2][0],a[2][1],a[2][2]。在主函數(shù)中,首先定義了二維數(shù)組a[3][3],然后定義了一個(gè)指針p指向數(shù)組a的第1個(gè)元素a[0][0]。在第一個(gè)for循環(huán)中,依數(shù)組a在內(nèi)存中的排列順序?yàn)槠湓刭x從0~8九個(gè)值,然后用第二個(gè)for循環(huán)依次輸出a[1][0],a[1][1],a[1][2]三個(gè)元素的值。所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。
18.Btypedef并不是增加一種新的類型,而是對(duì)已存在的類型用一個(gè)新的名字來(lái)代表,所以B選項(xiàng)錯(cuò)誤。故本題答案為B選項(xiàng)。
19.D解析:結(jié)構(gòu)體structureworkers中的成員s是結(jié)構(gòu)體類型,給w中成員year賦值的語(yǔ)句是w.s.year=1980,故選D。
20.A函數(shù)返回值類型可以是簡(jiǎn)單類型和結(jié)構(gòu)體類型。
21.3!feof(f1)3\r\n!feof(f1)解析:要實(shí)現(xiàn)文件復(fù)制,需要指定源文件及目的文件,因此在命令行下執(zhí)行程序時(shí)至少要指定兩個(gè)參數(shù),加上程序名本身,故argc的值至少為3,因此第一空應(yīng)填3。while循環(huán)中語(yǔ)句fputc(fgetc(f1),f2);的目的是將f1中的字符依次讀出并寫(xiě)入到f2對(duì)應(yīng)的文件中去,直至文件f1結(jié)束為止,因此第二空為!feof(f1)。
22.main()pstr*(pstr+j)
23.ex或structstex或structst解析:求一個(gè)變量所占的存儲(chǔ)單元數(shù),用sizeof函數(shù),參數(shù)為該變量名或其變量類型。
24.30x30x解析:本題的參數(shù)傳遞屬于值傳遞,所以函數(shù)內(nèi)不能改變調(diào)用函數(shù)中的數(shù)據(jù)。
25.0&a[i]a[i]0\r\n&a[i]\r\na[i]解析:本題要求從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),井計(jì)算它們的和。程序中首先要對(duì)存放正數(shù)個(gè)數(shù)的變量count及存放和值的變量sum初始化為0,所以第一空應(yīng)填0。接著要求從終端讀入數(shù)據(jù)到數(shù)組中,可以通過(guò)scanf函數(shù)實(shí)現(xiàn),因此第二空應(yīng)填&a[i]。最后通過(guò)sum+=a[i];語(yǔ)句累加正數(shù)a[i]的值到sum中,因此第三空應(yīng)填a[i]。
26.86518651解析:主程序中,第一次循環(huán)時(shí),i=0,調(diào)用sb(s,x)子函數(shù),此時(shí)n=3,x=s[n]=s[3]=8,然后將n減1變?yōu)?;第二次循環(huán)時(shí),i=1,調(diào)用sb(s,x)子函數(shù),因?yàn)閷定義為了靜態(tài)變量,所以此時(shí)n=2,返回x=s[n]=s[2]=6;第三次循環(huán)時(shí),i=2,調(diào)用sb(s,x)子函數(shù),此時(shí)n=1,返回x=s[n]=s[1]=5;第四次循環(huán)時(shí),i=3,調(diào)用sb(s,x)子函數(shù),此時(shí)n=0,返回x=s[n]=s[0]=1。此程序?qū)嶋H上是將數(shù)組s逆序輸出。
27.arjteartest
28.1010解析:該for語(yǔ)句以i為0,j為10作為初始值,循環(huán)條件是i<=j,每次循環(huán)后i增1、j減1,循環(huán)體是將i與j的和賦給k,這樣變量k將保存的是最后一次賦給它的值。一次循環(huán)后i為1、j為9,二次循環(huán)后i為2、j為8,……,五次循環(huán)后i為5、j為5,第六次循環(huán),將i與j的和10賦給k后,i為6、j為4,循環(huán)結(jié)束,k值為10。
29.時(shí)間時(shí)間解析:算法的復(fù)雜度主要指時(shí)間復(fù)雜度和空間復(fù)雜度。
30.“filea.dat”“r”“filea.dat”,“r”解析:考查對(duì)文件的操作。fopen函數(shù)的調(diào)用方式通常為fopen(文件名,使用文件方式)。本題中要求程序可以打開(kāi)filea.dat文件,并且是要讀取文件中的內(nèi)容,所以空白處應(yīng)當(dāng)填入'filea.dat','r'。
31.x+8sin(x)x+8,sin(x)解析:考查考生對(duì)函數(shù)調(diào)用相關(guān)知識(shí)的了解。用x+8代替函數(shù)fun(doublex)中形式參數(shù)x;用sin(x)代替函數(shù)fun(doublex)中形式參數(shù)x。
32.D
33.77解析:本題考查英文字母ASCII碼值的概念。字符參與運(yùn)算的值是其對(duì)應(yīng)的ASCII碼,字符H的ASCII碼為72,A的ASCII碼為65,0的ASCII碼為48,所以a=72-65+48=55,ASCII碼值為55的字符是7。
34.b=I+1b=I+1解析:本題考查了for循環(huán)語(yǔ)句的執(zhí)行過(guò)程。i+=2是修正表達(dá)式,執(zhí)行一次循環(huán)體后i的值就增加2,i的初始值為0,每次加2后的和累加至a,所以a的值就是110之間的偶數(shù)之和;b的值是111之間的奇數(shù)和,但在輸出b值時(shí),c去掉多加的11,即為110之間的奇數(shù)之和。
35.int*int*解析:從題中代碼可知:z應(yīng)該是一個(gè)整型指針,因此應(yīng)填int*。
36.ASCⅡ
37.如果a能被i整除,則a是素?cái)?shù),返回值為0。如果a不能被i整除,則a不是素?cái)?shù),返回值為1。
38.邏輯獨(dú)立性邏輯獨(dú)立性解析:數(shù)據(jù)獨(dú)立性是數(shù)據(jù)與程序間的互不依賴性,即數(shù)據(jù)庫(kù)中數(shù)據(jù)獨(dú)立于應(yīng)用程序而不依賴于應(yīng)用程序。數(shù)據(jù)獨(dú)立性一般分為物理獨(dú)立性與邏輯獨(dú)立性兩個(gè)含義。注意:在人工管理階段,文件系統(tǒng)階段和數(shù)據(jù)庫(kù)管理階段中數(shù)據(jù)獨(dú)立性的特點(diǎn)。
39.24
40.非0非0解析:邏輯運(yùn)算中,非0表示邏輯“真”,用。表示邏輯“假”。
41.C解析:選項(xiàng)A中0.5/100.0將保留小數(shù)點(diǎn)后六位,不滿足題目要求,故選項(xiàng)A不正確;選項(xiàng)B和選項(xiàng)D也將保留小數(shù)點(diǎn)后六位,不滿足題目要求,故選項(xiàng)B不正確;所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
42.C解析:scanf()把用戶從鍵盤(pán)錄入的數(shù)字的第1、2位存入整型變量a;把第3、4、5位存入單精度實(shí)型變量b,把第6、7、8、9位存入單精度實(shí)型變量c,用戶錄入的第10位被scanf()遺棄。這時(shí)變量a、b、c的值分別為:98、765.000000、4321.000000。
43.D解析:本題考查while循環(huán)。第一次循環(huán),先拿x的值和(y-1)比較,此時(shí)x=1,y-1=2,循環(huán)條件成立,比較完將x的值加1,此時(shí)x=2,進(jìn)入循環(huán),a=a+1=1,判斷if語(yǔ)句的控制條件是否成立,y<x不成立,接著執(zhí)行下一次循環(huán)。第二次循環(huán),先拿x的值和(y-1)比較,此時(shí)x=2,y-1=1,循環(huán)條件成立,比較完將x的值加1,此時(shí)x=3,進(jìn)入循環(huán),a=a+1=2,判斷if語(yǔ)句的控制條件是否成立,y<x成立,執(zhí)行break語(yǔ)句退出循環(huán)。
44.B解析:二叉樹(shù)是由n≥0個(gè)結(jié)點(diǎn)的有限集合構(gòu)成,此集合或者為空集,或者由一個(gè)根結(jié)點(diǎn)及兩棵互不相交的左右子樹(shù)組成,并且左右子樹(shù)都是二叉樹(shù)。二叉樹(shù)可以是空集合,根可以有空的左子樹(shù)或空的右子樹(shù)。二叉樹(shù)不是樹(shù)的特殊情況,它們是兩個(gè)概念。二叉樹(shù)具有如下兩個(gè)特點(diǎn):①非空二叉樹(shù)只有一個(gè)根結(jié)點(diǎn)。②每一個(gè)結(jié)點(diǎn)最多有兩棵子樹(shù),且分別稱為該結(jié)點(diǎn)的左子樹(shù)與右子樹(shù)。
45.C解析:對(duì)象的基本特點(diǎn)包括;標(biāo)識(shí)惟一性、分類性、多態(tài)性、封裝性和獨(dú)立性等。繼承性不屬于對(duì)象的基本特點(diǎn)。
46.A本題主要考查標(biāo)識(shí)符的定義。對(duì)標(biāo)識(shí)符的定義是考試中常考的內(nèi)容之一。標(biāo)識(shí)符主要由數(shù)字、下畫(huà)線和字母組成,其中數(shù)字不能放在首位,另外,用戶自定義標(biāo)識(shí)符時(shí),不能將標(biāo)識(shí)符定義為C語(yǔ)言中已定義的關(guān)鍵字,如int、while等。
根據(jù)上面對(duì)標(biāo)識(shí)符的分析,我們不難看出本題的正確答案是A。在選項(xiàng)B中,3_xy以數(shù)字開(kāi)頭,不符合標(biāo)識(shí)符定義的規(guī)定;在選項(xiàng)C中,int是C語(yǔ)言系統(tǒng)中已經(jīng)定義了的關(guān)鍵字;在選項(xiàng)D中,LINE-3使用的數(shù)字、下畫(huà)線和字母以外的字符,因此不正確。
47.C解析:對(duì)線性表進(jìn)行順序查找時(shí),從表中的第一個(gè)元素開(kāi)始,將給定的值與表中逐個(gè)元素的關(guān)鍵字進(jìn)行比較,直到兩者相符,查找到所要找的元素為止.在最壞的情況下,要查找的元素是表的最后一個(gè)元素或查找失敗,這兩種情況都需要將這個(gè)元素與表中的所有元素進(jìn)行比較,因此比較次數(shù)為n。
48.D解析:在需求分析階段,根據(jù)可行性研究階段所提交的文檔,對(duì)目標(biāo)系統(tǒng)提出清晰、準(zhǔn)確和具體的要求。
49.D解析:在C語(yǔ)言中,數(shù)組元素下標(biāo)是從0開(kāi)始的;指針變量p指向數(shù)組的首地址。for循環(huán)語(yǔ)句中,指針變量p始終指向數(shù)組的首地址,因而執(zhí)行循環(huán)賦值語(yǔ)句后數(shù)組各元素的值均變?yōu)?。
50.B
51.C解析:#define宏名的有效范圍為定義命令之后到本源文件結(jié)束,可以在程序中使用#undef命令終止宏定義的作用域。本題由于#undef的作用,使a的作用范圍在#definea100到#undefa之間,故答案為C。
52.B
53.D解析:當(dāng)用scanf函數(shù)從鍵盤(pán)輸入數(shù)據(jù)時(shí),每行數(shù)據(jù)的末尾按下回車(chē)鍵(Enter鍵)之前,可以任意修改。但按下回車(chē)鍵putchar(c1)(Enter鍵)之后,scanf函數(shù)即接受了這一行數(shù)據(jù),不能再回去修改。所以本題中,當(dāng)輸入123<CR>時(shí),變量c1、c2、c3的值分別為1、2、3,當(dāng)輸入45678<CR>時(shí),變量c5、c6的值4和5。所以用輸出函數(shù)putchar(c1)輸出1,putchar(c2)輸出2,printf('%c%c\\n',c5,c6)輸出45。所以選項(xiàng)D)為正確答案。
54.C解析:本程序中的函數(shù)sort(inta[],intn)實(shí)現(xiàn)的功能是將數(shù)組a中的前n個(gè)數(shù)進(jìn)行從大到小排序。sort(&a[1],7)是將數(shù)組中從a[1]到a[7]這7個(gè)數(shù)進(jìn)行從大到小排序,其他數(shù)不變。
55.A
56.D解析:在C語(yǔ)言所有的運(yùn)算符中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低。C語(yǔ)言中區(qū)分大小寫(xiě),所以APH和aph是兩個(gè)不同的變量。賦值表達(dá)式a=b表示將b的值付給a,而b本身的值保持不變;通過(guò)鍵盤(pán)可以向計(jì)算機(jī)輸入允許的任何類型的數(shù)據(jù)。選項(xiàng)D)中當(dāng)從鍵盤(pán)輸入數(shù)據(jù)時(shí),對(duì)于整型變量可以輸入整型數(shù)值和字符,對(duì)于實(shí)型變量可以輸入實(shí)型數(shù)值和整型數(shù)值等。
57.C本題主要考查逗號(hào)表達(dá)式。逗號(hào)是一個(gè)特殊的運(yùn)算符,它具有所有運(yùn)算符中最低的優(yōu)先級(jí)。在C語(yǔ)言中,用它可以將兩個(gè)表達(dá)式連接起來(lái),逗號(hào)表達(dá)式的一般表現(xiàn)形式為:
表達(dá)式1,表達(dá)式2,…,表達(dá)式n
逗號(hào)表達(dá)式的求解過(guò)程是:先求解表達(dá)式1,再求解表達(dá)式2,依次往后計(jì)算,整個(gè)逗號(hào)表達(dá)式的值是最后一個(gè)表達(dá)式的值,如“3+5,5+6”的值是11。
在本題中,逗號(hào)表達(dá)式為i=4,j=16,k=32,根據(jù)上面的分析,計(jì)算逗號(hào)表達(dá)式得到的結(jié)果為k=32,最后將逗號(hào)表達(dá)式的結(jié)果賦值給變量x,那么變量x的值為32。因此,本題的正確答案選C。
58.A解析:選項(xiàng)B中d已經(jīng)為地址,不應(yīng)在加上求地址符號(hào)“&”,故選項(xiàng)B不正確;選項(xiàng)C中,a和b都為變量不是地址,應(yīng)該在a和b之前加上求地址符號(hào)“&”,故選項(xiàng)C不正確:選項(xiàng)D中指針d所指向的存儲(chǔ)空間的位置為變量c的值,不為地址,故選項(xiàng)D不正確,所以,4個(gè)選項(xiàng)中A為所選。
59.BC語(yǔ)言中允許使用一種特殊形式的字符常量,就是以一個(gè)“\\”開(kāi)頭的字符序列,這樣的字符稱為“轉(zhuǎn)義字符”。常用的轉(zhuǎn)義字符有:\\n,換行;\\t,水平制表;\\b,退格;\\r,回車(chē)。
60.C解析:s是一個(gè)含有兩個(gè)元素的指針數(shù)組,pp是一個(gè)指向指針變量的指針,s[0]是指向二維數(shù)組a行下標(biāo)為0的元素的首地址,即時(shí)a[0][0]的地址,s[1]為a[1][0]的地址。pp的值為s[0]的地址。**pp=s[1][1]后,a[0][0]的值將被賦值為a[1][1]的值,執(zhí)行p=*pp;后,p中將是s[0]的值,最后的輸出語(yǔ)句將輸出地址s[0]所指向的數(shù)據(jù),即a[0][0]。
61.C
62.B
63.C解析:對(duì)象的封裝性是指從外面看只能看到對(duì)象的外部特性;而對(duì)象的內(nèi)部,其處理能力的實(shí)行和內(nèi)部狀態(tài)對(duì)外是不可見(jiàn)的,是隱蔽的。
64.B棧是按先進(jìn)后出的原則組織數(shù)據(jù)的;隊(duì)列是按先進(jìn)先出的原則組織數(shù)據(jù)的,因此本題答案為B)。
65.B
66.D解析:中序遍歷的遞歸算法定義:①遍歷左子樹(shù);②訪問(wèn)根結(jié)點(diǎn);③遍歷右子樹(shù)。前序遍歷的遞歸算法定義:①訪問(wèn)根結(jié)點(diǎn);②遍歷左子樹(shù);③遍歷右子樹(shù)。后序遍歷的遞歸算法定義:①遍歷左子樹(shù);②遍歷右子樹(shù);③訪問(wèn)根結(jié)點(diǎn)。根據(jù)前序遍歷的結(jié)果可知,a是根結(jié)點(diǎn)。由中序遍歷的結(jié)果dgbaechf可知,d、g、b是左子樹(shù)的結(jié)點(diǎn),e、c、h、f是右子樹(shù)的結(jié)點(diǎn)。再由前序遍歷的結(jié)果bdg可知,b是a左邊子樹(shù)的根,由cefh可知,c是a右邊子樹(shù)的根。再由中序遍歷的結(jié)果dgb可知,d、g是b左邊子樹(shù)的結(jié)點(diǎn),b右邊子樹(shù)無(wú)結(jié)點(diǎn)。再由前序遍歷結(jié)果dg可知,d為b左子樹(shù)的根,g是以d為根的子樹(shù)的右結(jié)點(diǎn)。至此,a的左子樹(shù)已完全弄清楚了。同樣的道理,可以弄清楚以c為根的子樹(shù)的結(jié)點(diǎn)位置。所以可知后序遍歷的結(jié)果是D。
67.C根據(jù)賦值運(yùn)算的類型轉(zhuǎn)換規(guī)則,先將double型的常量l.2轉(zhuǎn)換為int型,因?yàn)閤的類型是int,則X的值為1;執(zhí)行語(yǔ)句y=(K+3.8)/5.0時(shí),即先將整型變量X的值1轉(zhuǎn)換為double型1.0,然后3.8相加得4.8,進(jìn)行除法運(yùn)算4.8/5.0結(jié)果為0.即變量y的值為0,d*Y的值也為0,故選C選項(xiàng)。
68.D在本題中,題目要求我們分析給出程序段錯(cuò)誤的原因。我們可以結(jié)合選項(xiàng)和程序段來(lái)分析。
在C語(yǔ)言中,是可以將字符型的變量賦值給整型變量的,主要是由于字符型是以ASCII碼存儲(chǔ)在計(jì)算機(jī)中的,在賦值的過(guò)程中,系統(tǒng)會(huì)將其對(duì)應(yīng)的ASCII碼值賦給整型變量,選項(xiàng)A描述的錯(cuò)誤原因是不成立的。
*p表示的是數(shù)值,而非地址,*p=40;語(yǔ)句是合法的語(yǔ)句,選項(xiàng)B描述的錯(cuò)誤原因也是不成立的。雖然q沒(méi)有指向具體的存儲(chǔ)單元,但*q的實(shí)際意義仍然是一樣的,選項(xiàng)C描述的錯(cuò)誤原因是不成立的。
執(zhí)行*p=*q;操作沒(méi)有實(shí)際的意義,因?yàn)橹羔樧兞縬所指向的存儲(chǔ)單元沒(méi)有確定的值,用一個(gè)沒(méi)有值的變量對(duì)其他變量賦值,沒(méi)有實(shí)際意義,而且還可能影響后面語(yǔ)句的執(zhí)行結(jié)果,D選項(xiàng)描述的錯(cuò)誤原因是正確的。
69.C(10)C)解析:DB即數(shù)據(jù)庫(kù)(Database),是統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合;DBMS即數(shù)據(jù)庫(kù)管理系統(tǒng)(DatabaseManagementSystem),是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,為用戶或應(yīng)用程序提供訪問(wèn)DB的方法;DBS即數(shù)據(jù)庫(kù)系統(tǒng)(DatabaseSystem)由如下5部分組成,數(shù)據(jù)庫(kù)(數(shù)據(jù))、數(shù)據(jù)庫(kù)管理系統(tǒng)(軟件)、數(shù)據(jù)庫(kù)管理員(人員)、系統(tǒng)平臺(tái)之一——硬件平臺(tái)(硬件)、系統(tǒng)平臺(tái)之二——軟件平臺(tái)(軟件)。
70.B兩個(gè)相同結(jié)構(gòu)關(guān)系的“并”是由屬于這兩個(gè)關(guān)系的元組組成的集合。
71.B模塊獨(dú)立性是指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡(jiǎn)單。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨(dú)立性,所以A錯(cuò)誤,B正確。耦合性是模塊間互相連接的緊密程度的度量而內(nèi)聚性是指一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度,所以C與D錯(cuò)誤。故答案為B選項(xiàng)。
72.A
73.B
74.B根據(jù)ASCII碼可知大寫(xiě)字符A與小寫(xiě)字符a的ASCIl碼相差32,而D中應(yīng)該是加上'a',選項(xiàng)A和C左側(cè)的表達(dá)式都是大寫(xiě)字符C與大寫(xiě)字符A的差與'a'的ASCIl代碼的和就是小寫(xiě)字符c的ASCII代碼。
75.B
76.C
77.A解析:結(jié)構(gòu)化程序的概念首先是從以往編程過(guò)程中無(wú)限制地使用轉(zhuǎn)移語(yǔ)句而提出的。轉(zhuǎn)移語(yǔ)句可以使程序的控制流程強(qiáng)制性地轉(zhuǎn)向程序的任一處,在傳統(tǒng)流程圖中,就是用上節(jié)我們提到的“很隨意”的流程線來(lái)描述這種轉(zhuǎn)移功能。如果一個(gè)程序中多處出現(xiàn)這種轉(zhuǎn)移情況,將會(huì)導(dǎo)致程序流程無(wú)序可尋,程序結(jié)構(gòu)雜亂無(wú)章,這樣的程序是令人難以理解和接受的,并且容易出錯(cuò)。尤其是在實(shí)際軟件產(chǎn)品的開(kāi)發(fā)中,更多的追求軟件的可讀性和可修改性,象這種結(jié)構(gòu)和風(fēng)格的程序是不允許出現(xiàn)的。
78.A【答案】:A【知識(shí)點(diǎn)】:二叉樹(shù)的性質(zhì)
【解析】:由二叉樹(shù)的性質(zhì)3可知,度為0的結(jié)點(diǎn)數(shù)(即葉子結(jié)點(diǎn)數(shù))=度為2的結(jié)點(diǎn)數(shù)+1。題目中給出葉子結(jié)點(diǎn)數(shù)為5個(gè),利用性質(zhì)3可計(jì)算出度為2的結(jié)點(diǎn)數(shù)為4個(gè)。在二叉樹(shù)只有三種結(jié)點(diǎn):度為0的、度為1的、度為2的,總數(shù)為25個(gè),所以度為1的結(jié)點(diǎn)數(shù)即為25-5-4=16個(gè),所以答案為A。
79.Aa<<2的值為20,2011結(jié)果為21,所以答案選擇A)。
80.AB)選項(xiàng)中打開(kāi)一個(gè)已存在的文件并進(jìn)行了寫(xiě)操作后,原有文件中的全部數(shù)據(jù)不一定被覆蓋,也可以對(duì)源文件進(jìn)行追加操作等。c)選項(xiàng)中在一個(gè)程序中當(dāng)對(duì)文件進(jìn)行了寫(xiě)操作后,不用先關(guān)閉該文件然后再打開(kāi),才能讀到第1個(gè)數(shù)據(jù),可以用fseek()函數(shù)進(jìn)行重新定位即可。D)選項(xiàng)中,C語(yǔ)言中的文件可以進(jìn)行隨機(jī)讀寫(xiě)。故本題答案為A)。
81.\n\t(1)錯(cuò)誤:intproc(charstr[])
\n正確:voidproc(char、tr[])
\n(2)錯(cuò)誤:str[j]=str[++];
\n正確:str[j]=str[i];
\n【解析】由主函數(shù)中的函數(shù)調(diào)用可知,函數(shù)proc沒(méi)有返回值。因此,“intproccharstr[])”應(yīng)改為“voidproc(charstr[])”;由函數(shù)proc可知,if語(yǔ)句塊完成將字符串str中的第i個(gè)元素與第j個(gè)元素相交換。因此,“str[j]=str[i++];”應(yīng)改為“str[j]=str[i];”。\n
82.1voidfun(intx,intpp[],int*n)2{3inti,j=0;4for(i=l;i<=x;i=i+2)/*i的初值為1,步長(zhǎng)為2,確保i為奇數(shù)*/5if(x%i==0)/*將能整除x的數(shù)存入數(shù)組pp中*/6pp[j++]=i;7*n=j;/*傳回滿足條件的數(shù)的個(gè)數(shù)*/8}本題考查:偶數(shù)的判定方法;整除的實(shí)現(xiàn)。本題題干信息:能整除X且不是偶數(shù)的所有整數(shù)。循環(huán)語(yǔ)句中變量i從1開(kāi)始且每次遞增2,所以i始終是奇數(shù)。將能整除x的i值存放到數(shù)組PP中,整除采用求余運(yùn)算符“%”,即“x%i==0”。最后將數(shù)據(jù)元素個(gè)數(shù)j保存到n中。2021年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.執(zhí)行下面的程序段后,變量k中的值為()。intk=3,s[2];s[0]=k;k=s[1]*10;
A.不定值B.33C.30D.10
2.樹(shù)的度為3,且有9個(gè)度為3的節(jié)點(diǎn),5個(gè)度為1的節(jié)點(diǎn),但沒(méi)有度為2的節(jié)點(diǎn)。則該樹(shù)中的葉子節(jié)點(diǎn)數(shù)為()。
A.18B.33C.19D.32
3.成功的測(cè)試是指A.A.運(yùn)行測(cè)試實(shí)例后未發(fā)現(xiàn)錯(cuò)誤
B.發(fā)現(xiàn)程序的錯(cuò)誤
C.證明程序正確
D.軟件產(chǎn)生
4.有以下程序,程序中庫(kù)函數(shù)islower(ch)用以判斷ch中的字母是否為小寫(xiě)字母:
程序運(yùn)行后的輸出結(jié)果是()。
A.abcdEFg!B.AbCdEFg!C.abcdEFG!D.aBcDEFG!
5.以下函數(shù)調(diào)用語(yǔ)句中含有實(shí)參個(gè)數(shù)為().func((exp1,exp2),(exp3,exp4,exp5));
A.1個(gè)B.2個(gè)C.4個(gè)D.5個(gè)
6.對(duì)一個(gè)關(guān)系投影操作以后,新關(guān)系的元組個(gè)數(shù)______原來(lái)關(guān)系的元組個(gè)數(shù)。
A.小于B.小于或等于C.等于D.大于
7.若要求從鍵盤(pán)讀入含有空格字符的字符串,應(yīng)使用函數(shù)()。
A.getcharB.getcC.getsD.scanf
8.有下列程序:fun(intX,inty){return(x+y);)main(){inta=1,b=2,c=3,sum;sum=fun((a++,b++,a+b),c++);printf("%d\n",sum);}執(zhí)行后的輸出結(jié)果是()。A.6B.7C.8D.9
9.為非法的字符串常量()。A.“case”B.“”C.”056”D.‘123’
10.下列敘述中正確的是()。
A.順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的
B.順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)
C.順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表
D.鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間
11.有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句:structSTD{charname[10];intage;charsex;}s[5],*ps;ps=&s[0];則下列scanf函數(shù)調(diào)用語(yǔ)句有錯(cuò)誤的是()。
A.scanf(“%s”,s[0].name);
B.scanf(“%d”,&s[0].age);
C.scanf(“%c”,&(ps->sex));
D.scanf(“%d”,ps->age);
12.數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS中用來(lái)定義模式、內(nèi)模式和外模式的語(yǔ)言為()。
A.CB.BasicC.DDLD.DML
13.已知A=10,B=20,下類表達(dá)式正確的是()。
A.C=(A++)*(--B)=200
B.A-=30
C.C=(A++)+(B--)=30
D.C=(++A)*(--B)=210
14.有以下程序:#includemain(){intx,y,z;x=y=1;z=x++,y++,++y;printf(“%d,%d,%d\n”,x,y,z);}程序運(yùn)行后的輸出結(jié)果是()。A.2.3.3B.2.3.2C.2.3.1D.2.2.1
15.對(duì)于長(zhǎng)度為n的線性表,在最壞情況下,下列各種排序法所對(duì)應(yīng)的比較次數(shù)中正確的是(
A.冒泡排序?yàn)閚/2B.冒泡排序?yàn)閚C.快速排序?yàn)閚D.快速排序?yàn)閚(n-1)/2
16.按照C語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是()。A.大寫(xiě)字母B.下劃線C.數(shù)字字符D.連接符
17.有以下程序main(){inta[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i;for(i=0;i<3;i++)printf("%d",a[1][i]);}程序運(yùn)行后的輸出結(jié)果是
A.12B.123C.234D.345
18.下列敘述中錯(cuò)誤的是()。
A.可以用typedef將已存在的類型用一個(gè)新的名字來(lái)代表
B.可以通過(guò)typedef增加新的類型
C.用typedef定義新的類型名后,原有類型名仍有效
D.用typedef可以為各種類型起別名,但不能為變量起別名
19.有以下定義和語(yǔ)句
StructWorkers
{intnum;charname[20];charc;
struct
{intday;intmonth;intyear;}s;
};
StructWorkersW,*pe;
PW=&W;
能給W中yeaR成員賦1980的語(yǔ)句是A.*pW.yeaR=1980;
B.W.yeaR=1980;
C.pW->yeaR=1980;
D.W.s.yeaR=1980;
20.以下敘述中錯(cuò)誤的是()。
A.函數(shù)的返回值類型不能是結(jié)構(gòu)體類型,只能是簡(jiǎn)單類型
B.函數(shù)可以返回指向結(jié)構(gòu)體變量的指針
C.可以通過(guò)指向結(jié)構(gòu)體變量的指針訪問(wèn)所指結(jié)構(gòu)體變量的任何成員
D.只要類型相同,結(jié)構(gòu)體變量之間可以整體賦值
二、2.填空題(20題)21.實(shí)現(xiàn)程序可將磁盤(pán)中的一個(gè)文件復(fù)制到另一個(gè)文件中,兩個(gè)文件的文件名在可執(zhí)行命令的命令行中(相當(dāng)于copy命令),假定文件在當(dāng)前目錄下。請(qǐng)補(bǔ)全程序。
#include<stdio.h>
voidmain(intargc,char*argv[])
{FILE*f1,*f2;
if(argc<【】)
{printf("parametererror!\n");exit(0);}
f1=fopen(argv[1],"r");
f2=fopen(argv[2],"w");
while(【】)fputc(fgetc(f1),f2);
fclose(f1);
fclose(f2);
}
22.若輸入thistestterminal,以下程序的輸出結(jié)果為:terminaltestthis。請(qǐng)?zhí)羁铡?/p>
#defineMAXLINE20
【】
{inti;
char*pstr[3],str[3][MAXLINE];
for(i=0;i<3;++)pstr[i]=str[i];
for(i=0;i<3;i++)scanf("%s",pstr[1]);
sort(pstr);
for(i=0;i<3;i++)prntf("%s",pstr[i]);
}
sort(【】)
char*pstr[3];
{inti,j;
char*p;
for(i=0;i<3;i++)
for(j=i+1;j<3;j++)
if(strcmp(*(pstr+i,*(pstr+j)>0
{p=*(pstr+i);
*(pstr+i=【】;
*(pstr+j)=p;
}
23.以下程序用來(lái)輸出結(jié)構(gòu)體變量ex所占存儲(chǔ)單元的字節(jié)數(shù):
structst
{charname[20];doublescore;};
main()
{structstex;
printf("exsize:%d\n",sizeof(【】));
}
24.閱讀下列程序,則程序的輸出結(jié)果為【】。
#include"stdio.h"
structty
{intdata;
charc;};
main()
{structtya={30,'x'};
fun(a);
printf("%d%c",a.data,a.c);}
fun(structtyb)
{b.data=20;
b.c='y';}
25.以下程序是從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們的和。請(qǐng)?zhí)羁铡?/p>
main()
{
inti,a[20],sum,count;
sum=count=【】;
for(i=0;i<20;i++)scanf("%d",【】);
for(i=0;i<20;i++)
{
if(a[i]>0)
{count++:
sum+=【】;
}
}
printf("sum=%d,count=%d\n",sum.count);
}
26.下列程序的輸出結(jié)果是______。
#include<stdio.h>
sb(ints[],intb)
{staticintn=3;
b=s[n];
n--;
return(b);
}
main()
{ints[]={1,5,6,8};
inti,x=0;
for(i=0;i<4;i++)
{x=sb(s,x);
printf("%d",x);
}
printf("\n");
}
27.若輸入tear、test、arj,則下列程序的運(yùn)行結(jié)果為【】。
main()
{char*strl[20],*str2[20],*str3[20];
charswap();
scanf("%s",str1);
scanf("%s",str2);
scanf("%s",str3);
if(strcmp(str1,str2)>0)swap(str1,str2);
if(strcmp(str1,str3)>0)swap(str1,str3);
if(strcmp(str2,str3)>0)swap(str2,str3);
printf("%s%s%s\n",str1,str2,str3);
}
charswap(p1,p2)
char*p1,*p2;
{char*p[20];
strcpy(p,p1);strcpy(p1,p2);strcpy(p2,p);
}
28.設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for語(yǔ)句后,k的值為【】。
for(i=0,j=10;i<=j;i++,j--)k=i+j;
29.算法的復(fù)雜度主要包括空間復(fù)雜度和______復(fù)雜度。
30.以下程序的功能是從名為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);
}
31.以下程序中,函數(shù)fun的功能是計(jì)算x2-2x+6,主函數(shù)中將調(diào)用fun函數(shù)計(jì)算:
y1=(x+8)2-2(x+8)+6
y2=sin2(x)-2sin(x)+6
請(qǐng)?zhí)羁铡?/p>
#include"math.h"
doublefun(doublex){return(x*x-2*x+6);}
main()
{doublex,y1,y2;
printf("Enterx:");scanf("%lf",&x);
y1=fun(【】);
y2=fun(【】);
printf("y1=%lf,y2=%lf\n",y1,y2);
}
32.設(shè)有下面的程序段:chars[]="china";char*p;p=S;則下列敘述正確的是
33.若有以下程序:
main()
{chara;
a='H'-'A'+'0';
printf("%c\n",a);
}
執(zhí)行后的輸出結(jié)果是【】。
34.下面程序的功能是:計(jì)算110之間的奇數(shù)之和與偶數(shù)之和,請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{inta,b,c,I;
a=c=0;
for(I=0;I<=10;I+=2)
{a+=I;
【】;
c+=b;}
printf("偶數(shù)之和=%d\n",a);
printf("奇數(shù)之和=%d\n",c-11);}
35.以下函數(shù)用來(lái)求出兩整數(shù)之和,并通過(guò)形參將結(jié)果傳回,請(qǐng)?zhí)羁铡?/p>
voidfunc(intx,inty,【】z)
{*z=x+y;}
36.在C語(yǔ)言中,字符的比較就是對(duì)它們的【】碼進(jìn)行比較。
37.以下isprime函數(shù)的功能是判斷形參a是否為素?cái)?shù),是素?cái)?shù),函數(shù)返回1,否則返回0。請(qǐng)?zhí)羁铡?/p>
intisprime(inta)
for(i=2;i<=a/2;i++)
if(a%i==0)[8];
[9];
38.數(shù)據(jù)庫(kù)系統(tǒng)階段的數(shù)據(jù)具有較高獨(dú)立性,數(shù)據(jù)獨(dú)立性包括物理獨(dú)立性和【】?jī)蓚€(gè)含義。
39.以下程序運(yùn)行后的輸出結(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);
}
40.C語(yǔ)言中用______表示邏輯值為“真”,用數(shù)字“0”表示邏輯值為“假”。
三、1.選擇題(20題)41.設(shè)變量x為noat型且已賦值,則以下語(yǔ)句中能將x中的數(shù)值保留到小數(shù)點(diǎn)后兩位,并將第3位四舍五入的是()。
A.X=X*100+0.5/100.0;
B.x=(x*100+0.5)/100.0;
C.x=(int)(x*100+0.5)/100.0;
D.x=(x/100+0.5)*100.0;
42.請(qǐng)讀程序:#include<stdio.h>main(){inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);printf("\na=%d,b=%f,c=%f\n",a,b,c)}若運(yùn)行時(shí)從鍵盤(pán)上輸入987643210則上面程序的輸出結(jié)果是______。
A.a=98,b=75,c=4321
B.a=10,b=432,c=8765
C.a=98,b=765.000000c=4321.000000
D.a=98,b=765.0,c=4321.000000
43.下列程序的運(yùn)行結(jié)果是()。main(){intx=1,y=3,a=0;while(x++!=(y=1)){a+1;if(y<x)break;}printf("%d,%d,%d\n”,x,y,a);}
A.2,3,2B.2,3,1C.1,3,3D.3,1,2
44.下列二叉樹(shù)描述中,正確的是()
A.任何一棵二叉樹(shù)必須有一個(gè)度為2的結(jié)點(diǎn)B.二叉樹(shù)的度可以小于2C.非空二叉樹(shù)有0個(gè)或1個(gè)根結(jié)點(diǎn)D.至少有2個(gè)根結(jié)點(diǎn)
45.以下不屬于對(duì)象的基本特點(diǎn)的是()
A.分類性B.多態(tài)性C.繼承性D.封裝性
46.下列是用戶自定義標(biāo)識(shí)符的是
A._w1B.3_xyC.intD.LINE-3
47.對(duì)長(zhǎng)度為n的線性表進(jìn)行順序查找,在最壞的情況下需要比較的次數(shù)為()。
A.125B.n/2C.nD.n+1
48.在軟件生存周期中,能準(zhǔn)確確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是()。
A.概要設(shè)計(jì)B.詳細(xì)設(shè)計(jì)C.可行性分析D.需求分析
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]);}上面程序的輸出結(jié)果是()。
A.6B.8C.4D.2
50.設(shè)有定義:structsk{inta;floatb;}data,*p;若有p=&data;,則對(duì)data中的a域的正確引用是()
A.(*p).data.aB.(*p).aC.p->data.aD.p.data.a
51.以下程序的輸出結(jié)果是______。#include<stdio.h>main(){inta=200;#definea100printf("%d",a);#undefaprintf("%d
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 業(yè)務(wù)流程跟蹤與監(jiān)控表
- 鋁灰渣資源化利用改建項(xiàng)目實(shí)施方案(范文模板)
- 2025年四川省達(dá)州市中考英語(yǔ)真題含答案
- 房屋預(yù)售購(gòu)銷合同
- 中試平臺(tái)建設(shè)的資金籌措與資源配置策略
- 生物制藥中試平臺(tái)建設(shè)的背景與發(fā)展趨勢(shì)
- 建筑設(shè)計(jì)原理與設(shè)計(jì)題集
- 《宏觀經(jīng)濟(jì)與微觀經(jīng)濟(jì):高二經(jīng)濟(jì)學(xué)基礎(chǔ)教案》
- 資源整合與優(yōu)化在中試能力建設(shè)中的應(yīng)用
- 品牌加盟合作合同協(xié)議書(shū)詳細(xì)內(nèi)容約定
- 2025年河北省萬(wàn)唯中考定心卷地理(一)
- 創(chuàng)造性思維與創(chuàng)新方法(大連民族大學(xué))知到網(wǎng)課答案
- 2024北京西城區(qū)四年級(jí)(下)期末數(shù)學(xué)試題及答案
- 中國(guó)慢性阻塞性肺疾病基層診療指南(2024年)解讀
- 包工不包料合同
- DB52∕T 046-2018 貴州省建筑巖土工程技術(shù)規(guī)范
- PCO行業(yè)衛(wèi)生殺蟲(chóng)劑[通用]
- 鋁合金門(mén)窗鋼副框安裝過(guò)程圖解1課件
- (演唱)大母雞花公雞
- XY-44C型立軸式巖芯鉆機(jī)使用說(shuō)明書(shū)
- 藥物溶出度數(shù)據(jù)處理軟件
評(píng)論
0/150
提交評(píng)論