数组作业

更新时间:2024-05-15 10:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数组作业 一 单项选择题(每题2分,共40分) 1 以下对一维整型数组a的正确定义(说明)的是 。 A)int a(10); B)int n=10;a[n]; C)int n; D)#define SIZE 10 Scanf(“%d”,&n); int a[SIZE]; int a[n]; 2 若有定义(说明)int a[10]; 则对数组a的元素正确引用的是 。 A)a[10] B)a[3.5] C)a(5) D)a[10-10] 3 执行下面程序段后,变量k 的值是 。 int k=3,s[2]; s[0]=k; k=s[1]*10; A)不定值 B)33 C)30 D)10 4 以下程序的输出结果是 。 main() { int i, k, a[10], p[3]; k=5; for(i=0; i<10; i++) a[i]=i; for(i=0; i<3; i++) p[i]=a[i*(i+1)]; for(i=0; i<3; i++) k+=p[i]*2; printf(\} A)20 B)21 C)22 D)23 5 以下对一维整型数组a初始化的语句中正确的是 。 A)int a[10] =(0,0,0,0,0); B)int a[10] =(); C)int x=2,a[10]={10*x} ; D)int a[10] ={0}; 6 若有以下说明,则数值为4的表达式是 。 int a[12]={ 1,2,3,4,5,6,7,8,9,10,11,12 }; char c='a', d, g; A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c] 7 下列程序运行后的输出结果是 。 #include #define MAX 10 void main() { int i,sum,a[]={1,2,3,4,5,6,7,8,9,10}; sum=1; for(i=0;i

1

main() { int y=18,i=0,j,a[8]; do { a[i]=y%2; i++; y=y/2; }while(y>=1); for(j=i-1;j>0;j--) printf(\%d\,a[j]); } A)1000 B)1001 C)1010 D)1100 9 以下对二维数组a的正确定义(说明)的是 。 A)int a[3][]; B)float a(3,4); C)double a[1][4]; D)float a(3)(4); 10若有定义(说明)int a[3][4]; 则对数组a的元素的引用非法的是 。 A)a[2][2*1] B)a[1][3] C)a[4-2][0] D)a[0][4] 11 以下不能对二维数组a进行正确初始化的语句是 。 A)int a[2][3] ={0}; B)int a[][3] ={{1,2},{0}}; C)int a[2][3] ={{1,2},{3,4},{5,6}}; D)int a[][3] ={1,2,3,4,5,6}; 12 下列数组定义语句中,正确的是 。 A)char a[ ][ ]={'a', 'b', 'c', 'd', 'e', 'f'}; B)char a[2][3]= 'a', 'b'; C)char a[ ][3]={'a', 'b', 'c', 'd', 'e', 'f'}; D)char a[ ][ ]={{'a', 'b', 'c', 'd', 'e', 'f'}}; 13 下列程序运行后的输出结果是______。 main() { int a[4][4],i,j,k; for(i=0;i<4;i++) for(j=0;j<4;j++) a[i][j]=i-j; for(i=1;i<4;i++) for(j=i+1;j<4;j++) { k=a[i][j]; a[i][j]=a[j][i]; a[j][i]=k; } for(i=0;i<4;i++) { printf(“\\n”); for(j=0;j<4;j++) printf(“M”,a[i][j]); } } A)0 -1 -2 -3 B) 0 1 2 3 1 0 -1 -2 -1 0 1 2 2 1 0 -1 -2 -1 0 1 3 2 1 0 -3 -2 -1 0 C)0 -1 -2 -3 D) 0 1 2 3 1 0 1 2 -1 0 -1 -2 2 -1 0 1 -2 1 0 -2 3 -2 -1 0 -3 2 1 0

2

14 以下程序的输出结果是 。 main() { int i, a[4][4]={{1,3,5}, {2,4,6}, {3,5,7}}; printf(\} A)0650 B)1470 C)5430 D)输出值不定 15 有以下程序: main() { int x[3][2]={0}, i ; for(i=0; i<3; i++) scanf (\[i]) ; printf(\[0][0],x[0][1], x[1][0]); } 若运行时输入:2 4 6<回车>,则输出结果是 。 A)2 0 0 B)2 0 4 C)2 4 0 D)2 4 6 16 下列描述不正确的是 。 A)字符型数组中可以存放字符串 B)可以对字符型数组进行整体输入和输出 C)可以对整型数组进行整体输入和输出 D)不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值 17 对于以下定义,叙述正确的是 。 char x[]=\char x[]={ 'a', 'b', 'c', 'd', 'e', 'f' } ; A)数组x和数组y等价 B)数组x和数组y的长度相等 C)数组x的长度大于数组y的长度 D)数组x的长度小于数组y的长度 18 以下选项中,不能正确赋值的是 。 A)char s1[10]; s1=\ B)char s2[ ]={'C', 't', 'e', 's', 't'}; C)char s3[20]=\ D)char s4[30]; strcpy(s4, \ 19 若有定义和语句:char s=[10]; s=\则结果是 。 (以下□表示空格) A)输出abcd B)输出a C)输出abcd□□□□□ D)编译不通过 20 当执行下面程序时,如果输入ABC,则输出结果是 。 #include #include main() { char ss[10]=\ gets(ss); strcat(ss, \ printf(\} A)ABC6789 B)ABC67 C)12345ABC6 D)ABC45678 二 填空题(每空3分,共24分) 1 若int类型变量占两个字节,定义int x[10]={0, 2, 4}; 则数组x在内存中所占的字节数是_ 。 2 若有定义char a[]=\则数组a在内存中所占的字节数是 。

3

3 下列程序的输出结果是 。 main() { int i,a[10]; for(i=9; i>=0; i--) a[i]=10-i; printf(\%d%d%d\\n\, a[2], a[5], a[8]); } 4 下面程序运行的结果是 。 main() { char ch[7]=\ int i,s=0; for(i=0;ch[i]>='0' && ch[i]<='9';i+=2) s=10*s+ch[i]-'0'; printf(\} 5 若有定义语句:char s[100],d[100];int j=0,i=0;且s中已赋字符串,请填空以实现字符串复制。(注意:不得使用逗号表达式) while(s[i]) { d[j]= ; j++ ; } d[j]=0 ; 6 下面程序运行的结果是 。 main() { char s[ ]=\ s[3]='\\0'; printf(\} 7 以下程序的输出结果是 。 #include main() { char ch[3][5]={\ printf(\} 8 以下程序的输出结果是 。 #include #include \main() { char ch[]=\ for(i=0;i<3;i++) strcpy(x[i],ch); for(i=0;i<3;i++) printf(\ printf(\} 三 程序填空题(每空3分,共36分) 1 以下程序的功能是:从键盘上输入若干个学生的成绩(用输入负数结束输入),统计出平均成绩,并输出低于平均分的学生成绩。请填空。

4

#include \stdio.h\ main() { int n=0,i; float x[1000], sum=0.0, ave, a; printf(\ while(a>=0.0 && n<1000) { sum += 【1】 ; x[n]= 【2】 ; n++; scanf(\ } ave= 【3】 ; print(\ printf(\ave=%f\\n\, ave ); for(i=0; i #define M 10 main() { int x[M][M]; int n,i,j; long s=1; printf(\ scanf(\ printf(\ for( 【1】 ) for(j=0;j

5

4 以下程序的功能是:将t数组的内容连接到s数组内容的后面,使s数组保存连接后的新字符串。 #include main() { static char s[30]=\abcdefg\; static char t[ ]=\abcd\; int i=0,j=0; while(s[i]!='\\0') 【1】 ; while(t[j]!='\\0') { s[i+j]=t[j]; j++; } 【2】 ; printf(\%s\\n\,s); }

循环结构程序设计作业答题纸

班级学号 姓名 成绩

一 单项选择题(每题2分,共40分)

1-5 6-10 11-15 16-20

二 填空题(每空3分,共33分) 1 2 3 4 【1】 【2】 5 【1】 【2】 6 7 8 【1】 【2】

三 程序填空题(每空3分,共27分)

1 【1】 【2】 【3】 2 【1】 【2】 【3】 3 【1】 【2】 【3】

6

4 以下程序的功能是:将t数组的内容连接到s数组内容的后面,使s数组保存连接后的新字符串。 #include main() { static char s[30]=\abcdefg\; static char t[ ]=\abcd\; int i=0,j=0; while(s[i]!='\\0') 【1】 ; while(t[j]!='\\0') { s[i+j]=t[j]; j++; } 【2】 ; printf(\%s\\n\,s); }

循环结构程序设计作业答题纸

班级学号 姓名 成绩

一 单项选择题(每题2分,共40分)

1-5 6-10 11-15 16-20

二 填空题(每空3分,共33分) 1 2 3 4 【1】 【2】 5 【1】 【2】 6 7 8 【1】 【2】

三 程序填空题(每空3分,共27分)

1 【1】 【2】 【3】 2 【1】 【2】 【3】 3 【1】 【2】 【3】

6

本文来源:https://www.bwwdw.com/article/2g07.html

Top