C语言指针精选习题和答案 下载本文

for(i=0;i

int main() {

int a[10]={2,4,6,8,10,12,14,16,18,20}; method(4,5,a); for(int i=0;i<10;i++) {

cout<

9.3有一字符串,包含n个字符。写一个函数,将此字符串从第m个字符开始的全部字符复制成为另一个字符串并输出

void strcpyn(char *s,char *t, int n) {

char *p=s+n;

.. ..

char *q=t; while(*p) { *q=*p; q++; p++; } *q='\\0'; } main() {

char s[100]={0}; char t[100]={0}; int n=0;

printf(\ scanf(\

printf(\ scanf(\ strcpyn(s,t,n); puts(t); }

.. ..

-

实验10

1. 设计函数char *insert(s1,s2,n),用指针实现在字符串s1中的指定位置n处插入

字符串s2

#include

char* insert(char* s1,char* s2,int n) { int j=0;

char* ss=new char[100]; char* tsptr=ss;

for(int i=0;i

*ss++=*s1++; } *ss='\\0'; return tsptr;

.. ..

}

void main() {

char s1[]=\ char s2[]=\

char* ss=insert(s1,s2,4); printf(\}

2. 利用指针完成字符串复制函数char *strcpy(char *s1,char *s2) #include \

char* fun(char *s1,char *s2) {char *p=s2; while((*s1)!='\\0') { *s2=*s1; s1++,s2++; } return p; }

void main(void) {

char *p,*strcpy;

.. ..

char *s1=\ char *s2=\ printf(\ p=fun(s1,s2);

printf(\}

实验9

1. 编写一个使用指针的c函数,交换数组a和数组b中的对应元素

#include #include

void ex(int *a, int *b, int n){ int i,tmp; for (i=0;i

tmp=a[i];a[i]=b[i];b[i]=tmp; } }

void main() {

int x[5]={1,2,3,4,5};

.. ..