2009年c语言试卷

q=p; p=p->next;

} else {

p=p->next; free(q->next); q->next=p; } } p=h;

while (p!=NULL) { printf(\ p=p->next; }

4. 当输入:3 1 2 3 4 5 6 7 8 9 时,下列程序的输出是_______。

#include #define N 10

void mt(int *a,int n) {

int i, j, t;

for (i=0; i

t=*(a+i*N+j); *(a+i*N+j)=*(a+j*N+i); *(a+N*j+i)=t; }

《程序设计基础及实验》课程期末考试试卷, 2010年1月27日 9 / 8

return;

} int main() {

int a[N][N],n,i,j;

scanf(\

for(i=0;i

for(j=0;j

scanf(\ mt(&a[0][0],n);

for(i=0;i

for(j=0;j

printf(\ }

return 0; }

5. 当输入:5 3 2 6 5 8<回车>时,下列程序的输出为_______。#include #include void main()

《程序设计基础及实验》课程期末考试试卷, 2010年1月27日

10 / 8

{

int *p,flag,i,n,s; scanf(\

p= (int*)malloc(n*sizeof(int)); for(i=0;i

s+=*p; break; }

if(i==n) flag = 0 ;

}

printf(\ free(p); }

6. 当输入:100 5 125 18 121 6<回车> 时,下列程序的输出为_______。 #include

《程序设计基础及实验》课程期末考试试卷, 2010年1月27日 11 / 8

char *p = \void fun(int n, int m); void main() {

int n,m,i; for(i=0; i<3; i++){

scanf(\ fun(n, m); printf(\ } }

void fun(int n, int m) {

if(n / m) fun(n/m,m); printf(\}

试题四、程序(段)填空题(每空2分,共20分)

1. 已知一个单向链表h。函数KthBackNode(h,k)查找链表h中倒数第k(k>0)个位置上的结点。若查找成功,返回该结点的data域值,否则返

《程序设计基础及实验》课程期末考试试卷, 2010年1月27日 12 / 8

联系客服:779662525#qq.com(#替换为@)