阅读如下程序段,则执行后程序的输出结果是#includemain(){structa{int x; int y;}num[2]={{20,5},{6,7}};printf("%d\n",num[0].x/num[0].y*num[1].y);}A.0B.28C.20D.5

题目

阅读如下程序段,则执行后程序的输出结果是

#include

main()

{structa{int x; int y;}num[2]={{20,5},{6,7}};

printf("%d\n",num[0].x/num[0].y*num[1].y);}

A.0

B.28

C.20

D.5


相似考题
参考答案和解析
正确答案:B
更多“阅读如下程序段,则执行后程序的输出结果是 #include main() {structa{intx;inty;}num[2] ”相关问题
  • 第1题:

    下列程序的输出结果是______。 struct exmple { int x; int y; }num[2]=}1,2,3,2}; main() { printf("%d\n",num[1].y*num[0].x/num[1].x);}

    A.0

    B.1

    C.3

    D.6


    正确答案:A
    解析:结构体数组num初始化后,num[0]成员x、y的值分别为1、2,num[1]成员x、y的值分别为3、2,代入num[1].y*num[0].x/num[1].x,解得值是0。

  • 第2题:

    有以下程序:includeint fun(int x,int y){if(x==y)return(x);else return((x+y)/2);}m

    有以下程序: #include<stdio.h> int fun(int x,int y) {if(x==y)return(x); else return((x+y)/2); } main() {int a=1,b=2,c=3; printf("%d\n",fun(2*a,fun(b,C))); } 程序运行后的输出结果是( )。

    A.2

    B.3

    C.4

    D.5


    正确答案:A

  • 第3题:

    有以下程序:includefun(int x,int y,int z){z=x*y;}main(){int a=4,b=2,c=6; fun(a,b,

    有以下程序: #include <stdio.h> fun(int x,int y,int z) { z=x*y;} main() { int a=4,b=2,c=6; fun(a,b,c); printf("%d",c); } 程序运行后的输出结果是( )。

    A.16

    B.6

    C.8

    D.12


    正确答案:B
    解析:本题考查函数形参与实参的传递规则,当形参与实参都是简单的数据类型时,形参值的改变不能影响实参值,即本题中c的值未改变,仍然是6。

  • 第4题:

    以下程序的输出结果是()。includeint m=13;int fun(int x,int y){int m=2;return(x*y-m

    以下程序的输出结果是( )。 #include<stdio.h> int m=13; int fun(int x,int y) {int m=2; return(x*y-m); } main() {int a=7,b=6; printf("%d",fun(a,B)/m); }

    A.1

    B.3

    C.7

    D.10


    正确答案:B

  • 第5题:

    有如下程序段#include "stdio.h"typedef union{ long x[2]; int y[4]; char z[8];}atx;typedef struct aa { long x[2]; int y[4]; char z[8];} stx;main(){ printf("union=%d,struct aa=%d\n",sizeof(atx),sizeof(stx));}则程序执行后输出的结果是A.union=8,struct aa=8 B.union=8,struct aa=24C.union=24,struct aa=8 D.union=24,struct aa=24


    正确答案:B
    本题主要考查结构体和联合体所占的存储空间。
    在本题程序中,首先定义了一个联合体,联合体中具有三个成员,它们的类型分别为长整型、整型和字符型。按照C语言的规定,这三种类型的变量所占的存储空间分别为4个字节、2个字节和1个字节。但由于定义的成员都是数组,长整型数组的大小为2,那么需要的总空间为8个字节;整型数组的大小为4,那么需要的总空间为8个字节;字符数组的大小为8,需要的总空间也为8个字节,因此,可以看出三个成员需要的存储空间一样,都为8。根据联合体变量中的所有成员共享存储空间,联合变量的长度等于各成员中最长的长度的特点,我们可知,系统只需为该联合体变量准备8个字节存储空间即可。
    然后,定义了一个结构体,结构体中的成员类型及数组大小与联合体完全一致,即三个成员所需的空间都为8个字节。但是结构体与联合体不一样的是,结构体不能共享空间,一个结构体变量的总长度是各成员长度之和。因此,该结构体所需的存储空间为24个字节。
    综上所述,我们可以知道程序中的联合体和结构体所需要的存储空间分别为8个字节和24个字节。因此,用sizeof运算符计算这两者的存储空间,输出的结果应该为union=8,struct aa=24,本题正确答案选B。