高级语言程序设计与应用模拟试题.docx

上传人:b****4 文档编号:4618743 上传时间:2022-12-07 格式:DOCX 页数:32 大小:27.59KB
下载 相关 举报
高级语言程序设计与应用模拟试题.docx_第1页
第1页 / 共32页
高级语言程序设计与应用模拟试题.docx_第2页
第2页 / 共32页
高级语言程序设计与应用模拟试题.docx_第3页
第3页 / 共32页
高级语言程序设计与应用模拟试题.docx_第4页
第4页 / 共32页
高级语言程序设计与应用模拟试题.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

高级语言程序设计与应用模拟试题.docx

《高级语言程序设计与应用模拟试题.docx》由会员分享,可在线阅读,更多相关《高级语言程序设计与应用模拟试题.docx(32页珍藏版)》请在冰豆网上搜索。

高级语言程序设计与应用模拟试题.docx

高级语言程序设计与应用模拟试题

高级语言程序设计(C)模拟试题一

一、选择题

1、执行下面的程序段后,变量k中的值为(A)。

A)不定值B)33C)30D)10

intk=3,s[2];

s[0]=k;k=s[1]*10;

(2000年4月)

2、设有数组定义:

chararray[]="China";则数组array所占的空间为(B)。

A)4个字节B)5个字节C)6个字节D)7个字节

(2000年4月)

3、下列程序执行后的输出结果是(A)。

A)you&meB)youC)meD)err

main()

{chararr[2][4];

strcpy(arr,"you");strcpy(arr[1],"me");

arr[0][3]='&';

printf("%s\n",arr);

}(2000年4月)

4、执行下列程序时输入:

123<空格>456<空格>789<回车>,输出结果是(D)。

A)123,456,789B)1,456,789

C)1,23,456,789D)1,23,456

main()

{chars[100];intc,i;

scanf("%c",&c);scanf("%d",&i);scanf("%s",s);

printf("%c,%d,%s\n",c,i,s);

}(2000年4月)

5、有如下程序

main()

{intn[5]={0,0,0},i,k=2;

for(i=0;i

printf(“%d\n”,n[k]);

}

该程序的输出结果是(D)。

A)不确定的值B)2C)1D)0

(2000年9月)

6、有如下程序

main()

{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

for(i=1;i<3;i++)

for(j=0;j

printf(“%d\n”,s);

}

该程序的输出结果是(14)。

A)18B)19C)20D)21

(2000年9月)

7、以下程序的输出结果是(C)。

A)1,5,9B)1,4,7C)3,5,7D)3,6,9

main()

{inti,x[3][3]={1,2,3,4,5,6,7,8,9};

for(i=0;i<3;i++)printf(“%d,”,x[i][2-i]);

}(2001年4月)

8、以下程序的输出结果是(A)。

A)18B)19C)20D)21

main()

{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

for(i=1;i<3;i++)

for(j=0;j<=i;j++)s+=a[i][j];

printf(“%dn”,s);

}(2001年4月)

9、以下程序的输出结果是(D)。

A)ABCDB)ABCDC)EFGD)EFGH

FGHEFGJKIJKL

KLIJO

M

main()

{charw[][10]={“ABCD”,”EFGH”,”IJKL”,”MNOP”},k;

for(k=1;k<3;k++)printf(“%s\n”,w[k]);

}(2001年4月)

10、假定int类型变量占用两个字节,其有定义:

intx[10]={0,2,4};,则数组x在内存中所占字节数是(D)。

A)3B)6C)10D)20

(2001年9月)

11、以下程序的输出结果是(C)。

main()

{inti,a[10];

for(i=9;i>=0;i--)a[i]=10-i;

printf(“%d%d%d”,a[2],a[5],a[8]);

}

A)258B)741C)852D)36

(2001年9月)

12、以下数组定义中不正确的是(D)。

A)inta[2][3];

B)intb[][3]={0,1,2,3};

C)intc[100][100]={0};

D)intd[3][]={{1,2},{1,2,3},{1,2,3,4}};(2001年9月)

13、以下程序的输出结果是(A)。

main()

{inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf(“%d%d%d%d\n”,a[0][3],a[1][2],a[2][1],a[3][0];

}

A)0650B)1470C)5430D)输出值不定

(2001年9月)

14、以下程序的输出结果是(B)。

main()

{charst[20]=“hello\0\t\\\”;

printf(%d%d\n”,strlen(st),sizeof(st));

}

A)99B)520C)1320D)2020

(2001年9月)

15、以下程序段的输出结果是(A)。

chars[]="\\141\141abc\t";

printf("%d\n",strlen(s));

A)9B)12C)13D)14

(2002年4月)

16、以下程序的输出结果是(B)。

main()

{charcf[3][5]={"AAAA","BBB","CC"};

printf("\"%s\"\n",ch[1]);

}

A)"AAAA"B)"BBB"C)"BBBCC"D)"CC"

(2002年4月)

17、以下程序的输出结果是(A)。

main()

{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;

for(i=0;i<3;i++)

for(j=i;j<=i;j++)t=t+b[i][b[j][j]];

printf("%d\n",t);

}

A)3B)4C)1D)9

(2002年4月)

18、有以下程序

main()

{intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};

inti,s=0;

for(i=0;i<4;i++)s+=aa[i][1];

printf(“%d\n”,s);

}

程序运行后的输出结果是(B)。

A)11B)19C)13D)20

(2002年9月)

19、有以下程序

main()

{intp[7]={11,13,14,15,16,17,18},i=0,k=0;

while(i<7&&p[i]%2){k=k+p[i];i++;}

printf("%d\n",k);

}

执行后输出结果是(D)。

A)58B)56C)45D)24(2003年4月)

20、以下能正确定义数组并正确赋初值的语句是(D)。

A)intN=5,b[N][N];B)inta[1][2]={{1},{3}};

C)intc[2][]={{1,2},{3,4}};D)intd[3][2]={{1,2},{34}};

(2003年4月)

21、有以下程序

main()

{intm[][3]={1,4,7,2,5,8,3,6,9};

inti,j,k=2;

for(i=0;i<3;i++)

{printf("%d",m[k][i]);}

}

执行后输出结果是(C)。

A)456B)258C)369D)789

(2003年4月)

22、以下函数的功能是:

通过键盘输入数据,为数组中的所有元素赋值。

#defineN10

voidarrin(intx[N])

{inti=0;

while(i

scanf("%d",);

}

在下划线处应填入的是(BC)。

A)x+iB)&x[i+1]C)x+(i++)D)&x[++i]

(2003年4月)

23、以下不能正确定义二维数组的选项是(D)。

A)inta[2][2]={{1},{2}};B)inta[][2]={1,2,3,4};

C)inta[2][2]={{1},2,3};D)inta[2][]={{1,2},{3,4}};

(2003年9月)

24、以下能正确定义一维数组的选项是(B)。

A)intnum[];B)#defineN100

intnum[N];

C)intnum[0..100];D)intN=100;

intnum[N];

(2003年9月)

25、有以下程序

main()

{chara[]={‘a’,‘b’,‘c’,‘d’,‘e’,‘f’,‘g’,‘h’,‘\0’};inti,j;

i=sizeof(a);j=strlen(a);

printf(“%d,%d\b”i,j);

}

程序运行后的输出结果是()。

A)9,9B)8,9C)1,8D)9,8

(2002年9月)

26.下列程序的输出结果是()。

structabc

{inta,b,c;};

main()

{structabcs[2]={{1,2,3},{4,5,6}};intt;

t=s[0],a+s[1],b;

printf("%d\n",t);

}

A)5B)6C)7D)8

27.以下程序的输出是(C)。

structst

{intx;int*y;}*p;

intdt[4]={10,20,30,40};

structstaa[4]={50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};

main()

{p=aa;

printf(“%d\n”,++(p->x));

}

A)10B)11C)51D)60

28.设有如下定义

structsk

{

inta;

floatb;

}data,*p;

若有p=&data;

则对data中的成员a的正确引用是()。

A)(*p).data.a   B)(*p).a   C)p->data.a      D)p.data.a

29.以下对数组的正确定义是:

(B)。

A)floatb[5.0]B)floatb[5]C)floatb(5)D)floatb[]

30.以下对一维整型数组a的正确说明是(D)。

A)inta(10);B)intn=10, a[n];

C)intn;D)#defineSIZE10;

scanf("%",&n);inta[SIZE];

inta[n];

31、请读程序:

#include

func(inta,intb)

{intc;

c=a+b;

returnc;

}

main()

{intx=6,y=7,z=8,r;

r=func(x--,y==,x+y),z--);

printf("%d\n",r);

}

上面程序的输出结果是()。

A)11B)20C)21D)31

(1996年4月)

32、请读程序:

#include

f(inb[],intn)

{inti,r;

r=1;

for(i=0;i<=n;i++)r=r*b[i];

returnr;

}

main()

{intx,a[]={2,3,4,5,6,7,8,9};

x=f(a,3);

printf("%d\n",x);

}

上面程序的输出结果是(B)。

A)720B)120C)24D)6

(1996年4月)

33、下面程序的输出是(BC)。

A)3B)4C)6D)9

fun3(intx)

staticinta=3;

a+=x;

return(a);}

main()

{intk=2,m=1,n;

n=fun3(k);

n=fun3(m);

printf("%d\n",n);}

(1996年9月)

34、有如下程序

intrunc(inta,intb)

{return(a+b);}

main0

{intx=2,y=5,z=8,r;

r=func(func(x,y),z);

printf(“%\d\n”,r);

}

该程序的输出的结果是(D)。

A)12B)13C)14D)15

(2000年9月)

35、有如下函数调用语句

func(rec1,rec2+rec3,(rec4,rec5));

该函数调用语句中,含有的实参个数是(AD)。

A)3B)4C)5D)有语法错

(2000年9月)

36、以下程序的输出结果是(B)。

inta,b;

voidfun()

{a=100;b=200;}

main()

{inta=5,b=7;

fun();

printf(“%d%d\n”,a,b);

}

A)100200B)57C)200100D)75

(2001年9月)

37、以下程序的输出结果是(A)。

f(intb[],intm,intn)

{inti,s=0;

for(i=m;i

returns;

}

main()

{intx,a[]={1,2,3,4,5,6,7,8,9};

x=f(a,3,7);

printf("%d\n",x);

}

A)10B)18C)8D)15

(2002年4月)

38、以下程序的输出的结果是(23)。

intx=3;

main()

{inti;

for(i=1;i

}

incre()

{staicintx=1;

x=x+1;

printf("%d",x);

}

A)33B)22C)26D)25

(2002年4月)

39、以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。

voidreverse(inta[],intn)

{inti,t;

for(i=0;i

{t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}

}

main()

{intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0;

reverse(b,8);

for(i=6;i<10;i++)s+=b[i];

printf(“%d\n”,s);

}

程序运行后的输出结果是(A)。

A)22B)10C)34D)30

(2002年9月)

40、有以下程序

inta=3;

main()

{ints=0;

inta=5;s+=a++;

s+=a++;printf(“%d\n”,s);

}

程序运行后的输出结果是(DA)。

A)8B)10C)7D)11

(2002年9月)

41、以下程序中函数f的功能是将n个字符串按由大到小的顺序进行排序。

#include

voidf(charp[][10],intn)

{chart[20];inti,j;

for(i=0;i

for(j=i+1;j

if(strcmp(p[i],p[j])<0)

{strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}

}

main()

{charp[][10]={“abc”,“aabdfg”,“abbd”,“dcdbe”,“cd”};inti;

f(p,5);printf(“%d\n”,strlen(p[0]));

}

程序运行后的输出结果是()。

A)6B)4C)5D)3

(2002年9月)

51、若有以下调用语句,则不正确的fun函数的首部是()。

A)voidfun(intm,intx[])B)voidfun(ints,inth[41])

C)voidfun(intp,int*s)D)voidfun(intn,inta)

main()

{…

inta[50],n;

fun(n,&a[9]);

}(2000年4月)

52、设已有定义:

char*st="howareyou";下列程序段中正确的是()。

A)chara[11],*p;strcpy(p=a+1,&st[4]);

B)chara[11];strcpy(++a,st);

C)chara[11];strcpy(a,st);

D)chara[],*p;strcpy(p=&a[1],st+2);

(2000年4月)

53、有如下说明

inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

则数值为9的表达式是()。

A)*P+9B)*(P+8)C)*P+=9D)P+8

(2000年9月)

54、有如下程序

main()

{chars[]=”ABCD”,*P;

for(p=s+l;p

}

该程序的输出结果是()。

A)ABCDB)AC)BD)BCD

BCDBCCD

CDCDD

DD

(2000年9月)

55、有如下程序

main()

{charch[2][5]={“6937”,”8254”},*p[2];

inti,j,s=0;

for(i=0;i<2;i++)p[i]=ch[i];

for(i=0;i<2;i++)

for(j=0;p[i][j]>’\0’;j+=2)

s=10*s+p[i][j]-‘0’;

printf(“%d\n”,s);

}

该程序的输出结果是()。

A)69825B)63825C)6385D)693825

(2000年9月)

56、下列程序段的输出结果是()。

A)2143B)1212C)1234D)2112

voidfun(int*x,int*y)

{printf(“%d,%d”,*x,*y);*x=3;*y=4;}

main()

{intx=1,y=2;

fun(&x,&y);

printf(“%d%d”,x,y);

}

(2001年4月)

57、下列程序的输出结果是()。

A)非法B)a[4]的地址C)5D)3

main()

{chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;

printf(“%d”,*--p);

}(2001年4月)

58、下列程序的运行结果是()。

A)63B)36C)编译出错D)00

voidfun(int*a,int*b)

{int*k;

k=a;a=b;b=k;

}

main()

{inta=3,b=6,*x=&a,*y=&b;

fun(x,y);

printf(“%d%d”,a,b);

}(2001年4月)

59、下面程序的输出结果是()。

A)0B)1C)10D)9

main()

{inta[]={1,2,3,4,5,6,7,8,9,0,},*p;

p=a;

printf(“%d\n”,*p+9);

}(2001年4月)

60、以下程序的输出结果是()。

charcchar(charch)

{

if(ch>=‘A’&&ch<=‘Z')ch=ch-‘A'+‘a';

returnch;

}

main()

{chars[]="ABC+abc=defDEF",*p=s;

while(*p)

{*p=cchar(*p);

p++;

}

printf("%s\n",s);

}

A)abc+ABC=DEFdefB)abc+abc=defdef

C)abcaABCDEFdefD)abcabcdefdef

(2002年4月)

61、以下程序调用findmax函数返回数组中的最大值()。

findmax(int*a,intn)

{int*p,*s;

for(p=a,s=a;p-a

if()s=p;

return(*s);

}

main()

{intx[5]={12,21,13,6,18};

printf("%d\n",findmax(x,5));

}

在下划线处应填入的是

A)p>sB)*p>*sC)a[p]>a[s]D)p-a>p-s

(2002年4月)

62、若有以下定义和语句:

ints[4][5],(*ps)[5];

ps=s;

则对s数组元素的正确引用形式是()。

A)ps+1B)*(ps+3)C)ps[0][2]D)*(ps+1)+3

(2002年4月)

63、以下程序的输出结果是()。

#include

#include

main()

{charb1[8]="abcdefg",b2[8],*pb=b1+3;

while(--pb>=b1)strcpy(b2,pb);

printf("%d\n",strlen(b2));

}

A)8B)3C)1D)7

(2002年4月)

64、若有说明:

intn=2,*p=&n,*q=p;,则以下非法的赋值语句是()。

A)p=q;B)*p=*q;C)n=*q;D)p=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1