江苏省计算机二级visual C++ 历年真题及答案
a[i+1]=max; ( 26 ) } } }
void main(void) {
int b[N]={5,1,3,2,9,7,6,8,4};
cout<<‖数组中的数据依次为:‖<<endl; for(int i=0; i<N; i++) cout<<b[i]<<‘\t‘; cout<<endl; fun(b,N);
cout<<‖处理后数组中的数据依次为:‖<<endl; for(i=0; i<N; i++) cout<<b[i]<<‘\t‘; cout<<endl; }
13.下列程序中的函数change(node *pa,int x)的功能是:调整pa指向的链表中结点的 位置。根据参数X的值,使链表中各结点数据域小于X的结点放在链表的前半部,大于等于x
的结点放在链表的后半部,并将X插人这两部分结点之间。
例如,原链表上各结点的数据依次为:3,4,2,1,9,6,5,0,10,6 输入:X=7
经插入新结点后,新链表的各结点数据依次为:3,4,2,1,6,5,0,6,7,9,10 [程序](4分)
#include <iostream.h> struct node{ int data; node *next; };
node *change(node *pa,int x) {
node *pl,*p2,*P,*q; pl=p2=pa;
p=new node; //生成新结点 p->data=x:
while(p2一>data<x && p2一>next!=0){ //找到x应插入的位置 pl=p2;
( 27 ) ; }
if(p2一>next!=0)
p一>next=p2: //插入以X为数据域的结点