一年级下册【统编版】语文第一单元测试(含答案)

有以下程序: struct S{int n;int a[20];}; void f(int*a,int n) {int i; for(i=0;i<n-1;i++)a[i]+=i;} mainf() {int i;struct S s{10,{2,3,1,6,8,7,5,4,10,9}}; if(s.a,s.n); for(i=0;i<s.n;i++)printf("%d",s.a[i]);} 程序运行后的输出结果是( )。

A.2,4,3,9,12,12,11,11,18,9

B.3,4,2,7,9,8,6,5,11,10

C.2,3,1,6,8,7,5,4,10,9

D.1,2,3,6,8,7,5,4,10,9


正确答案:A


1 5 .在] n t e r n e t 中,目前使用的I P 地址采用( ) 位二进制代码。

A .1 6

B .3 2

C .6 4

D .1 2 8


正确答案:B
1 5 .【答案】 B
【考点】 I P 地址的内容
【解析】 为明确区分I n t e r n e t 上的每一台主机,I n t e r n e t 为网上的每台主机都分配了唯一的地址,该地址由纯数字组成,称为I P 地址。I P 地址是一个3 2 位的二进制数,为方便使用,通常把3 2 位I P 地址表示成4 组十进制数,组与组之间用圆点进行分隔,如2 0 1 .1 5 . 1 2 8 , 5 6 。


有以下程序 struct S { int n;int a[20];}; void f(int *a,int n) { int i; for(i=0;i<n-1;i++)a[i]+=i; } main() { int i;struct S s={10,{2,3,1,6,8,7,5,4,10,9}}; f(s.a,s.n); for(i=0;i<s.n;i++)printf("%d,",s.a[i]); } 程序运行后的输出结果是

A.2,4,3,9,12,12,11,11,18,9,

B.3,4,2,7,9,8,6,5,11,10,

C.2,3,1,6,8,7,5,4,10,9,

D.1,2,3,6,8,7,5,4,10,9,


正确答案:A
解析:本题中,在调用函数时将结构体变量的两个成员作为实参,其中的成员数组a实际向函数f()传递的是该数组的地址,因此在函数f()中所对应的形参发生改变时,该数组内的数据也会发生改变。函数f()实现的功能是将成员数组中的前9个元素分别加上该元素的下标,作为新的元素。


有以下程序: void sort(int a[],int n) { int i,j,t; for(i=0;i<n-1;i+=2) for(j=i+2;j<n;j+=2) if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;} } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10); for(i=0;i<10;i++) printf("%d",aa[i]); printf("\n"); } 其输出结果是( )。

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.9,2,7,4,5,6,3,8,1,10,

D.1,10,3,8,5,6,7,4,9,2,


正确答案:C
解析:son()函数作用是将数组aa中的下标为偶数的元素按大到小排序。主函数中首先定义了一个长度为10的数组并赋值,然后调用sort()函数,将数组aa中奇数个元素的值按大到小排序,因此执行完该函数后,数组中奇数个元素的值为9、7、5、3和1,故主函数中最后通过一个for循环输出数组aa中各元素的值为9、2、7、4、5、6、3、8、1和10,所以,4个选项中选项C符合题意。


以下程序的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。

例如,若一维数组中的数据是:

2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10

删除后,数组中的内容应该是:

2 3 4 5 6 7 8 9 10。

请填空。

#include

#define N 80

int fun(int a[], int n)

{ int i,j=1;

for(i=1;i

if(a[j-1]【19】a[i])

a[j++]=a[i];

【20】;

}

main()

{ int a[N]={ 2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10}, i, n=19;

printf("The original data :\n");

for(i=0; i

for(i=0; i

}


正确答案:
!=;return j


摘要:一年级下册【统编版】语文第一单元测试(含答案)时间:60分钟满分:100分1/6 2/6 3/6 4/6 参考答案:一、IKLM二、iɑnɑnɑngongingɑng三、四、春风雪花飞入什么国王生气左右动力BA五、张张开时时间睛眼睛姓姓名冻冰冻病生病六、晴请情清睛晴请情清睛七、八、1.2.3.4.九、①③②十、1.中国有很多姓氏。2.花园里的花儿漂亮3.小丽小红一起做游戏十一、示例:古代有一个男孩叫司马光,有一天,他和小伙伴们在后院里玩,有个小孩不小心掉到了水缸里。别的孩子一见出了事,就赶紧跑去找大人。司马光却很机智地从地上捡起一块大石头,使劲向水缸砸去,缸被砸破了,水流了出来,小孩也得救了。十二、1.因为所以2.小青蛙3.河里保护禾苗吃害虫十三、1.42.93.白粉黄4.树枝上花园里5.去江堤上放风筝呀5/6


有以下程序: include void sort(int a[] ,int n){int i,j,t; for(i=0;i

有以下程序: #include <stdio, h>void sort(int a[] ,int n){ int i,j,t; for(i=0;i<n;i ++ ) for(j =i+ 1;j<n;j ++ ) if(a[i]<a[j]){ t=a[1] ;a[i]=a[j] ;a[j] =t; }main( ){ int aa[10] = {1,2,3,4,5,6,7,8,9,10} ,i; sort(aa +2, 5); for(i =0;i<10;i++) prinff("%d," ,aa[i]); prinff("\n");程序运行后的输出结果是( )。

A.1,2,3,4,5,6,7,8,9,10,

B.1,2,7,6,3,4,5,8,9,10,

C.1,2,7,6,5,4,3,8,9,10,

D.1,2,9,8,7,6,5,4,3,10,


正确答案:C
解析:sort函数的功能是将给定的数由大到小排序。函数调用sort(aa+2,5);中的实参aa+2是aa[2]的地址,将其传给形参a[],使得形参中封a[0]的值为主函数中aa[2]的值,即3;实参5传给形参n,在sort函数中用于指定参加排序的5个数,从aa[2]到aa[6],所以本题输出的结果是:1,2,7,6,5,4,3,8,9,10,


设m>n,用“<"或“>"填空:(1)m-5____n-5;(2) m+4____n+4;(3)6m

设m>n,用“<"或“>"填空:

(1)m-5____n-5;(2) m+4____n+4;

(3)6m____6n; (4)-1/3m____-1/3n


(1)m-5n-5; (2) m+4n+4;

(3)6m6n;  (4)-1/3m-1/3n



include void sort(inta[],int n) {int i,j,t;for(i=0;i

include<stdio.h>

void sort(inta[],int n)

{int i,j,t;

for(i=0;i<n-1;i++)

for(j=i+1;<n;j++)

if(a[i]<a[j])

{t=a[i];a[i]=a[j];a[j]=t;

}

}

main()

{int a[10]={1,2,3,4,5,6,7,8,9,10},i;

sort(&a[1],7);

for(i=0;i<10;i++)printf("%d,",a[i]);

}

程序运行后的输出结果是( )。

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.1,8,7,6,5,4,3,2,9,10,

D.1,2,10,9,8,7,6,5,4,3,


正确答案:C
解析:本程序中的函数sort(int a[],int n)实现的功能是将数组a中的前n个数进行从大到小排序。 sort(&a[1],7)是将数组中从a[1]到a[7]这7个数进行从大到小排序,其他数不变。


以下程序的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如,若一维数组中的数据是:2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10删除后,数组中的内容应该是:2 3 4 5 6 7 8 9 10。请填空。#include <stdio.h>#define N 80int fun(int a[], int n){ int i,j=1; for(i=1;i<n;i++) if(a[j-1]a[i]) a[j++]=a[i]; ;}main(){ int a[N]={ 2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10}, i, n=19; printf("The original data :\n"); for(i=0; i<n; i++) printf("%3d",a[i]); n=fun(a,n); printf("\nThe data after deleted :\n"); for(i=0; i<n; i++) printf("%3d",a[i]); printf("\n");}


正确答案:<,return j
在本题中,程序的功能是删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。
在主函数中,首先定义了一个一维数组,并进行了初始化操作,然后用一个循环输出该数组,接着调用函数fun去掉数组中重复的元素,最后输出。按照题目要求,我们可以知道函数fun的作用是去掉已排好序数组中的重复元素。
fun函数带有两个形参,从主函数中我们可以看出,这两个形参分别是数组的首地址和数组的长度。在函数体中,首先定义两个整型变量i和j,其中j被初始化为1,而i作为循环变量,然后执行for循环,循环的结束条件是循环变量i小于数组的长度,从题目要求和程序来分析,该循环的作用是删除数组中重复的元素,在循环体中,首先执行条件判断语句if,第13空就是该语句的判断条件表达式,如果条件为真,执行a[j++]=a[i];,从程序中我们推断出a[j++]是用来存储新的数组,而将a[i];赋值给a[j++]时,能确定a[i]是出现一个新数值的时候,即一个更大的数值,那么此时a[i]应该大于a[j-1],因此第13空应该填<运算符。
第14空是在循环结束后的一条语句,从主函数中我们可以看出,函数应该有个返回值,且返回值作为输出数组元素个数的依据,由此我们可以推断出在14空处应该返回新数组的长度。返回的应该是变量j的当前值,因此,第14空的答案是return j。本题的答案应该分别是<和return j


有如下程序段,设n为3的倍数。则语句③的执行频度为______。 Lnt i,j ; ① for(i=i;i<n; i++){ ② if(3*i<=n){ ③ for(j=3*i;j<n;j++){

④ x++;y=3*x+2; } } }

A.n(n+1)/6

B.n(n-1)/6

C.n2/6

D.(n+1)(n-1)/6


正确答案:B
解析:取n=3,此时,语句③仅执行1次,注意,执行了一次,而不是一次也没执行。据此,只有选项B符合。
  再取n=6,此时,语句③执行次数为:4+1=5,选项B正好符合。故可判断答案为B。


相关考题:

考题 请编写函数fun(),该函数的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。例如,若一维数组中的数据是:2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10删除后,数组中的内容应该是:2 3 4 5 6 7 8 9 10。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:include <stdio. h>define N 80int fun(int a[], int n){}main ( ){int a[N]={ 2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10,10}, i, n=20;printf ("The original data : \n");for(i=0; i<n; i++)printf ("%3d", a [i] );n=fun (a, n);printf("\n\nThe data after deleted: \n");for(i=0; i<n; i++)printf ("%3d", a [i] );printf ("\n\n");} 正确答案:int fun(int a[] int n) { int i j=l; for (i=1; in; i++) if (a[j-1] !=a[i]) /*若该数与前一个数不相同则要保留*/ a[j++]=a [i]; return j; /*返回不同数的个数*/ }int fun(int a[], int n) { int i, j=l; for (i=1; in; i++) if (a[j-1] !=a[i]) /*若该数与前一个数不相同,则要保留*/ a[j++]=a [i]; return j; /*返回不同数的个数*/ } 解析:本题程序的流程是:让i,j都从1开始,其中j用于控制删除后剩下的数中的下标,i用于搜索原数组中的元素。j始终是新数组已有元素中最后一个元素的下一个元素的下标,所以if()中的条件是a[j-1]!=a[i],其中a[j-1]就是新数组中的最后一个元素,若条件成立,则表示出现了不同的值,所以a[i]要留下到新数组中。注意本题中i,j的初值都要从1开始,该算法只能用于数组已排序的题目中。

考题 下列四组共点力分别作用于同一物体上,其中不可能使物体作匀速直线运动的是()A、1N,4N,6NB、2N,4N,6NC、3N,4N,6ND、4N,4N,6N正确答案:A

考题 程序运行后,单击窗体,则在窗体上显示的内容是(). Private Sub Form_Click( ) Dim a(1 To 6)As Integer Dim min1%,i%,j%,n%,t%,k% a(1)=8:a(2)=6:a(3)=9:a(4)=3:a(5)=2:a(6)=7 n=6 For i=1 To n-1 min 1=i For j=i+1 To n If a(j)<a(min1)Then min1=j Next j t=a(i):a(i)=a(min1):a(min1)=t Next i For i=1 To n Print a(i) Next i End SubA、9 8 7 6 3 2B、2 3 6 7 8 9C、9 8 7 6 3D、2 3 6 7 8正确答案:B

考题 若有如下程序: sub(p,n) int(*p)[3],n; { int i; for(i=0;i<=n;i++) printf("%d",*(*(p+i)+n)); } main() {int s[3][3]={1,2,3,4,5,6,7,8,9}; sub(s,2); } 则程序运行后的输出结果是( )A.3 6 9B.2 4 8C.4 5 6D.7 8 9 正确答案:A

考题 有以下程序: void sott(int a[], int n) { int i, j, t; for(i=0; i<n-1; i++) for(j=i+1; j<n; j++) if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;) } main() {int aa[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, I; sort(aa+2, 5); for (i=0; i<10; i++)printf("% d", aa[i]); printf("\n"); } 程序运行后的输出结果是______。A.1, 2, 3, 4, 5, 6, 7, 8, 9, 10,B.1, 2, 7, 6, 3, 4, 5, 8, 9, 10,C.1, 2, 7, 6, 5, 4, 3, 8, 9, 10,D.1, 2, 9, 8, 7, 6, 5, 4, 3, 10, 正确答案:C解析:aa+2=aa[2],因此sort(aa+2,5)是从aa[2]开始,依次与后面的元素进行比较,将当前值小于其后一项的值进行互换,循环5次。

考题 胃癌的TNM分期(2005年第6版AJCC)中,N1,N2,N3各指什么?正确答案: N.1:有1-6个区域淋巴结转移; N.2:有7-15个区域淋巴结转移; N.3:大于15个区域淋巴结转移。

考题 有以下程序 void sort(int a[ ],int n) { int i,j,t; for(i=0;i<n-1;i+=2) for(j=i+2;j<n;j+=2) if(a[i]<a[j]) { t=a[i];a[i]=a[j];a[j]=t;} } main ( ) { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10); for(i=0;i<10;i++) printf(“%d”,aa[i]); printf(“\n”);} 其输出结果是( )A.1,2,3,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.9,2,7,4,5,6,3,8,1,10,D.1,10,3,8,5,6,7,4,9,2, 正确答案:C解析:通过sort()函数中的双重for循环,对数组下标为偶数的元素进行从大到小的排序,下标为奇数的元素不变。

考题 有以下程序 vold soru(int a[], int n) { int i,i,t; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(a[i]<a[j]) { t=a[i]; a[i]=a[i]; a[j]=t; } } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10),i; sore(aa+2, 5); for(i=0;i<10;i++) printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是A.1,2,3,4,5,6,7,8,9,10,B.1,2,7,6,3,4,5,8,9,10,C.1,2,7,6,5,4,3,8,9,10,D.1,2,9,8,7,6,5,4,3,10, 正确答案:C解析:先看sort()函数,它没有返回值,有两个参数,一个int型数组和一个int型变量。在函数中是一个;重循环,外循环变量i从0递增到n-2,内循环变量j从i+l递增到n-1。内循环体是一条if语句“如果a[i]

考题 单选题程序运行后,单击窗体,则在窗体上显示的内容是(). Private Sub Form_Click( ) Dim a(1 To 6)As Integer Dim min1%,i%,j%,n%,t%,k% a(1)=8:a(2)=6:a(3)=9:a(4)=3:a(5)=2:a(6)=7 n=6 For i=1 To n-1 min 1=i For j=i+1 To n If a(j)<a(min1)Then min1=j Next j t=a(i):a(i)=a(min1):a(min1)=t Next i For i=1 To n Print a(i) Next i End SubA9 8 7 6 3 2B2 3 6 7 8 9C9 8 7 6 3D2 3 6 7 8正确答案: B解析: 本题考查循环程序的分析。程序主要包括两条循环语句,一条为两层循环的嵌套语句,内层循环找到当前i到n之间的最小元素的下标,退出内循环则把最小元素放到a(i)的位置,i从1变化到n-1;另外一条循环语句为输出数组中的所有元素,即把排序以后的结果输出。

考题 有以下程序: void sort(int a[], int n) {int i,j,t; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(a[i]<a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa+2,5); for(i=0;i<10;i++)printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是( )。A.1,2,3,4,5,6,7,8,9,10,B.1,2,7,6,3,4,5,8,9,10,C.1,2,7,6,5,4,3,8,9,10,D.1,2,9,8,7,6,5,4,3,10, 正确答案:C解析:先看sort()函数,它没有返回值,有两个参数,一个int型数组和一个int型变量。在函数中是一个二重循环,外循环变量i从0递增到n-2,内循环变量j从i+1递增到n-1。内循环体是一条if语句“如果a[i]a[j]就把两个值交换”。这是一个典型的从大到小选择排序算法,排序的范围是a[0]~a[n-1],一共n个数排序,主函数中定义了一个数组aa[10],然后调用sort(aa+2,5);的意思是将aa[2]~aa[6]范围的5个数据从大到小排序。所以排序以后数组aa[10]的内容是1,2,7,6,5,4,3,8,9,10。故应该选择C。