评论

下述程序运行后,变量顺序是?()data perm

试题: 请根据以下程序运行后的变量顺序选择正确的选项:()

A. perm, data, inf B. data, perm, inf C. perm, inf, data D. inf, perm, data

程序代码如下:

struct Data { int x; Data next; }; Data perm = new Data(); perm->x = 1; perm->next = nullptr; Data data = new Data(); data->x = 2; data->next = perm; Data inf = new Data(); inf->x = 3; inf->next = data; perm->next = inf;

正确答案:B. data, perm, inf

解析: 在这个程序中,我们定义了一个结构体Data,它包含一个整型变量x和一个指向Data类型的指针next。然后,我们创建了三个Data类型的指针变量perm、data和inf,并分别给它们分配了内存空间。

接下来,我们分别给这三个变量赋值,并建立了它们之间的指针关系。具体如下:

  1. 创建了一个Data类型的指针变量perm,并给它分配了内存空间。然后,我们将perm->x设置为1,并将perm->next设置为nullptr。
  2. 创建了一个Data类型的指针变量data,并给它分配了内存空间。然后,我们将data->x设置为2,并将data->next设置为perm。
  3. 创建了一个Data类型的指针变量inf,并给它分配了内存空间。然后,我们将inf->x设置为3,并将inf->next设置为data。

最后,我们将perm->next设置为inf,表示perm指向的节点的下一个节点是inf指向的节点。

根据以上分析,程序运行后,变量perm、data和inf的顺序应该是data、perm、inf。因此,正确答案是B。

对于其他选项的解析如下:

A. perm, data, inf:与实际情况不符,因为perm不是第一个变量。

C. perm, inf, data:与实际情况不符,因为inf不是第一个变量。

D. inf, perm, data:与实际情况不符,因为inf不是第一个变量。

综上所述,正确答案是B。返回搜狐,查看更多

责任编辑:

平台声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。
阅读 ()