( )会计信息系统的初级阶段,国外称这一时期的系统为电子数据处理会计(Electronic Data Procession Accounting, EDPA),从20世纪50年代延续到20世纪60年代末。
若有以下定义: struct node { int data; struct node *next; } *p,*q,*t; 指针p、t和q分别指向图中所示结点: p t q ↓ ↓ ↓ ┌──┬──┐ ┌──┬──┐ ┌──┬──┐ │data│next┼→│data│next┼→│data│next┼→... └──┴──┘ └──┴──┘ └──┴──┘ 现要将t和q所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是( )
若按如下定义,函数link的功能是( )。其中head指向链表首结点,整个链表结构如下图: ┌──┬─┐ ┌──┬─┐ ┌──┬──┐ head →│data│ ┼→│data│ ┼→…→│data│NULL│ └──┴─┘ └──┴─┘ └──┴──┘ struct node {int data; struct node *next; }; void link(struct node* head) {struct node *p=head; while(p!=NULL) { if(p->data%2==1) printf("%d ",p->data); p=p->next; } }
( )会计信息系统的初级阶段,国外称这一时期的系统为电子数据处理会计(Electronic Data Procession Accounting, EDPA),从20世纪50年代延续到20世纪60年代末。
设顺序表L是一个递增有序表,类型定义如下:#define ListSize 200typedef int DataType;typedef struct {DataType data[ListSize];iInt length;}SeqList;试写一算法将x插入L中使L仍是一个有序表。
阅读下面算法。说明该算法的功能。Typedef char DataType;typedef struct node{DataType data;struct node *next;}ListNode;typedef ListNode *Linklist;Linklist what(Linklist h){/*h是无头结点的单链表的头指针*/{if(h&&h->next){q=h;h=h->next;p=h;while(p->next)p=p->next;p->next=q;q->next=NULL;h=q;}return(h);}
若有以下定义: struct node { int data; struct node *next; } struct node *p; 已建立如下图所示的链表: ┌──┬──┐ ┌──┬──┐ ┌──┬──┐ p →│data│next┼→│data│next┼→... →│data│NULL│ └──┴──┘ └──┴──┘ └──┴──┘ 指针p指向第一个结点,能输出链表所有结点的数据成员data的循环语句是( )。
以下程序的输出结果是( )。 #include <stdio.h> #include <stdlib.h> typedef struct node {int data; struct node *next; }Node; Node list[4]={{4,&list[1]},{3,&list[2]},{2,&list[3]},{1,0}}; void output(Node *head) { Node *p=head; while(p!=NULL) { printf("%d ",p->data); p=p->next; } } void main() {output(list); }
若有以下定义: struct node { int data; struct node *next; } struct node *head,*p; 已建立如下图所示的链表: p ↓ ┌──┬──┐ ┌──┬──┐ ┌──┬──┐ head →│data│next┼→│data│next┼→... →│data│NULL│ └──┴──┘ └──┴──┘ └──┴──┘ 能删除指针p所指向结点的程序段是( )。