C语言 数组和指针练习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
若当堂没做完,下周四之前上交也可。
至ftp://211.64.82.253/
用户名和密码:stu
C语言程序设计练习题——数组
一、选择题
77、以下对一维数组a的正确说明是_d ___
A、char a(10);
B、int a[ ];
C、int k=5,a[k];
D、char a[ ]={'a' , 'b' , 'c'};
78、若有说明语句:int a[2][4];,则对a数组元素的正确引用是_a___
A、a[0][3]
B、a[0][4]
C、a[2][2]
D、a[2][2+1]
79、以下能对二维数组y进行初始化的语句是_b__
A、static int y[2][ ]={{1,0,1}, {5,2,3}};
B、static int y[ ][3]={{1,2,3}, {4,5,6}};
C、static int y[2][4]={{1,2,3}, {4,5} , {6}};
D、static int y[ ][3]={{1,0,1,0}, { }, {1,1}};
80、若有说明语句:int y[ ][4]={0,0};则下面叙述不正确的是_d___
A、数组y的每个元素都可得初值0
B、二维数组y的行数为1
C、该说明等价于int y[ ][4]={0};
D、只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0
81、以下各组选项中,均能正确定义二维实型数组s的选项是_c___
A、float s[3][4];
B、float s(3,4);
float s[ ][4]; float s[ ][ ]={{0};{0}};
float s[3][ ]={{1},{0}}; float s[3][4];
C、 float s[3][4];
D、float s[3][4];
static float s[ ][4]={{0},{0}}; float s[3][ ];
auto float s[ ][4]={{0},{0},{0}}; float s[ ][4];
82、若有说明语句:int a[ ][3]={1,2,3,4,5,6,7,8}; ,则a数组的行数为__a__
A、3
B、2
C、无确定值
D、1
83、若二维数组y有m列,则在y[i][j]前的元素个数为_B___
A、j*m+i
B、i*m+j
C、i*m+j-1
D、i*m+j+1
84、下面程序中有错误的行是____
1、 main( )
2、 {
3、 int x[3]={1};
4、 int k;
5、 scanf("%d", &x);
6、 for (k=1; k<3; k++)
7、 x[0]=x[0]+x[i];
8、 printf("x[0]=%d\n", x[0]);
9、 }
A、3
B、6
C、7
D、5
85、若有以下语句,则正确的描述是__b__
char x[ ]="12345";
char y[ ]={'1', '2', '3', '4', '5'};
A、x数组与y数组的长度相同
B、x数组长度大于y数组长度
C、x数组长度小于y数组长度
D、x数组等价于y数组
86、以下不正确的数组定义语句是__b__
A、double x[5]={2.0, 4.0, 6.0, 8.0, 10.0};
B、int y[5]={0, 1, 3, 5, 7, 9};
C、char ch1[ ]={'1', '2', '3', '4', '5'};
D、char ch2[ ]={'\x10', '\xa', '\x8'};
87、以下正确的数组定义语句是_c___
A、char a[5]={'1', '2', '3', '4', '5', '\0'};
B、int b[2][ ]={{1}, {2}};
C、float c[ ][3]={1, 2, 3, 4, 5};
D、char d[5]="CHINA";
88、判断字符串str1是否大于字符串str2,应当使用__d__
A、if (str1>str2)
B、if (strcmp(str1, str2))
C、if (strcmp(str2, str1)>0)
D、if (strcmp(str1, str2)>0)
89、下面程序段的运行结果是_c___
char x[5]={'a', 'b', '\0', 'c', '\0'};
printf("%s", x);
A、'a''b'
B、ab
C、ab└┘c
D、abc
90、有两个字符数组a,b,则以下能正确为a,b进行赋值的语句是_d___
A、gets(a, b);
B、scanf("%s%s", &a, &b);
C、getchar(a); getchar(b);
D、gets(a); gets(b);
91、有字符数组s1[80]和s2[80],则以下能正确对s1, s2进行输出的语句是___b_
A、puts(s1, s2)
B、printf("%s, %s", s1, s2);
C、putchar(s1, s2);
D、puts(s1), puts(s2);
92、以下程序段的运行结果是_c___
char a[7]="abcdef";
char b[4]="ABC";
strcpy(a, b);
printf("%c", a[5]);
A、└┘
B、\0
C、e
D、f
93、以下描述正确的是_d___
A、两个字符串所包含的字符个数相同时,才能比较字符串
B、字符个数多的字符串比字符个数少的字符串大
C、字符串"STOP└┘"与"STOP"相等
D、字符串"That"小于字符串"The"
94、以下对字符数组的描述中错误的是_c___
A、字符数组中可以存放字符串
B、字符数组中的字符串可以整体输入、输出
C、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
D、不可以用关系运算符对字符数组中的字符串进行比较
95、若有语句:char s1[10], s2[10]={"books"},则能将字符串books赋给数组s1的正确语句是_b___
A、s1={"books"};
B、strcpy(s1, s2);
C、s1=s2;
D、strcpy(s2, s1);
96、以下printf语句的输出结果是____
printf("%d\n", strlen("school");
A、7
B、6
C、存在语法错误
D、不定值
97、下面程序的功能是将字符串s中所有的字符c删除。请选择填空。____
#include
main( )