假设 sizeof(int) 的值为4,已知数组定义:int a[3]; 则sizeof(a[0])的值为______。A.4B.12C.0D.3

题目

假设 sizeof(int) 的值为4,已知数组定义:int a[3]; 则sizeof(a[0])的值为______。

A.4

B.12

C.0

D.3


相似考题
更多“假设 sizeof(int) 的值为4,已知数组定义:int a[3]; 则sizeof(a[0])的值为______。”相关问题
  • 第1题:

    以下不能定义为用户标识符的是()。A)Main B)_0C)_int D)sizeof


    正确答案:D
    sizeof为关键字,不能定义为用户的标识符。

  • 第2题:

    已知: union { int i; char c; float a; }st;则sizeof(st)的值是______。

    A.4

    B.5

    C.6

    D.7


    正确答案:A

  • 第3题:

    阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。

    【说明】

    下面一段程序从给定的数组b中找出值最小的元素,并输出该元素的数组下标、内存地址minaddr以及元素值本身。函数findmin负责在给定的数组中查找最小值,并返回最小值所在的内存地址,函数有三个参数:array是所要处理的数组;size是数组的大小;index负责从函数返回具有最大值的元素在数组中的数组下标。请填充空白,使其成为一个合乎要求的完整程序。

    【程序】

    //程序开始

    include<iostream.h>

    int *findmin(int *array, int size, int &index);

    void main()

    {

    /****** 变量定义部分 ***********/

    int b[10] = {34, 34, 23, 89, 1, 2, 13, 42, 5, 54};

    (1);

    int idx;

    /******* 寻找最小值 ************/

    minaddr = findmin(b, sizeof(b)/sizeof(int), idx);

    /******* 输出最小值的有关信息 ************/

    cout << "Min value index: "<<idx<<end1

    <<"Min value address: "<<minaddr<<end1

    <<"Min value: "<<(2)<<end1;

    }

    /******* 函数findmin的定义部分 ************

    int *findmin(int *array, int size, int &index)

    {

    int min = 0;//max 是当前具有最小值的数组元素下标值

    for(int i = 1;(3); i++)

    {

    if(array[i]<(4))

    min = i;

    }

    (5);

    return array + min;//返回最小值所在内存地址

    }


    正确答案:(1)int *minaddr (2) b[idx] (3)isize (4) array[min] (5) index = min
    (1)int *minaddr (2) b[idx] (3)isize (4) array[min] (5) index = min

  • 第4题:

    设有定义语句:int a[][3]={{0},{1}{2}};,则数组元素a[1][2]的值是【 】。


    正确答案:×
    0 解析:本题考查的是二维数组初始化问题。题中对数组的a[0][0],a[1][0],a[2][0]3个元素分别赋值为0,1,2,其余的元素都自动赋0。所以a[1] [2]的值为0。

  • 第5题:

    若指针p已正确定义,要使p指向两个连续的整型动态存储单元,则正确语句是( )

    A.p=2 *(int *)malloc(sizeof(int));

    B.p=(int*)calloc(2*sizeof(int));

    C.p=(int*)malloc(2* sizeof(int));

    D.p=2 *(int*)calloc(sizeof(int));


    正确答案:C

  • 第6题:

    有以下定义和语句,则sizeof(a) 的值是【 】,而sizeof(a,share)的值是【 】

    struct date

    { int day;

    int mouth;

    int year;

    union{int share1;

    float share2;

    }share;

    }a;


    正确答案:10 4
    10 4 解析:结构体变量所占内存长度是各成员占的内存长度之和。每个成员分分别占有其自己的内存单元。int占2个字节,float占4个字节,共用体变量所占的内存长度等于最长的成员的长度。所以,sizeof(a,share)的值是4,sizeof(a)的值是 2+2+2+4=10。

  • 第7题:

    若有定义inta[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof()/sizeof(a[0])的值为()

    A.3

    B.4

    C.5

    D.9


    参考答案:A

  • 第8题:

    经下列语句定义后,sizeof(x)、sizeof(y)、sizeof(a)、sizeof(b)在IBM-PC机上的值分别为______。char x=65;float y=7.3;int a=100;double b=4.5;

    A.2,2,2,4

    B.1,2,2,4

    C.1,4,2,8

    D.2,4,2,8


    正确答案:C

  • 第9题:

    若有下面的说明和定义: union un { char s[10]; long d[3]; }ua; struet std { char c[10];double d;int a; union un vb; }a;则printf("%d\n", sizeof(struct std)+sizeof(union un));输出的值为______。

    A.34

    B.52

    C.54

    D.64


    正确答案:B
    解析:结构体中的每个成员分别占用独立的存储空间,因此它所占的内存字节数是其成员所占字节数的总和;共用体变量所占内存字节数与其成员中占字节数最多的那个成员相等。

  • 第10题:

    变量W_data定义如下:union data_node{float ff'int n;char ch;}W_data;则变量W_data所占的内存存储空间可表示为______。

    A.sizeof(int)
    B.sizeof(char)
    C.sizeof(float)
    D.sizeof(int)+sizeof(char)+sizeof(float)

    答案:C
    解析:
    本题考查C语言编程的基本知识。本题中变量W_data类型为联合。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。

  • 第11题:

    数组定义与赋初值语句如下:int[]a={1,2,3,4,5};则a[2]的值为()。


    正确答案:3

  • 第12题:

    单选题
    若有定义inta[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof()/sizeof(a[0])的值为()
    A

    3

    B

    4

    C

    5

    D

    9


    正确答案: C
    解析: 暂无解析

  • 第13题:

    已知有变量datal定义如下: union data { int i; char ch; float f; }datal; 则变量datal所占的内存存储空间可表示为(57)。

    A.sizeof(int)

    B.sizeof(char)

    C.sizeof(float)

    D.SiZCOf(mt)+sizeof(char)+sizeof(float)


    正确答案:C
    解析:本题考查C语言编程的基本知识。本题变量datal定义为联合结构。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。

  • 第14题:

    ● 已知有变量 data1 定义如下:

    union data

    { int i;

    char ch;

    float f;

    } data1;

    则变量 data1 所占的内存存储空间可表示为 (57) 。

    (57)

    A. sizeof(int)

    B. sizeof(char)

    C. sizeof(float)

    D. sizeof(int)+sizeof(char)+sizeof(float)


    正确答案:C


  • 第15题:

    若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是

    A.p=2*(int*)malloc(sizeof(int));

    B.p=(int*)mall0c(2*sizeof(int));

    C.p=(int*)malloc(2*2);

    D.p=(int*)calloc(2,sizeof(int));


    正确答案:A
    解析:本题考核的知识点是manoc()函数的应用。该函数的调用格式是“malloc(n)”,作用是申请n个字符的存储单元并把该存储区的首地址作为返回值,实际调用的时候可在前面加上“(类型说明符*)”,以转换成需要的类型的地址。选项D多了一个参数,不符合malloc()函数的调用格式;整型变量在有的计算机系统里占4个字节,并不一定在所有的计算机系统里都是两个字节,所以选项C不正确;选项A中是申请一个整型的存储空间并把该存储空间的首地址乘以2,这样的做法是不正确的,其存储空间为没乘以2之前的存储空间的2倍的连续存储空间的地址,选项A不正确。所以,4个选项中B为所选。

  • 第16题:

    设int a[4];int *p=a,则sizeof (p)和sizeof (a)的值分别是______ 。

    A.4和4

    B.16和4

    C.16和16

    D.4和16


    正确答案:D
    解析:a为数组,所以sizeof(a)为16。

  • 第17题:

    有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( )


    正确答案:
     

  • 第18题:

    有以下定义和语句,则sizeof(a.share)的值是( )。

    struct date

    { unsigned int day;

    unsigned int mouth;

    unsigned int year;

    union{int share1;

    float share2;

    }share;

    }a;


    正确答案:4
    4

  • 第19题:

    下列x的值是int x;x= sizeof 2.25*4;


    正确答案:32
    在本题中,首先定义了一个整型变量x,然后将一个运算表达式的结果赋值给变量x,题目要求我们给出变量x的值,即表达式sizeof 2.25*4的值,在该表达式中,由于sizeof运算符的优先级高于算术运算符,所以,sizeof 2.25*4等价于(sizeof 2.25)*4,由于2.25是一个实数,被默认为一个双精度的实数,所占字节数为8,因此,(sizeof 2.25)*4可表示为8×4=32(以IBM-PC机为例)。

  • 第20题:

    若有如下定义和声明: struct s { int m;char ch;double x; union t {char a[6];int b[3];}tt;}ss; 则sizeof(struets)的值是( )

    A.6

    B.14

    C.17

    D.20


    正确答案:C

  • 第21题:

    试题二(共15分)

    阅读以下说明、C程序代码和问题1至问题3,将解答写在答题纸的对应栏内。

    【说明1】

    设在某C系统中为每个字符型数据分配1个字节,为每个整型(int)数据分配4个字节,为每个指针分配4个字节,sizeof(x)用于计算为x分配的字节数。

    【C代码】

    #include <stdio.h>

    #include <string.h>

    int main()

    { int arr[5]={10,20,30};

    char mystr[]="JustAtest\n";

    char *ptr= mystr;

    printf("%d%d%d\n", sizeof(int),sizeof(unsigned int),sizeof(arr));

    printf("%d%d\n",sizeof(char),sizeof(mystr));

    printf("%d%d%d\n",sizeof(ptr),sizeof(*ptr),strlen(ptr));

    return 0;

    }

    【问题1】(8分)

    请写出以上C代码的运行结果。

    【说明2】

    const是C语言的一个关键字,可以用来定义“只读”型变量。

    【问题2】(4分)

    (1)请定义一个“只读”型的整型常量size,并将其值初始化为10;

    (2)请定义一个指向整型变量a的指针ptr,使得ptr的值不能修改,而ptr所指向的目标变量的值可以修改(即可以通过ptr间接修改整型变量a的值)。

    注:无需给出整型变量a的定义。

    【问题3】(3分)

    某C程序文件中定义的函数f如下所示,请简要说明其中static的作用,以及形参表“const int arr[]”中const的作用。

    static int f(const int arr[])

    {

    /*函数体内的语句省略*/

    }


    正确答案:

    【问题1】
    4  4  20
    1  11
    4  1  10
    【问题2】
    (1)const int size=10;或int const size=10,
    (2)int*const ptr=&a;
    【问题3】
    static的作用:说明f是内部函数(或局部函数),只能在本文件中调用它。
    const的作用:在函数f中不能修改数组元素的值,若修改,编译时会报错。

  • 第22题:

    若有定义inta[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof()/sizeof(a[0])的值为()

    • A、3
    • B、4
    • C、5
    • D、9

    正确答案:A

  • 第23题:

    设有数组定义语句:inta[10];若要将这些元素值保存在磁盘中,以下错误的形式是()

    • A、fwrite(a,sizeof(int),10,fp);
    • B、fwrite(a,2,10,fp);
    • C、fwrite(a,2*10,1,fp);
    • D、fwrite(a,sizeof(int),1,fp);

    正确答案:D

  • 第24题:

    问答题
    有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为多少?

    正确答案: a[0][1]的值为0
    解析: 暂无解析