最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

数组章节试题

来源:动视网 责编:小OO 时间:2025-09-29 10:57:44
文档

数组章节试题

一、选择题1.以下对一维数组a的正确说明是:A)chara(10);B)inta[];C)intk=5,a[k];D)chara[]={‘a’,’b’,’c’};2.以下能对一维数组a进行初始化的语句是:()A)inta[5]=(0,1,2,3,4,)B)inta(5)={}C)inta[]={0,1,2}D)inta{5}={10*1}3.在C语言中对一维整型数组的正确定义为。A)inta(10);B)intn=10,a[n];C)intn;a[n];D)#defineN10inta[N];
推荐度:
导读一、选择题1.以下对一维数组a的正确说明是:A)chara(10);B)inta[];C)intk=5,a[k];D)chara[]={‘a’,’b’,’c’};2.以下能对一维数组a进行初始化的语句是:()A)inta[5]=(0,1,2,3,4,)B)inta(5)={}C)inta[]={0,1,2}D)inta{5}={10*1}3.在C语言中对一维整型数组的正确定义为。A)inta(10);B)intn=10,a[n];C)intn;a[n];D)#defineN10inta[N];
一、选择题

1. 以下对一维数组a的正确说明是:          

A)char a(10);             B) int a[]; 

C)int k=5,a[k];      D)char  a[]={‘a’,’b’,’c’};

2.以下能对一维数组a进行初始化的语句是: (        )

  A) int a[5]=(0,1,2,3,4,)  B) int a(5)={}  

C) int a[ ]={0,1,2}       D) int a{5}={10*1}

3.在C语言中对一维整型数组的正确定义为       。

        A)int a(10);          B)int n=10,a[n]; 

C)int  n;a[n];        D)#define N 10

                       int a[N]; 

4、已知:int  a[10]; 则对a数组元素的正确引用是(    )。

   A、a[10]     B、a[3.5]     C、a(5)     D、a[10-10]

5. 执行下面的程序段后,变量k中的值为      

     A) 不定值       B) 33           C) 30           D) 10

     int  k=3, s[2];

     s[0]=k;  k=s[0]*10;

6. 下列说法中错误的是       

A  构成数组的所有元素的数据类型必须是相同的

B  用指针法引用数组元素允许数组元素的下标越界

C  一维数组元素的下标依次是1、2、3……

D  定义数组时的长度可以是整型常量表达式

7.若有以下数组说明,则数值最大的和最小的元素下标分别是( )。

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

A)1,12         B)0,11          C)1,11            D)0,12

8.若有以下数组说明,则i=10;a[a[i]]元素数值是( )。

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

A)10          B)9           C)6           D)5

9. 假定int类型变量占用两个字节,其有定义:int  x[10]={0,2,4};,则数组x在内存中所占字节数是      

A) 3            B) 6               C) 10             D) 20

10.若有说明:int a[][3]={1,2,3,4,5,6,7}; 则数组a的第一维的大小为: (       )

  A)  2     B)  3     C)  4   D)无确定值

11.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: (  )

  A)  2     B)  3     C)  4   D)无确定值

12.以下定义语句中,错误的是      

    A) int  a[]={1,2};              B) char  *a[3];

    C) char s[10]=“test”;         D) int  n=5,a[n]; 

13.下面程序段的输出结果是: 

int i; 

int 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

14.对二维数组的正确定义是( )

   A)int a[ ] [ ]={1,2,3,4,5,6};     B)int a[2] [ ]={1,2,3,4,5,6};

C)int a[ ] [3]={1,2,3,4,5,6};     D)int a[2,3]={1,2,3,4,5,6};

15.已知int a[3][4];则对数组元素引用正确的是______.

       A)a[2][4]    B)a[1,3]   C)a[2][0]    D)a(2)(1)

*16. 若有以下的定义:int  t[3][2];能正确表示t数组元素地址的表达式是      

A) &t[3][2]        B) t[3]            C) t[1][2]        D) t[2]

17.下面程序的输出结果是____。 

main( ) 

int m[3][3]={ {1}, {2}, {3} };

int n[3][3]={ 1, 2, 3 };

printf("%d", m[1][0]+n[0][0] ); 

printf("%d", m[0][1]+n[1][0] );  

}

A)30            B)34            C)56            D)11

二、程序填空题

1、下面程序的功能是:输入一行字符,统计其中有多少个单词,单词之间

用空格分开。请填空完成。

# include

main()

{char  str[81];

 int  I,(                );

 char c;

gats(str);

for(I=0;(            )!=’\\0’;I++)

 if(c==’ ’)word=0;

 else if(                 )

  {word=1;

   (                       )}

printf(“There are %d word in line. \\n”,num);

}

2、下面程序的功能是:用选择排序法对数组中10个数据按由小到大排序。请填空完成。

void  sort(int a[],int n)

{(                )

for(I=0;I  { (                 ) for(j=I+1;j if(a[j]   if( (                )){t=a[k];a[k]=a[I];a[I]=t;}

  }

}

 main()

{int  b[10],I;

printf(“enter the array\\n”);

for(I=0;I<10;I++)

 scanf(“%d”.&b[I]);

(                              )

printf(“the sorted array: \\n”);

for(I=0;I<10;I++)

  printf(“%d  “,b[I]);

printf(“\\n”);

}

3、假设当年产值为100,工业产值的增长率分别为6%、8%、10%、12%时,

   求工业产值分别经过多少年可实现翻番。请填空完成。

main()

{int y[4],i;

 float s[4]={100,100,100,100},c[4]={.06,.08,.10,.12};

 clrscr();

for(i=0;i<4;i++)

  {y[i]=0;

   while(                               )

    {s[i]=s[i]*(1+c[i]);

     (                            )}

   printf("\\ny=%d\s=%.2f\c=%.2f",y[i],s[i],c[i]);

  }

}

4、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。(3分,每空1分)

从键盘输入10个整型数据,放入数组a 中,求其最大值及其所在元素的下标位置,并输出。

main()

{

int a[10], n, pos, max;

for (n=0; n<10; n++)

scanf("%d", &a[n]);

max =                        ; 

pos =                          ;

for (n=0; n<10; n++)

  {

        if (a[n] > max)

{

max = a[n];

     pos =                        ;

}

}

printf("max=%d, pos=%d\\n", max, pos);

}

5. 下面函数实现strcmp的功能,将两个字符串s和t进行比较,然后将两个字符串中第一个不相同字符的ASCII码值之差作为函数值返回。

int MyStrcmp(char s[], char t[])

{

    int i;

    for (i=0;               ; i++) 

    {

            if (s[i] == ‘\0’)  return          ;

    }

    return (s[i]-t[i]); 

}

6、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。(10分,每空2分)

1. 下面这个程序的功能是将字符串s中所有的字符c删除。

#include

main()

{

    char s[80];

    int i,j ;

    printf("Please enter string s:");

    gets(s) ;

    for (i=j=0;               ; i++)

    {

        if(s[i]!=’c’)                  ;

    }

    s[j]=’\\0’;

    puts(s);

}

7、 下面程序用于从键盘输入一行字符,统计其中单词(以空格作为间隔符的字符串)的个数,已知判断是否有新单词出现的方法为:当前被检验字符不是空格而前一被检验字符是空格,则表示有新单词出现。例如:输入How  are  you时,要求统计结果为3。

#include

main()

{

    char  str[20];

    int    i, num;

    gets(str);

    if (str[0] != ' ')  

    {    

        num = 1;

    }

    else

    { 

        num = 0;

    }

    for (i=1;                 ;i++)

    { 

        if (                             ) 

        {

             num++;

        }        

    } 

    printf("num=%d\\n", num);

三、写出程序运行结果

1、main()

   {int  x[]={0,1,2,3,4,5,6,7,8,9};

int  s, I,*p;

s=0;

p=&x[0];

for(I=1;I<10;I+=2)

  s+=*(p+I);

printf(“sum=%d”,s);

   }      

运行结果:

2、

#include

main()

{

    int i, j, m;

    int a[2][5] = {1,20,32,14,5,62,87,38,9,10};

       m = a[0][0];

for (i=0; i<2; i++)

          for (j=0; j<5; j++)

            if( m    printf(“m = %d\n”, m);

 }

运行结果:

3.

#include

main()

{

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

    int i,j,s1=0,s2=0;

    for(i=0;i<3;i++)

    {

     for(j=0;j<3;j++)

        {

            if(i==j)

            {

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

            }

            if(i+j==2)

            {

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

            }

        }

    }

    printf("%d,%d\\n",s1,s2);

}

运行结果:

文档

数组章节试题

一、选择题1.以下对一维数组a的正确说明是:A)chara(10);B)inta[];C)intk=5,a[k];D)chara[]={‘a’,’b’,’c’};2.以下能对一维数组a进行初始化的语句是:()A)inta[5]=(0,1,2,3,4,)B)inta(5)={}C)inta[]={0,1,2}D)inta{5}={10*1}3.在C语言中对一维整型数组的正确定义为。A)inta(10);B)intn=10,a[n];C)intn;a[n];D)#defineN10inta[N];
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top