n[j]=n[i]+1;printf(\"%d\\n\ }
A. 2 B. 1 C. 0 D. 3
16. 下列程序的主要功能是输入10个整数存入数组a,再输入一个整数x,在数组a中查找x。找到则输出x在10个整数中的序号(从1开始);找不到则输出0。程序缺少的是 (b )。
main()
{
int i,a[10],x,flag=0;
for(i=0;i<10;i++)
页脚内容9
教 案
scanf(\"%d\
scanf(\"%d\
for(i=0;i<10;i++) if _______ {flag=i+1; break;}
printf(\"%d\\n\ flag);
}
A. x!=a[i] B. !(x-a[i]) C. x-a[i] D. !x-a[i]
17. 若说明:int a[2][3]; 则对a数组元素的正确引用是(c ) 。
A. a(1,2) B. a[1,3] C. a[1>2][!1] D. a[2][0]
18. 若有定义:int b[3][4]={0};则下述正确的是(b ) 。
A. 此定义语句不正确
B. 没有元素可得初值0
C. 数组b中各元素均为0
页脚内容10
教 案
D. 数组b中各元素可得初值但值不一定为0
19. 若有以下数组定义,其中不正确的是(d ) 。
A. int a[2][3];
B int b[][3]={0,1,2,3};
C. int c[100][100]={0};
D. int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
20. 若有以下的定义:int t[5][4];能正确引用t数组的表达式是(c )。
A. t[2][4] B. t[5][0] C. t[0][0] D. t[0,0]
21. 在定义int m[ ][3]={1,2,3,4,5,6};后,m[1][0]的值是(a )。
A. 4 B. 1 C. 2 D. 5
22. 在定义int n[5][6]后第10个元素是(c )。
A. n[2][5] B. n[2][4] C. n[1][3] D. n[1][4]
页脚内容11
教 案
23. 若二维数组c有m列,则计算任一元素c[i][j]在数组中的位置的公式为(d )。
(假设c[0][0]位于数组的第一个位置)
A. i*m+j B. j*m+i C. i*m+j-1 D. i*m+j+1
24. 若有以下定义语句,则表达式“x[1][1]*x[2][2]”的值是(a )。
float x[3][3]={{1.0,2.0,3.0},{4.0,5.0,6.0}};
A. 0.0 B. 4.0 C. 5.0 D. 6.0
25. 以下程序运行后,输出结果是 (a )。
main()
{
int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf(\"%d%d%d%d\\n\
}
页脚内容12
教 案
A. 0650 B. 1470 C. 5430 D. 输出值不定
26. 以下程序运行后,输出结果是(b )。
main()
{
int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};
int i,s=0;
for(i=0;i<4;i++) s+=aa[i][1];
printf(“%d\\n”,s);
}
A. 11 B. 19 C. 13 27. 有以下程序
main( )
页脚内容13
D. 20
教 案
{
int a[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(\"%d\\n\
}
该程序的输出结果是(a )。
A. 18 B. 19 28. 若定义如下变量和数组:
int i;
int x[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是(c )。
C. 20 页脚内容14
D. 21
教 案
for(i=0;i<3;i++) printf(\"%d\
A. 1 5 9 B. 1 4 7 C. 3 5 7 D. 3 6 9
29. 下述对C语言字符数组的描述中错误的是(c )。
A. 字符数组可以存放字符串
B. 字符数组中的字符串可以整体输入、输出
C. 可以在赋值语句中通过赋值运算符\"=\"对字符数组整体赋值
D. 不可以用关系运算符对字符数组中的字符串进行比较
30. 下述对C语言字符数组的描述中正确的是 (a )。
A. 任何一维数组的名称都是该数组存储单元的开始地址,且其每个元素按照顺序连续占存储空间
B. 一维数组的元素在引用时其下标大小没有
C. 任何一个一维数组的元素,可以根据内存的情况按照其先后顺序以连续或非连续的方式占用存储空间
D. 一维数组的第一个元素是其下标为1的元素
页脚内容15
教 案
31. 不能把字符串:Hello!赋给数组b的语句是(b )。
A. char str[10]= {'H', 'e', 'l', 'l', 'o', '! '};
B. char str[10];str=\"Hello!\";
C. char str[10];strcpy(str,\"Hello!\");
D. char str[10]=\"Hello!\";
32. 合法的数组定义是(d )。
A. int a[]=\"string\"; C. int s=\"string\"; 33. 下列语句中,不正确的是(c )。
A. static char a[2]={1,2}; C. static char a[2]={ '1', '2', '3'}; 34. 若给出以下定义:
B. int a[5]={0,1,2,3,4,5};
D. char a[]={0,1,2,3,4,5};
B. static char a[2]={ '1', '2'};
D. static char a[2]={ '1'};
页脚内容16
教 案
char x[ ]=\"abcdefg\";
char y[ ]={'a','b','c','d','e','f','g'};
则正确的叙述为(c )。
A. 数组x和数组y等价 B. 数组x和数组y的长度相同
C. 数组x的长度大于数组y的长度 D. 数组x的长度小于数组y的长度
35. 若有数组定义: char array [ ]=\"China\"; 则数组 array所占的空间为(c )。
A. 4个字节 B. 5个字节 C. 6个字节 D. 7个字节
36. 若有定义和语句:
char s[10];s=\"abcd\";printf(\"%s\\n\
则结果是(以下└┘代表空格)(d )。
A. 输出abcd B. 输出a C. 输出abcd└┘└┘└┘└┘ D. 编译不通过
37. 下面程序运行后,输出结果是(c )。
页脚内容17
教 案
main()
{
char ch[7]={ \"65ab21\
int i,s=0;
for(i=0;ch[i]>= '0'&&ch[i]<= '9';i+=2)
s=10*s+ch[i]- '0';
printf(\"%d\\n\
}
A. 12ba56 B. 6521 C. 6 D. 62
38. 运行下面的程序,如果从键盘上输入:123<空格>456<空格>7<回车>,输出结果是(d )。
A. 123,456,7 B. 1,456,7
C. 1,23,456,7 D. 1,23,456
页脚内容18
教 案
main()
{
char s[100]; int c, i;
scanf(\"%c\ scanf(\"%d\ scanf(\"%s\
printf(\"%c,%d,%s\\n\
}
39. 运行下面的程序,如果从键盘上输入:
ab<回车>
c <回车>
def<回车>
则输出结果为(c )。
A. a B. a C. ab 页脚内容19
D. abcdef
教 案
b b c
c c d
d d
e
f
#include#define N=6
main()
{
char c[N];
int i=0;
for( ;i页脚内容20教 案
for( i=0;iprintf(\"\\n\");}
40. 运行下面的程序,如果从键盘上输入:ABC时,输出的结果是(a )。
#includemain()
{
char ss[10]=\"12345\";
strcat(ss, \"67\" );
gets(ss);printf(\"%s\\n\
}
A. ABC B. ABC9 C. 123456ABC D. ABC4567
页脚内容21
教 案
41. 判断两个字符串是否相等,正确的表达方式是(c )。
A. while(s1==s2) B. while(s1=s2)
C. while(strcmp(s1,s2)==0) D. while(strcmp(s1,s2)=0)
42. 以下程序的输出结果是(a )。
main()
{
char str[12]={ 's','t','r','i','n','g'}; printf(\"%d\\n\
}
A. 6 B. 7 C. 11 43. 若有以下程序片段:
char str[ ]=\"ab\\n\\012\\\\\\\"\";
D. 12
页脚内容22
教 案
printf(\"%d\
上面程序片段的输出结果是 (c )。
A. 3 B. 4 C. 6 D. 12
44. 若有以下程序段,输出结果是(a )。
char s[ ]=\"\\\\141\\141abc\\";
printf (\"%d\\n\
A. 9 B. 12 C. 13 45. 设有static char str[ ]=\"Beijing\";
则执行printf(\"%d\\n\
后的输出结果为 (a )。
A. 5 B. 7 C. 12 46. 以下程序运行后,输出结果是(b )。
页脚内容23
D. 14
D. 14
教 案
main()
{
char ch[3][5]={\"AAAA\
printf(\"\\\"%s\\\"\\n\
}
A. \"AAAA\" B. \"BBB\" C. \"BBBCC\" 47. 以下程序运行后,输出的结果是(d )。
#include #includemain()
{
char w[ ][10]={\"ABCD\
页脚内容24
D. \"CC\"
教 案
for (k=1;k<3;k++)
printf(\"%s\\n\
}
A. ABCD FGH KL M
C. EFG JK O
48. 以下程序运行后,输出结果是(a )。 main()
B. ABCD
EFG
IJ
D. FGH
页脚内容25
KL
教 案
{
char arr[2][4];
strcpy(arr,\"you\"); strcpy(arr[1],\"me\");
arr[0][3]='&';
printf(\"%s \\n\
}
A. you&me B. you C. me 页脚内容26D. err