单项选择题
以下选项中,不能对主函数中变量i和j的值进行交换的程序是______。
A.#include <stdio.h>void swap(int*p,int*q){ int *t;*t=*p; *p=*q; *q=*t;}main(){int i=10,j=20,*a=&i, *b=&j;swap(a,b); printf("i=%d j=%d\n",i,j);}
B.#include <stdio.h>void swap(int *p,int *q){int t;t=*p; *p=*q; *q=t;}main(){int i=10,j=20,*a=&i,*b=&j;swap(a,b); printf("i=%d j=%d\n",i,j);}
C.#include <stdio.h>#include <stdlib.h>void swap(int*p,int*q){int *t;t=(int*)malloc(sizeof(int));*t=*p; *p=*q;*q=*t;free(t);}main(){int i=10,j=20;swap(&i,&j);printf("i=%d j=%d\n",i,j);}
D.#include <stdio.h>void swap( int*p,int*q){ int t;t=*p;*p=*q;*q=t;}main(){int i=10,j=20,*x=&i,*y=&j;swap(x,y); printf("i=%d j=%d\n",i,j);}