1 #include <stdio.h> 2 #include <cstring> 3 int main(){ 4 int i,j,n,m; 5 char str1[100]; 6 char str2[100]; 7 scanf("%s",str1); 8 scanf("%s",str2); 9 n=strlen(str1); 10 m=strlen(str2); 11 str1[0] = 'B'; 12 str1[1] = 'a'; 13 for (i = 7, j = 0; j <m; i++, j++) 14 str1[i] = str2[j]; 15 for (i = n-2, j = 0; j < m-2; i++, j++) 16 str1[i] = '#'; 17 printf("%s\n", str1); 18 return 0; 1 #include <stdio.h> 2 #include <cstring> 3 int main(){ 4 int i,j,n,m; 5 char str1[100]; 6 char str2[100]; 7 scanf("%s",str1); 8 scanf("%s",str2); 9 n=strlen(str1); 10 m=strlen(str2); 11 str1[0] = 'B'; 12 str1[1] = 'a'; 13 for (i = 7, j = 0; j <m; i++, j++) 14 str1[i] = str2[j]; 15 for (i = n-2, j = 0; j < m-2; i++, j++) 16 str1[i] = '#'; 17 printf("%s\n", str1); 18 return 0; 1 #include <stdio.h> 2 #include <cstring> 3 int main(){ 4 int i,j,n,m; 5 char str1[100]; 6 char str2[100]; 7 scanf("%s",str1); 8 scanf("%s",str2); 9 n=strlen(str1); 10 m=strlen(str2); 11 str1[0] = 'B'; 12 str1[1] = 'a'; 13 for (i = 7, j = 0; j <m; i++, j++) 14 str1[i] = str2[j]; 15 for (i = n-2, j = 0; j < m-2; i++, j++) 16 str1[i] = '#'; 17 printf("%s\n", str1); 18 return 0;
时间: 2024-04-08 13:31:40 浏览: 107
C++实现十六进制字符串转换成int整形值的示例
这段代码是一个简单的C语言程序,它接受两个字符串作为输入,并对其中的一个字符串进行处理后输出。
代码的逻辑如下:
1. 在输入部分,通过scanf函数分别读取两个字符串str1和str2。
2. 使用strlen函数获取字符串str1和str2的长度,并将结果分别赋值给n和m。
3. 将str1的第一个字符改为'B',第二个字符改为'a'。
4. 使用循环将字符串str2的内容复制到str1中,具体操作是从第7个位置开始,逐个复制str2中的字符到str1中。这样做会覆盖掉str1后面的部分。
5. 通过循环将字符串str1中从倒数第二个位置开始的部分(除去前两个字符)替换为'#'。
6. 最后通过printf函数输出处理后的字符串str1。
注意:这段代码中有重复出现三次,可能是复制粘贴错误。请确认是否有其他问题或者需要更详细的解释。
阅读全文