.任意输入两个字符串到str1和str2中,比较后将较大的字符串存在str1中,将较小的存在str2中。
比较 strcmp + 交换 【用strcpy】
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char str1[100];
char str2[100];
cin>>str1;
cin>>str2;
char t[100];
if (strcmp(str1, str2) < 0)
{
strcpy(t, str1);
strcpy(str1, str2);
strcpy(str2, t);
}
cout<<"str1 = " << str1 << endl;
cout<<"str2 = " << str2 << endl;
return 0;
}
#include <stdio.h>
int main() {
char str1[81], str2[40];
int i = 0, j = 0;
gets_s(str1, 80);
gets_s(str2, 39);
while (str1[i] != '\0')
{
/*第1个空*/i++;
}
while (/*第2个空*/str2[j] != '\0')
{
str1[i] = str2[j];
/*第3个空*/i++;
j++;
}
str1[i] = /*第4个空*/'\0';
puts(str1);
return 0;
}
总结:
1.此题我将gets改为get_s,因为gets属于过时的一个字符串输入函数了,最大的问题就是安全性低,没办法限制输入的个数,容易溢出
2.最后一个空str1[i] = '\0';
这么填的目的是要把之前被替换的结束符给补上。