有以下程序
#include<stdlib.h>
struct NODE
{int num;struct NODE*next;}
main()
{struct NODE *P,*q,*r;
p=(struct NODE *)malloc(sizeof(struct NODE));
q=(struct NODE *)malloc(sizeof(struet NODE));
r=(struct NODE*)malloc(sizeof(struct NODE)):
p->num=10;q->num=20;r->num=30;
p->next=q;q->next=r;
printf("%d\n",p->num+q->next->num):
}
程序运行后的输出结果是( )
A.10
B.20
C.30
D.40
第1题:
有以下程序段 typedef struct node { int data; struct node *next; } *NODE; NODE p; 以下叙述正确的是( )。
A.p是指向struct node结构变量的指针的指针
B.NODE p;语句出错
C.p是指向struct node结构变量的指针
D.p是struct node结构变量
第2题:
有以下程序
#include
struct NODE
{ int num; struct NODE *next; };
main()
{ struct NODE *p,*q,*r;
p=(struct NODE*)malloc(sizeof(struct NODE));
q=(struct NODE*)malloc(sizeof(struct NODE));
r=(struct NODE*)malloc(sizeof(struct NODE));
p->num=10; q->num=20; r->num=30;
p->next=q;q->next=r;
printf("%d\n ",p->num+q->next->num);
}
程序运行后的输出结果是
A.10
B.20
C.30
D.40
第3题:
有以下程序段
typedef struct node { int data; struct node *next; } *NODE;
NODE p;
以下叙述正确的是
A)p 是指向 struct node 结构变量的指针的指针
B)NODE p ;语句出错
C)p 是指向 struct node 结构变量的指针
D)p 是 struct node 结构变量
第4题:
以下程序运行后的输出结果是【 】。
struct NODE
{int num;struct NODE *next;
};
main()
{struct NODE s[3]={{1,'\0'},{2,'\0'},{3,'0'}},*p,*q,*r;
int sum=0;
s[0].next=s+1;s[1].next=s+2;s[2].next=s;
p=s; q=p->next; r=q->next;
sum+=q->next->num; sum+=r->next->next->num;
printf("%d\n",sum);
}
第5题:
有以下程序段: typedef struct NODE {int num; struct NODE *next; }OLD; 以下叙述中正确的是 ______。
A.以上的说明形式非法
B.NODE是一个结构体类型
C.OLD是一一个结构体类型
D.OLD是一个结构体变量
第6题:
以下程序的功能是:建立一个带布头结点的单向链表,并将存储在数组中的字符依次存储到链表的各个结点中,请从与下划线处号码对应的一组选项中选择出正确的选项
#include <stdlib.h>
struct node
{char data; struct node *next;};
(48) CreatList(char*s),
{struct node *h,*p,*q;
h=(struct node*)malloc(sizeof(struct node));
p=q=h;
while(*s!="\0")
{ p=(struct node*)malloc(sizeof(struct node));
p->data= (49) ;
q->next=p;
q= (50) ;
s++;
}
p->next="\0";
return h;
}
main()
{ char str[]="link list";
struct node*head;
head=CreatList(str);
…
}
(1)
A.char*
B.struct node
C.struct node*
D.char
第7题:
有以下程序:
#inClude <stdlib.h>
struct NODE{
int num;
struct NODE *next;
};
main()
{ Struct N00E *p,*q,*r;
int sum;0;
p=(struct NODE *)malloc(sizeof(struct NODE));
q=(struct NODE *)malloc(sizeof(struct NODE));
r=(struct NODE *)malloc(Sizeof(struct NODE));
p->num=1;q->num=2;r->num=3;
p->next=q;q->next=r;r->next=NULL;
sum+=q->next->num;sum+=p->num;
printf("%d\n",sum);
}
执行后的输出结果是
A.3
B.4
C.5
D.6
第8题:
函数 main() 的功能是 : 在带头结点的单链表中查找数据域中值最小的结点 . 请填空
#include <stdio.h>
struct node
{ int data;
struct node *next;
};
int min(struct node *first)/* 指针 first 为链表头指针 */
{ strct node *p; int m;
p=first->next; m=p->data;p=p->next;
for(;p!=NULL;p= _[20]_______ )
if(p->data<m) m=p->data;
return m;
}
第9题:
有以下程序:
#include <stdio.h>
#include <stdlib.h>
struct NODE
{ int num;
struct NODE *next;
};
main()
{ struet NODE *p,*q,*r;
int sum=0;
p=(struct NODE *) malloc(sizeof(struct NODE));
q=(struct NODE *) malloc(sizeof(struet NODE));
r=(struct NODE *) malloc(sizeof(struct NODE));
P- >num=1;q- >num=2;r->num=3;
p- >next=q;q- >next=r;r- >next=NULL;
sum + =q- >next- >num;sum + =P- >num;
printf("%d\n",sum);
}
执行后的输出结果是( )
A.3
B.4
C.5
D.6
第10题:
以下程序把三个NODEIYPE型的变量链接成—个简单的链表,并在while循环中输出链表结点数据域中的数据。请填空。
include<stdio.h>
struct node
{ int data;struct node*next;);
typedef struct node NODETYPE;
main()
{ NODETYPEa,b,c,*h,*p;
a.data=10;b.data=20;c.data=30;h=&a;
anext=&b;b.next=&c;c,next='\0';
p=h;
while(p){printf("%d,",p->data):【 】;}
printf("\n");
}