输入以回车键结束的字符串(少于20个字符)到字符组s1,将s1的全部字符(到'\0'为止,包括'\0')复制到字符组s2中禁用strcpy函数
用getchar接收字符就可以
#include <stdio.h>
int main()
{
char s1[100],s2[100],c;
int i=0;
while((c=getchar()) != '\n')
s1[i++] = c;
s1[i] = 0;
i=0;
do
{
s2[i] = s1[i];
}while(s2[i++] != '\0');
printf("%s",s2);
}
#include <iostream>
using namespace std;
int main() {
char s1[20], s2[20];
int i;
cout << "请输入一个不超过20个字符的字符串:" << endl;
cin >> s1;
// 将s1的字符逐一复制到s2中
for (i = 0; s1[i] != '\0'; i++) {
s2[i] = s1[i];
}
s2[i] = '\0'; // 在s2的结尾加上'\0'
cout << "复制后的字符串s2为:" << s2 << endl;
return 0;
}
如果对您有所帮助,望采纳。
1 #include<stdio.h>
2 #include<string.h>
3
4 int main(void)
5 {
6 char s1[80], s2[80];
7 int i;
8 fgets(s1, 80, stdin);
9 if ( strlen(s1) != sizeof(s1) - 1)
10 s1[strlen(s1) - 1] = '\0';
11 for (i = 0; i < strlen(s1)+1; i++)
12 s2[i] = s1[i];
13 printf("%s\n", s2);
14 return 0;
15 }