有以下程序: #lnclude<stdio.h> struct tt { int x;struct tt*y;}*p; struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a};

admin2020-06-16  28

问题 有以下程序:
    #lnclude<stdio.h>
    struct tt  
    {  int x;struct tt*y;}*p;
      struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a};
    main()
    {  int i;
       p=a;
       for(i=1;i<=2;i++){printf("%d,",p->x);p=P->y;)
    }
程序的运行结果是(    )。

选项 A、20,30,
B、30,17
C、15,30,
D、20,15,

答案D

解析 本题考查的是指针和结构的应用。首先定义的数组tt中有两个成员,一个整型变量,一个绐构指针。当i=1时,p指针指向结构数组的第一个元素,并输出此元素的第一个成员x,即20;当i=2时,p指针指相结构数组的第二个元素的第一个成员,所以输出15。
转载请注明原文地址:https://kaotiyun.com/show/FiCp777K
0

最新回复(0)