C-Answer(数组)
2023-06-04, 19:10
例:判断——有数组定义int a[5]; 表示数组名为a,此数组有5个元素,第10个元素为a[5]。( 错 )
例:判断——在对全部数组元素赋初值时,可以不指定数组长度。( 对 )
例:假定int变量占用2个字节,其有定义int x[5]={1,3,5},则数组x在内存中占的字节数为( C )
A)3 B) 6 C) 10 D) 20
例:若有说明:int a[5]; ,则对a 数组元素的正确引用是( D )
A) a[5] B) a[3.5] C) a(5) D) a[5-5]
例:在C语言中,引用数组元素时,其数组下标的数据类型是( C )。
A)整型常量 B)整型表达式
C)整型常量或整型表达式 D)任何类型的表达式
例:若有以下说明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
则数值为3的数组元素为( B )。
A)a[1] B)a[2] C)a[3] D)a[4]
例:假定int变量占用2个字节,其有定义int x[10]={0,2,4},则数组x在内存中占的字节数为( D )。
A)3 B) 6 C) 10 D) 20
例:补充程序,实现从键盘任意输入10个整数,求偶数的个数。
#include <stdio.h>
#define N 10 /* 定义符号常量N,值为10 */
main()
{ int i,num[N],n=0;
printf("enter integer:\n",N); /*提示键入10个整数*/
for(i=0; i<N ;i++) /*依次读入10个整数,分别赋数组*/
scanf("%d",&num[i]);
for(i=0;i<N;i++) /* 求偶数的个数 */
if(___num[i]%2==0______) /* 如果num[i]能被2整除*/
n++; /* 则偶数个数加1 */
printf("偶数共有%d个\n",n);
}
例:编写程序,从键盘输入某一门课10个学生的成绩,找出最高分并输出。
#include<stdio.h>
main()
{
float s[10],max;
int i;
printf("输入10个学生的成绩:\n");
for(i=0;i<10;i++)
scanf("%f",&s[i]);
max=s[0];
for(i=1;i<10;i++)
if(max<s[i])
max=s[i];
printf("最高分是:%.1f",max);
}
例:若有说明“int a[3][4]”,则对a数组的引用正确的是( C )
A)a[2][4] B)a[1,3]
C)a[1+1][0] D)float a(3)(4)
例:在C语言中,二维数组元素在内存中的存放顺序是__按行存放_。
例:以下程序的输出结果是_____3,5,7,_______。
main ( )
{
int i,x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
printf(“%d,”,x[i][2-i]);
}
A) 1,5,9, B) 1,4,7, C) 3,5,7, D) 3,6,9,
例:已知int a[ ][3]={1,2,3,4,5,6,7}; ,则数组a 的第一维的大小是( B )
A) 2 B) 3 C) 4 D) 无确定值
例:编写程序,用二维数组输出如下图所示的数字方阵。
1 5 5 5 1
5 1 5 1 5
5 5 1 5 5
5 1 5 1 5
1 5 5 5 1
#include <stdio.h>
main()
{ int i,j,a[5][5];
for (i=0;i<5;i++)
{for (j=0;j<5;j++)
if (i==j||i+j==4) a[i][j]=1;
else a[i][j]=5;
}
for (i=0;i<5;i++)
{for (j=0;j<5;j++)
printf("%3d",a[i][j]);
printf("\n");
}
}
例:字符串总是以_’\0_作为结束符。
(2)字符数组的初始化
格式:
char 数组名[下标] ={常量列表};
char 数组名[下标][下标]={{常量列表},…};
例:对两个数组a和b进行如下初始化,以下叙述正确的是( D )
char[]=“ABCDEF”;char b[]={‘A’,’B’,’C’,’D’,’E’,’F’}
A.a与b数组完全相同 B. a与b数组长度相同
C. a与b中都存放字符串 D.a数组比b数组长
例:以下程序执行后,键盘输入“this morning”后的输出结果是:_____this_______。
#include<stdio.h>
main()
{char str[10];
printf("input string:\n");
scanf("%s",&str);
printf("%s\n",str);
}
使用gets()和puts()函数进行字符串的整体输入输出。
例:下述对C语言字符数组的描述中错误的是( C )
A)字符数组可以存放字符串
B)字符数组的字符串可以整体输入输出
C) 可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值
D)不可以用关系运算符对字符数组中的字符串进行比较
例:用来比较字符串大小的函数是__strcmp()__。
(6)测字符串长度函数strlen
格式:strlen(字符数组名)
功能:测字符串的实际长度(不含字符串结束标志‘\0’),并作为函数返回值。
例:调用strlen(“abcd\0ef\0g”)的返回值为( A )
A) 4 B) 5 C) 8 D) 9
例. 若有以下程序片段:
char str[ ]="ab\n\012\\\"";
printf("%d",strlen(str));
上面程序片段的输出结果是 ( C )。
A. 3 B. 4 C. 6 D. 7
例. 不能把字符串: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!";
例:下列程序段的运行结果是 f 。
#include<string.h>
main()
{ char a[7]="abcdef";
char b[40]="ABC";
strcpy(a,b);
printf("%c",a[5]);}
例:判断——在对全部数组元素赋初值时,可以不指定数组长度。( 对 )
例:假定int变量占用2个字节,其有定义int x[5]={1,3,5},则数组x在内存中占的字节数为( C )
A)3 B) 6 C) 10 D) 20
例:若有说明:int a[5]; ,则对a 数组元素的正确引用是( D )
A) a[5] B) a[3.5] C) a(5) D) a[5-5]
例:在C语言中,引用数组元素时,其数组下标的数据类型是( C )。
A)整型常量 B)整型表达式
C)整型常量或整型表达式 D)任何类型的表达式
例:若有以下说明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
则数值为3的数组元素为( B )。
A)a[1] B)a[2] C)a[3] D)a[4]
例:假定int变量占用2个字节,其有定义int x[10]={0,2,4},则数组x在内存中占的字节数为( D )。
A)3 B) 6 C) 10 D) 20
例:补充程序,实现从键盘任意输入10个整数,求偶数的个数。
#include <stdio.h>
#define N 10 /* 定义符号常量N,值为10 */
main()
{ int i,num[N],n=0;
printf("enter integer:\n",N); /*提示键入10个整数*/
for(i=0; i<N ;i++) /*依次读入10个整数,分别赋数组*/
scanf("%d",&num[i]);
for(i=0;i<N;i++) /* 求偶数的个数 */
if(___num[i]%2==0______) /* 如果num[i]能被2整除*/
n++; /* 则偶数个数加1 */
printf("偶数共有%d个\n",n);
}
例:编写程序,从键盘输入某一门课10个学生的成绩,找出最高分并输出。
#include<stdio.h>
main()
{
float s[10],max;
int i;
printf("输入10个学生的成绩:\n");
for(i=0;i<10;i++)
scanf("%f",&s[i]);
max=s[0];
for(i=1;i<10;i++)
if(max<s[i])
max=s[i];
printf("最高分是:%.1f",max);
}
例:若有说明“int a[3][4]”,则对a数组的引用正确的是( C )
A)a[2][4] B)a[1,3]
C)a[1+1][0] D)float a(3)(4)
例:在C语言中,二维数组元素在内存中的存放顺序是__按行存放_。
例:以下程序的输出结果是_____3,5,7,_______。
main ( )
{
int i,x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
printf(“%d,”,x[i][2-i]);
}
A) 1,5,9, B) 1,4,7, C) 3,5,7, D) 3,6,9,
例:已知int a[ ][3]={1,2,3,4,5,6,7}; ,则数组a 的第一维的大小是( B )
A) 2 B) 3 C) 4 D) 无确定值
例:编写程序,用二维数组输出如下图所示的数字方阵。
1 5 5 5 1
5 1 5 1 5
5 5 1 5 5
5 1 5 1 5
1 5 5 5 1
#include <stdio.h>
main()
{ int i,j,a[5][5];
for (i=0;i<5;i++)
{for (j=0;j<5;j++)
if (i==j||i+j==4) a[i][j]=1;
else a[i][j]=5;
}
for (i=0;i<5;i++)
{for (j=0;j<5;j++)
printf("%3d",a[i][j]);
printf("\n");
}
}
例:字符串总是以_’\0_作为结束符。
(2)字符数组的初始化
格式:
char 数组名[下标] ={常量列表};
char 数组名[下标][下标]={{常量列表},…};
例:对两个数组a和b进行如下初始化,以下叙述正确的是( D )
char[]=“ABCDEF”;char b[]={‘A’,’B’,’C’,’D’,’E’,’F’}
A.a与b数组完全相同 B. a与b数组长度相同
C. a与b中都存放字符串 D.a数组比b数组长
例:以下程序执行后,键盘输入“this morning”后的输出结果是:_____this_______。
#include<stdio.h>
main()
{char str[10];
printf("input string:\n");
scanf("%s",&str);
printf("%s\n",str);
}
使用gets()和puts()函数进行字符串的整体输入输出。
例:下述对C语言字符数组的描述中错误的是( C )
A)字符数组可以存放字符串
B)字符数组的字符串可以整体输入输出
C) 可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值
D)不可以用关系运算符对字符数组中的字符串进行比较
例:用来比较字符串大小的函数是__strcmp()__。
(6)测字符串长度函数strlen
格式:strlen(字符数组名)
功能:测字符串的实际长度(不含字符串结束标志‘\0’),并作为函数返回值。
例:调用strlen(“abcd\0ef\0g”)的返回值为( A )
A) 4 B) 5 C) 8 D) 9
例. 若有以下程序片段:
char str[ ]="ab\n\012\\\"";
printf("%d",strlen(str));
上面程序片段的输出结果是 ( C )。
A. 3 B. 4 C. 6 D. 7
例. 不能把字符串: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!";
例:下列程序段的运行结果是 f 。
#include<string.h>
main()
{ char a[7]="abcdef";
char b[40]="ABC";
strcpy(a,b);
printf("%c",a[5]);}
您在这个论坛的权限:
您不能在这个论坛回复主题