第1题:
有以下程序:
#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
第2题:
有以下程序
#include<stdlib.h>
struct NODE
{ int num;stmct 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题:
有以下程序:
#include<stdlib.h>
struct NODE{
int num;
struct NODE *next;
}
main()
{ struct NODE *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
第4题:
有以下程序:
#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*)mallloc(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
第5题:
有以下程序
#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(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
第6题:
有以下程序
#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
第7题:
有以下程序:
#include <stdlib.h>
struct NODE{
int nurn;
struct NODE *next;
};
main()
{ struct NODE *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题:
执行malloc(sizeof(struct BB))函数调用时,得到的动态存储空间能够保存具有struct BB结构类型的一个对象。()
A对
B错
第9题:
假定要动态分配一个类型为struct Worker的对象,并由r指针指向这个对象,则使用的表达式为()=malloc(sizeof(struct Worker))。
struct Worker* r
略
第10题:
一维数组定义语句intn=10,a[n];则()
第11题:
对
错
第12题:
第13题:
有以下程序:
#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
第14题:
设有结构体类型定义: struct try { int one; float two; }*str;若要动态开辟一个结构单元,使指针str指向其首地址,正确的语句是______。
A.str=(try*)malloc(sizeof(try));
B.*str=(struct try*)malloc(sizeof(struct try));
C.str=(strucy try*)malloc(sizeof(struct try));
D.str=(struc try)malloc(sizeof(struct try));
第15题:
有以下程序
#include <stdlib.h>
struct NODE{
int num;
struct NODE *next;};
main( )
{ struct NODE *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
第16题:
有以下程序
#include <stdlib.h>
gtruet 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(sizeef (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.50
第17题:
有以下程序:
#include<stdlib.h>
struct NODE
{ int num;stmct 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
第18题:
有以下程序
#inGlude<stdlib.h>
struct NODE {
int num;
struct NODE *next;
}
main()
{ struct NODE *p,*q,*r;
int sum=0;
p=(struct NODE*)malloc(sizeof(struct NODE));
q=(struct NODE*)malloc(sizeof(struct NODE));
r=(stnlct 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
第19题:
下面程序的功能是建立一个有 3 个 结 点的单向循环链表,然后求各个 结 点数值域 data 中数据的和。请填空。

include <stdio.h>
include <stdlib.h>
struct NODE{ int data;
struct NODE *next;
};
main()
{ struct NODE *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->data=100; q->data=200; r->data=200;
p-> next =q; q-> next =r; r-> next =p;
sum=p->data+p->next->data+r->next->next 【 19 】 ;
printf("%d\n",sum);
}
第20题:
假定要动态分配一个类型为struct Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句表达式为()=malloc(n*sizeof(struct Worker))。
struct Worker*r
略
第21题:
假定AB为一个类,则执行 “AB *px=new AB[n];”语句时将()
第22题:
动态分配一个数组
动态分配一个对象
静态分配一个数组
静态分配一个对象
第23题:
for(i=0; i<10; i++) fwrite(x,sizeof(struct st), 1,fp);
fwrite(x,10*sizeof(struct st), 1,fp);
fwrite(x,sizeof(struct st), 10,fp);
for(i=0; i<10; i++) fwrite(&x[i],sizeof(struct st), 1,fp);