第3题
struc node {int data; struct node*next; }*P,*q,*r; 现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是()。
A.r一>next=q;q一>next=r->next;p一>next=r;
B.q->next=r->next;p->next=r;r->next=q;
C.p->next=r;q->next=r->next;r->next=P;
D.q->next=r->next;r->next=q;p->next=r;
第5题
A.P是int型变量
B.P是基类型为int的指针变量
C.q是基类型为int的指针变量
D.程序中可用INTEGER代替int类型名
第6题
A.定义一个结构体类型指针变量,可以用于存放同类型结构体变量在内存中的起始地址
B.定义一个结构体类型指针变量,可以存放同一程序中任意结构体类型变量地址
C.在函数的形式参数表中,不能有结构体类型指针变量作为形式参数
D.表示结构体变量的地址时,不需要使用取地址运算符,而是用结构体变量名直接表示
第7题
以下程序通过函数指针p调用函数fun,请在填空栏内,写出定义变量p的语句。 void fun (int*x,int*y) {……} main() { int a=10,b=20; ______;严定义变量p*/ p=fun;p(&a,&b); ……}
第8题
第9题
指针
1.实验目的
①通过实验进一步掌握指针的概念,会定义和使用指针变量。
②能正确使用数组的指针和指向数组的指针变量。
③能正确使用字符串的指针和指向字符串的指针变量。
④能正确使用指向函数的指针变量。
⑤了解指向指针的概念及其使用方法。
2.实验内容
编程序并上机调试运行程序(都要求用指针处理)。
①输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
②有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。
③有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。
④编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数求1/1+1/3+…+1/n(利用指针函数)。
第10题
以下叙述中错误的是
A.函数可以返回地址值
B.改变函数形参的值,不会改变对应实参的值
C.当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL
D.可以给指针变量赋一个整数作为地址值
第11题
A.scanf("%d",&p);
B.printf("%d/n",p);
C.*p=&n;
D.int n,*p=NULL;