。语言中,引用数组元素时,其数组下标的数据类型允许是 C  【1】在C )整型表达式  B)整型常量  A 
)任何类型的表达式C)整型常量或整型表达式  D 
。的正确说明是 D  【2】以下对一维整型数组a   B)int n=10,a[n];A  )int a(10); 
  D)#define SIZE 10  C)int n;   
”,&n);    int a[SIZE];      scanf(“%d      int a[n];
D  。】若有说明:int a[10];则对a数组元素的正确引用是  【3 )a[10-10]CB)a[] )a(5)  D  A)a[10]
  。】以下能对一维数组a进行正确初始化的语句是  C 【4 )int a[10]={};A)int a[10]=(0,0,0,0,0);  B 
int a[10]={10*1};  D)  C)int a[]={0}; 
。  B  a【5】以下对二维数组的正确说明是   B)double a[1][4];    A)int a[3][]; 
  D)float a(3)(4);  C)float a(3,4); 
scanf输入整型数组
D  。】若有说明:int a[3][4];则对a数组元素的正确引用是  【6 a[1+1][0])a[1,3]    C)a(2)(1)  Da[2][4]      A)B)
。  C  进行正确初始化的语句是【7】以下不能对二维数组a A) int a[2][3]={0}; B)};6}}; C)D) int a[][3]={1,2,3,4,5,6};
【8】 指出下面各说明语句中哪些是合法的:(多选)
    A. int abcd[0x80];                  B. char 9ab[10];
    C. char chi[-200];                  D. int aaa[5]={3,4,5};
    E. float key[]={,,1,0};        F. char disk[];
    G. int n,floppy[n];                  H. int cash[4]={1,2,3,4,5,6};
    答案: ADE
【9】下面程序中有错误的行是  D  (每行程序前面的数字表示行号)。
1 main()
2 {
float a[3]={1};3 
4  int i;
5  scanf(“%d”,&a);
6  for(i=1;i<3;i++) a[0]=a[0]+a[i];
7  printf(“a[0]=%d\n”,a[0]);
8 }
  A)3  B)6  C)7  D)5
【10】 请回答下列问题。
    (1)array是一个一维整形数组,有10个元素,前6个元素的初值是9,4,7,49,32,-5,请写出正确的说明语句。 ___
    (2)该数组下标的取值范围是从___到___(从小到大)。
    (3)如何用scanf函数输入数组的第二个元素。  ___
    (4)如何用赋值语句把39存入第一个元素。      ___
    (5)如何表示把第六个和第四个元素之和存入第一个元素。    ___
    答案:  int array[10] = {9,4,7,49,32,-5};
            0    9
          scanf(%d,&array[1]);
          array[0] = 39;
          array[0] = array[5] + array[3];
【11】若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为 A  。(假 设a[0][0]位于数组的第一个位置上。)
  A)i*m+j+1    B)j*m+i  C)i*m+j-1    D)i*m+j
【12】若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是  B  。
  A)2  B)3  C)4  D)无确定值
【13】定义如下变量和数组:
int k;
int a[3][3]={1,2,3,4,5,6,7,8,9};
则下面语句的输出结果是 A  。
for(k=0;k<3;k++) printf(%d,a[k][2-k]);
  A)3 5 7 B)3 6 9 C)1 5 9 D)1 4 7
【14】若有以下程序段:
  … …
int a[]={4,0,2,3,1}; i,j,t;
for(i=1;i<5;i++)
{
  t=a[i]; j=i-1;
  while(j>=0&&t>a[j])
  { a[j+1]=a[j]; j--; }
a[j+1]=t; 
}
  … …
则该程序段的功能是  B  。
A) 对数组a进行插入排序(升序)
B) 对数组a进行插入排序(降序)
C) 对数组a进行选择排序(升序)
D) 对数组a进行选择排序(降序)
【题15】当运行以下程序时,从键盘输入:AhaMA Aha<CR>(<CR>表示回车),则下面程序的运行结果是  D  。
#include <>
main()
{
  char s[80],c=‘a';
  int i=0;
  scanf(“%s”,s);
  while(s[i]!=‘\0')
  {
    if(s[i]==c) s[i]=s[i]-32;
    else if(s[i]==c-32) s[i]=s[i]+32;
    i++;
  }
  puts(s);
}
  A)ahAMa  B)AhAMa  C)AhAMa ahA D)ahAMa ahA
【题16】设数组a包括10个整型元素。下面程序的功能是求出a中各相邻两个元素的和,并将这些和存在数组b中,按每行3个元素的形式输出。请填空。
main()
{
  int a[10],b[10],i;
  for(i=0;i<10;i++)
    scanf(“%d”,&a[i]);
  for(【1】;i<10;i++)
  【2】
  for(i=1;i<10;i++)
  {
    printf(“=”,b[i]);
    if(【3】==0) printf(“\n”);
  }
}
    【1】i=1  【2】b[i]=a[i]+a[i-1] 【3】(i%3)
进制。请填空。n】下面程序将十进制整数转换成17【题.
main()
{
  int i,base,n,j,num[20];
  printf(“Enter data that will be converted\n”);
  scanf(“%d”,&n);
  printf(“Enter base\n”);
  scanf(“%d”,&base);
  do{
    i++;
    num[i]=n【1】base;
    n=n【2】base;
  }while(n!=0);
  printf(“The data %d has been converted into the %d--base
    data:\n”,n,base);
  for(【3】)
    printf(“%d”,num[j]);
}
        【1】%  【2】/    【3】j=i; j>=1; j--
【题18】下面程序的功能是将二维数组a中每个元素向右移一列,最右一列换到最左一列,移后的数组存到另一二维数组b中,并按矩阵形式输出a和b。请填空。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。