使用标准C语言,将字符数组s2中的全部字符复制到在字符数组s1中。

[复制链接]
查看11 | 回复4 | 2010-6-14 02:55:37 | 显示全部楼层 |阅读模式
不可以使用strcpy函数,复制完成后将s1的内容输出到屏幕上。要求先写出设计思路,然后再完成代码,代码可以在你选定的环境中编译、执行,写出执行结果。
请高手自己讲解一下,越详细越好,谢谢

回复

使用道具 举报

千问 | 2010-6-14 02:55:37 | 显示全部楼层
设计思路:1、定义2个大小相等的字符数组s1[N]和s2[N]2、提示输入字符数组s2,输入字符数组s23、统计字符串s2的长度k4、将字符数组s2的下标为0到k的元素赋值给s15、输出字符数组s1程序:#include#define N 100void main(){ char s1[N],s2[N]; int i,k=0; printf("输入字符数组s2\n"); scanf("%s",s2);for(i=0;s2!='\0';i++)k++;
for(i=0;ivoid main(){char a[10],b[10];char *p,*q;p=a;/*将a首地址赋给p*/prin
回复

使用道具 举报

千问 | 2010-6-14 02:55:37 | 显示全部楼层
可以把字符数组s2的每一个字符一个一个的复制到s1对应的位置上#include"stdio.h"#include"string.h"main(){ char s1[100],s2[100]; int a,i; gets(s2); a=strlen(s2); for(i=0;i<a;i++) {s1=s2;
回复

使用道具 举报

千问 | 2010-6-14 02:55:37 | 显示全部楼层
void copyString(char* s1,char* s2){ if(s1==NULL || s2==NULL)//判断两个字符串是否为空
return;
while ((*s2++ = *s1++)!='\0'); //复制,直到\0结束
printf("%s",s1);//输出s1到屏幕
回复

使用道具 举报

千问 | 2010-6-14 02:55:37 | 显示全部楼层
void main(){ char s1[80],s2[40]; int x=0,y=0; scanf("%s",s1); scanf("%s",s2); while(s1[x]!='\0')x++; while(s2[y]!='\0') {s1[x]=s2[y];x++;y++; }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行