C语言试卷编号44
试卷编号:44 所属语言:C语言 试卷方案:字符型数据(课下) 试卷总分:100分 共有题型:4种 一、填空共5题(共计7. 5分) 第1题(1.5分) 字符串比较的库函数是【1】,只写函数名即可. 答案: =======(答案 1)======= strcmp 第2题(1.5分) 定义int a[2] [3]:表示数组a中的元素个数是【1】个. 答案: =======(答案 1)======= 6 第3题(1.5分) static int a[3] [3] = ({1, 2, 3), (4,5, 6}, {7,8,9}};其中 a[l] [2]的值为[1]. 答案: =======(答案 1)======= 6 第4题(1.5分) 求字符串长度的库函数是【1】,只写函数名即可. 答案: =======(答案 1)====== strlen 第5题(1.5分) C语言中,二维数组在内存中的存放方式为按【1】优先存放. 答案: =======(答案 1)= 行 二、判断共5题(共计7. 5分) 第1题(1.5分) 两个字符串中的字符个数相同时才能进行字符串大小的比较 答案:N 第2题(1.5分) 字符处理函数strcpy(strl, str2)的功能是把字符串1接到字符串2的后面. 答案:N 第3题(1.5分) char c[]=“Very Good”;是一个合法的为字符串数组赋值的语句。 答案:Y 第4题(1.5分) int a[3] [4] = ({1}, {5}, {9});它的作用是将数组各行第一列 的元素赋初值,其余元素值为Oo 答案:Y 第5题(1.5分) 如果想使一个数组中全部元素的值为0,可以写成 int a[10]=(0*10); 答案:N 三、单项选择 共40题(共计60分) 第1题(1.5分) 若输入ab,程序运行结果为()。 main() { static char a[3]; scanf a); printf (“%c, %c“, a[l], a[2]); A:a, b B: a, C:b, D:程序出错 答案:C 第2题(1.5分) 以下对一维整型数组a的正确说明是()。 A: int a(10); B: int n=10, a[n]: C: int n; scanf int a[n]: D:#define SIZE 10 (换行)int a[SIZE]: 答案:D 第3题(1.5分) 下列定义数组的语句中不正确的是()。 A: static int a[2] [3] = (1, 2, 3, 4, 5, 6); B:static int a[2] [3] = ({1}, {4, 5}); C:static int a[] [3] = {{1}, {4}): D:static int a[] [] = ({!, 2, 3), {4, 5, 6}}; 答案:D 第4题(1.5分) char al[]=“abc”, a2[80]=“1234”;将al串连接到a2串后面的语句是()。 A: strcat (a2, al); B: strcpy (a2, al); C: strcat (al, a2); D: strcpy (al, a2); 答案:A 第5题(1.5分) 在C语言中,一维数组的定义方式为:类型说明符数组名()。 A:[常量表达式] B:[整型表达式] C:[整型常量]或[整型表达式] D:[整型常量] 答案:D 第6题(1.5分) char a□二“This is a program./z;输出前5个字符的语句是()。 A: printf (〃%. 5s〃, a); B:puts(a); C: printf (〃%s〃, a); D:a[5*2]=0;puts(a); 答案:A 第7题(1.5分) 若有说明:int a[10];则对a数组元素的正确引用是()。 A:a[10] B:a[3, 5] C: a(5) D:a[10-10] 答案:D 第8题(1.5分) 以下程序段的输出结果为()。 char c □=〃abc〃; int i=0; do ;while (c[i++]!= \0 ) ;printf (〃%d〃,i~l); A: abc B: ab C:2 D:3 答案:D 第9题(1.5分) 以下不正确的定义语句是()。 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 cl□二{ 1 , 2 , 3 , 4 , 5 }; D: char c2 [] = {,\xl0,, \xa , \x8 }; 答案:B 第10题(1.5分) 以下不能正确定义二维数组的选项是()。 A:int a[2] [2] = ({1}, {2}}; B:int a[][2] = {l,2, 3, 4); C:int a[2][2]=({1},2,3); D:int a[2] [] = {{1,2}, {3,4}}; 答案:D 第11题(1.5分) 若有说明int a[3] [4];则a数组元素的非法引用是()。 A:a[0] [2*1] B:a[l] [3] C:a[4-2] [0] D:a[0] [4] 答案:D 第12题(1.5分) 以下能对一维数组a进行正确初始化的语句是()。 A:int a[10] = (0, 0,0, 0, 0) B: int a[10] = {); C:int a[]={0}; D:int a[10]=(10*l); 答案:C 第13题(1.5分) 若有说明:int a[3] [4];则数组a中各元素()。 A:可在程序的运行阶段得到初值0 B :可在程序的编译阶段得到初值0 C:不能得到确定的初值 D:可在程序的编译或运行阶段得到初值0 第14题(1.5分) 以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是()。 A:char s[10]=“abcdefg”; B:char t[]=“abcdefg”, *s=t; C:char s[10];s=“abcdefg“; D: char s [10] ; strcpy (s, “abcdefg“); 答案:C 第15题(1.5分) 若有说明:int a[] [4] = (0, 0):则下面不正确的叙述是()。 A:数组a的每个元素都可得到初值0 B:二维数组a的第一维大小为1 C:因为二维数组a中第二维大小的值除经初值个数的商为1,故数组a的行数为1 D:有元素a[0] [0]和a[0] [1]可得到初值0,其余元素均得不到初值。 答案:D 第16题(1.5分) int i, j,a[2] [3];按照数组a的元素在内存的排