关于指针有在字符串s1的n位置插入一个字符串s2。
#include<stdio.h>void main()
{
char *p1,s1[20],s2[20],*p2;
int i,j,n;
p1=&s1;/*将s1的首地址赋值给p1*/
printf("qing shu ru ni yao cha ru de wei zhi:");
scanf("%d",&n);/*在字符串s2插入的位置*/
n=n-1;
gets(s1);gets(s2);/*得到s1、s2的值*/
printf("s1=");
for(i=0;i<20;i++) printf("%c",s1[i]);/*输出s1的值*/
printf("\ns2=");
for(i=0;i<20;i++) printf("%c",s2[i]);/*输出s2的值*/
for(i=0;i<20;i++)
{ p2=&s1[i];/*将s1[i]的地址赋给p2*/
if(p2-p1==n) /*判断是否在n位置*/
for(j=0;j<20;j++) printf("%c",s2[j]);
printf("%c",s1[i]);
}
}