GCT专业课习题计算机数组Word格式.docx
- 文档编号:21407574
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:39
- 大小:31.69KB
GCT专业课习题计算机数组Word格式.docx
《GCT专业课习题计算机数组Word格式.docx》由会员分享,可在线阅读,更多相关《GCT专业课习题计算机数组Word格式.docx(39页珍藏版)》请在冰豆网上搜索。
A.11B.10C.9D.8
12.函数调用strcat(strcpy(str1,str2),str3);
的功能是()。
A.将字符串str1复制到字符串str2中后再连接到字符串str3之后。
B.将字符串str1连接到字符串str2之后再复制到字符串str3之后。
C.将字符串str2复制到字符串str1中后再将字符串str3连接到字符串str1之后。
D.将字符串str2连接到字符串str1之后再将字符串str1复制到字符串str3中。
13.有字符数组定义如下,则合法的函数调用是()
chara[]=“Iamastudent“,b[]=“teacher“;
A.strcmp(a,b);
B.strcpy(a,b[0]);
C.strcpy(a[7],b);
D.strcat(a[7],b);
14.有字符数组定义如下,则不能比较a,b两个字符串大小的表达式是()
chara[]="
abcdefg"
b[]="
abcdefh"
;
A.strcmp(a,b)==0B.strcmp(a,b)>
0C.strcmp(a,b)<
0D.a<
b
15.设有如下定义,则正确的叙述为()
charx[]=“abcdefg“;
chary[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};
A.数组x和数组y等价B.数组x和数组y长度相同
C.数组x的长度大于数组y的长度D.数组x的长度小于数组y的长度
16.设有二维数组定义如下,则不正确的元素引用是()
inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
A.a[2][3]B.a[a[0][0]][1]C.a[7]D.a[2][‘c’-‘a’]
17.在c语言中,引用数组元素时,其数组下标的数据类型允许是()
A)整型常量B)整型表达式
c)整型常量或整型表达式D)任何类型的表达式
18.若有以下说明语句:
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
charc=’a’,d,g;
则数值为4的表达式是__________。
A、a[g-c]B、a[4]C、a[‘d’-‘c’]D、a[‘d’-c]
19.假设int型变量占两个字节的存储单元,若有定义:
intx[10]={0,2,4};
则数组x在内存中所占字节数为______。
A、3B、6C、10D、20
20.下列合法的数组定义是_________。
A、inta[]=”string”;
B、inta[5]={0,1,2,3,4,5};
C、chara=”string”;
D、chara[]={0,1,2,3,4,5};
21.若给出以下定义:
charx[]=”abcdefg”;
chary[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};
则正确的叙述为__________。
A、数组x和数组y等价B、数组x和数组y的长度相同
C、数组x的长度大于数组y的长度D、数组y的长度大于数组x的长度
22.若定义如下变量和数组_________。
intj;
intx[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是_________。
For(j=0;
j<
3;
j++)
Printf(“%d”,x[j][2-j]);
A、159B、147C、357D、369
23.下列程序运行后的输出结果是______。
Main()
{intn[3],t,j,k;
for(t=0;
t<
t++)
n[t]=0;
k=2;
k;
for(j=0;
n[j]=n[t]+1;
printf(“%d\n”,n[1]);
}
A、2B、1C、0D、3
24.有以下程序
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);
执行后输出结果是_______。
A、58B、56C、45D、24
25.以下能正确定义数组并正确赋初值的语句是______。
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}};
26.有以下程序
{intm[][3]={1,4,7,2,5,8,3,6,9};
inti,j,k=2;
for(i=0;
i<
i++)
{printf("
%d"
m[k][i]);
执行后输出结果是______。
A、456B、258C、369D、789
27.以下能正确定义一维数组的选项是________________。
A、intnum[];
B)#defineN100
intnum[N];
C、intnum[0..100];
D)intN=100;
28.下列选项中正确的语句组是______________。
A、chars[8];
s={"
Beijing"
};
B、char*s;
C、chars[8];
s="
D、char*s;
29.有以下程序段
inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&
a[3],b;
b=p[5];
b中的值是__________。
A、5B、6C、8D、9
30.有以下程序
main()
{chara[]="
b[10]="
printf("
%d%d\n"
sizeof(a),sizeof(b));
}
A、77B、88C、810D、1010
31.有以下程序
voidswap1(intc[])
{intt;
t=c[0];
c[0]=c[1];
c[1]=t;
voidswap2(intc0,intc1)
t=c0;
c0=c1;
c1=t;
{inta[2]={3,5},b[2]={3,5};
swap(a);
swap2(b[0],b[1]);
%d%d%d%d\n"
a[0],a[1],b[0],b[1]);
其输出结果是_______。
A、5353B、5335C、3535D、3553
32.有以下程序
intf(intb[][4])
{inti,j,s=0;
4;
{i=j;
if(i>
2)i=3-j;
s+=b[i][j];
returns;
{inta[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};
f(a));
执行后的输出结果是___________。
A、12B、11C、18D、16
33.有以下程序
voidsort(inta[],intn)
{inti,j,t;
for(i=0;
i<
n-1;
i+=2)
for(j=i+2;
n;
j+=2)
if(a[i]<
a[j]){t=a[i];
a[i]=a[j];
a[j]=t;
{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(aa,10);
10;
i++)printf("
%d"
aa[i]);
\n"
);
其输出结果是_____。
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,
34.有以下程序
voidf(inta[],inti,intj)
if(i<
j)
{t=a[i];
a[i]=a[j];
f(a,i+1,j-1);
{inti,aa[5]={1,2,3,4,5};
f(aa,0,4);
5;
%d,"
执行后输出结果是_____。
A、5,4,3,2,1,B、5,2,3,4,1,C、1,2,3,4,5,D、1,2,3,4,5,
35.以下程序的输出结果是_____B___。
main()
{charcf[3][5]={"
AAAA"
"
BBB"
CC"
\"
%s\"
ch[1]);
A、"
B、"
C、"
BBBCC"
D、"
36.以下程序的输出结果是_______。
{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;
i++)
for(j=i;
=i;
j++)t=t+b[i][b[j][j]];
t);
A、3B、4C、1D、9
37.有以下程序
{intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};
inti,s=0;
i++)s+=aa[i][1];
s);
程序运行后的输出结果是_____。
A、11 B、19 C、13 D)、20
38.若有以下定义语句:
chars[10],s=”abcd”;
printf(“%s\n”,s);
则运行结果是__________。
A、输出abcdB、输出aC、输出abcdD、编译不通过
39.不能把字符串“Hello!
”赋给数组b的语句是_______。
A、charb[10]={‘H’,’e’,’l’,’l’,’o’,’!
’};
B、charb[10];
b=”Hello!
”;
C、charb[10];
strcpy(b,”Hello!
”);
D、charb[10]=”Hello!
40.若有以下程序段:
charstr[]=”ab\n\012\\\””;
printf(“%d”,strlen(str));
该程序段的输出结果是_________。
A、3B、4C、6D、12
41.函数调用strcat(strcpy(str1,str2),str3)的功能是_______。
A、将串str1复制到串str2中后在连接到串str3之后
B、将串str1连接到串str2之后再复制到串str3之后
C、将串str2复制到串str1中后再将串str3连接到串str1之后
D、将串str2连接到串str1中后再将串str1复制到串str3中
42.下列程序的输出结果是________。
{charch[7]={“65ab21”};
intj,s=0;
ch[j])>
=’0’&
ch[j]<
=’9’;
s=10*s+ch[j]-‘0’;
printf(“%d\n”,s);
A、12ba56B、66521C、6D、62
43.设已定义chars[]=”\”Name\\Address\”\n”;
则字符串s所占的字节数是_________。
A、19B、18C、15D、14
44.设已定义charc[8]=”Tianjin”和intj,则下面的输出函数调用中错误的是______。
A、printf(“%s”,c);
B、for(j=0;
8;
j++)printf(“%c”,c[j]);
C、puts(c);
D、for(j=0;
j++)puts(c[j]);
45.设已定义chara[10]和intj,则下面输入函数调用中错误的是_________。
A、scanf(“%s”,a);
9;
j++)scanf(“%c”,a[j]);
C、gets(a);
j++)scanf(“%c”,&
a[j]);
46.设已定义charx[8]和intj,为了给该数组赋值,下面语句中正确的是_______-。
A、x[8]=”TurboC”;
B、x=”TurboC”;
C、x[]=”TurboC”;
7;
j++)x[i]=getchar();
47.有如下程序,
{intn[5]={0,0,0},j,k=2;
k:
j++)n[j]=n[j]+1;
printf(“%d\n”,n[k]);
该程序的输出结果是_________。
A、不确定的值B、2C、1D、0
48.以下能对一维数组a进行正确初始化的语句是__。
A.inta[10]=(0,0,0,0,0)B.inta[10]={}C.inta[]={0};
D.inta[10]={10*1};
49.以下对二维数组a的正确说明是__。
A.inta[3][];
B.floatfa(3,4);
c.doublea[1][4];
D.floata(3)(4);
50.若有说明:
inta[3][4];
则对a数组元素的正确引用是__。
A.a[2][4]B.a[1,3]C.a[1+1][0]D.a
(2)
(1);
51.若有说明:
则对a数组元素的非法引用是__。
A.a[0][2*1]B.a[1][3]C.a[4-2][0]D.a[0][4]
52.以下不能对二维数组a进行正确初始化的语句是__。
A.inta[2][3]={0};
B.inta[][3]={{1,2,3},{4,5,6}};
C.inta[2][4]={{1,2,3},{4,5}{6}};
D.inta[][3]={{1,0,1},{},{1,1}};
53.若有说明:
inta[3]「4」={0};
则下面正确的叙述是
A.只有元素a[0][0]可得到初值0
B.此说明语句不正确:
。
C.数组a中各元素都可得到初值,但其值不一定为0。
D.数组a中每个元素均可得到初值0
54.下面程序有错的行是
1main()
2{
3inta[3]={1};
4inti;
5scanf("
&
a);
6for(i=1;
i++)a[0]=a[0]+a[i];
7printf("
a[0]=%d\n"
a[0]);
8}
A.3B.6C.7D.5
55.下面程序(每行程序前面的数字表示行号)
2{
3inta[3]={0};
5for(i=0;
i++)scanf("
a[i]);
i++)a[0]=a[0]+a[i];
A.没有错误B.第3行有错误C.第5行有错误D.第6行有错误
56.若二维数组a有m列,则计算任一元素a[i][j]在数组元素中次序的公式为
(假设a[0][0]位于数组的第一个位置上。
)
A.i*m+jB.j*p+IC.i*m+j-1D.i*m+j+1
57.对以下说明语句的正确理解是
inta[10]={6,7,8,9,10};
A.将5个初值依次赋给a[1]至a[5]
B.将5个初值依次赋给a[0]至a[4]
C.将5个初值依次赋给a[6]至a[10]
D.因为数组长度与初值的个数不相同,所以此语句不正确
58.以下不正确的定义语句是__.
A.doublex[5]={2.0,4.0,6.0,8.0,10.0};
B.inty[5]={0,1,3,5,7,9};
C.charc1[]={’1’,’2’,’3’,’4’,’5’};
D.charc2[]=}{'
\x10'
'
\xa'
\x8'
59.若有说明:
inta[][3]={1,2,3,4,5,6,7};
则a数组第一维的大小是__.
A.2B.3C.4D.无确定值
60.若二维数组a有m列,则在a[i][j]前的元素个数为__.
A.j*m+jB.i*m+jC.i*m+jD.i*m+j+1
二、读程序,写运行结果(30题)
一般题
1.阅读程序,分析程序的功能。
#include<
stdio.h>
string.h>
voidmain()
{chars[80];
inti;
80;
i++){
s[i]=getchar();
if(s[i]==’\n’)break;
s[i]=’\0’;
i=0;
while(s[i])putchar(s[i++]);
putchar(‘\n’);
2.说明下列程序的功能。
#include<
voidmain()
{charstr[10][80],c[80];
inti;
i++)gets(str[i]);
strcpy(c,str[0]);
for(i=1;
i++)if(strlen(c)<
strlen(str[i]))strcpy(c,str[i]);
printf(“%s\n”,c);
printf(“%d\n”,strlen(c));
3.说明下列程序的功能。
#inclued<
{chara[10][80],c[80];
inti,j,k;
i++)gets(a[i]);
i++){
k=i;
for(j=i+1;
j<
j++)
if(strcmp(a[j],a[k])<
0)k=j;
if(k!
=i)
{strcpy(c,a[i]);
strcpy(a[i],a[k]);
strcpy(a[k],c);
}//字符串交换
i++)puts(a[i]);
4.阅读程序,写出运行结果:
{s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- GCT 专业课 习题 计算机 数组