编写一个程序实现strcat函数的功能

写自己的strcat函数------→mycat

 1 #include <stdio.h>
 2 #include <string.h>
 3 #define N 5
 4
 5 char *mycat(char *s1, char *s2)
 6 {
 7     //数组型
 8 /*    int i = 0;
 9     while(s1[i] != ‘\0‘) {
10         i++;
11     }
12     int j = 0;
13     while(s2[j] != ‘\0‘) {
14         s1[i] = s2[j];
15         i++;
16         j++;
17     }
18     s1[i] = ‘\0‘;
19
20     return s1;   */
21     //指针型
22     char *p = s1;            //定义字符型指针p指向s1
23     while(*s1 != ‘\0‘) {     //让s1指向‘\0‘
24         s1++;
25     }
26     while(*s2 != ‘\0‘) {     //让s2连在s1后
27         *s1 = *s2;
28         s1++;
29         s2++;
30     }
31     *s1 = ‘\0‘;              //让s1以‘\0‘结尾
32
33     return p;
34
35 }
36
37 int main()
38 {
39     char s1[N];
40     char s2[N];
41     fgets(s1, N, stdin);
42     if(s1[strlen(s1) - 1] == ‘\n‘) {      // 去掉换行符
43         s1[strlen(s1) - 1] = ‘\0‘;
44     }
45     fflush(stdin);                        //因为上面使用了fgets,这里得清空缓冲区(具体请看gets和fgets函数的区别)
46     fgets(s2, N, stdin);
47     if(s2[strlen(s2) - 1] == ‘\n‘) {      // 去掉换行符
48         s2[strlen(s2) - 1] = ‘\0‘;
49     }
50     printf("%s", mycat(s1, s2));
51 //    printf("%s\n%s", s1, s2);
52
53     return 0;

编写一个程序实现strcat函数的功能,布布扣,bubuko.com

时间: 2024-10-11 13:19:24

编写一个程序实现strcat函数的功能的相关文章

编写一个程序实现strcmp函数的功能

写自己的strcat函数------→mycmp 1 #include <stdio.h> 2 #include <string.h> 3 #define N 5 4 5 int mycmp(char *s1, char *s2) 6 { 7 //数组型 8 /* int i = 0; 9 while(s1[i] == s2[i] && s1[i] != '\0') { 10 i++; 11 } 12 13 return s1[i] - s2[i]; */ 14 /

编写一个程序实现strcpy函数的功能

1 #include <stdio.h> 2 #include <string.h> 3 #define N 5 4 5 6 char *mycpy(char *s1, char *s2) 7 { 8 //数组型 9 /* int i; 10 while(s2[i] != '\0') { 11 s1[i] = s2[i]; 12 i++; 13 } 14 s1[i] = '\0'; 15 return s1; */ 16 //指针型 17 char *p = s1; 18 whil

编写一个程序,实现&quot;全部替换&quot;功能.

# 编写一个程序,实现"全部替换"功能. def file_replace():    file_name = input("请输入文件名:")    # 判断输入的路径或文件是否存在    try:        f_read = open(file_name)    except:        print("路径或文件不存在,请重新输入.")        return file_replace()  # 如果出错,则重新返回调用函数 re

c语言:编写一个输出链表的函数print

编写一个输出链表的函数print. 解:程序: #include<stdio.h> #include<stdlib.h> #define LEN sizeof(struct Student) struct Student { long num; float score; struct Student *next; }; int n; struct Student *creat()//建立链表的函数 { struct Student *head; struct Student *p1

《编写一个程序,从一个文件中读出字符串,并显示在屏幕上》

注意:在程序的第11行用fgets函数读入字符串时,指定一次读入10个字符,但按fgets函数的规定, 如果遇到“\n”就结束字符串输入,“\n”作为最后一个字符也读入到字符数组中 //编写一个程序,从f:\\FILE_1\\file_2.txt中读回字符串 #include<stdio.h>#include<string.h>#include<stdlib.h>int main(){ FILE *fp; char str[3][10]; int i=0; if((fp

编写一个程序把较长的输入行“折”成短一些的两行或多行

/*******************************************编写一个程序把较长的输入行"折"成短一些的两行或多行,折行的位置在输入行的第n列之前的最后一个非空格符之后.要保证程序能够智能地处理输入行很长以及在指定的列前没有空格或制表符的情况.*************************************************/#include <stdio.h>#define MAXCOL 10#define TABINC 8cha

用python + hadoop streaming 编写分布式程序(三) -- 自定义功能

又是期末又是实训TA的事耽搁了好久……先把写好的放上博客吧 前文: 用python + hadoop streaming 编写分布式程序(一) -- 原理介绍,样例程序与本地调试 用python + hadoop streaming 编写分布式程序(二) -- 在集群上运行与监控 使用额外的文件 假如你跑的job除了输入以外还需要一些额外的文件(side data),有两种选择: 大文件 所谓的大文件就是大小大于设置的local.cache.size的文件,默认是10GB.这个时候可以用-fil

面试题之java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要求不能出现截半的情况

题目:10. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”. 一.需要分析 1.输入为一个字符串和字节数,输出为按字节截取的字符串-------------->按照字节[byte]截取操作字符串,先将String转换成byte类型 .2.汉字不可以截半----------------------------------

编写一个程序找出100~999之间所有的水仙花数

如果一个3位数等于其各位的立方和,称该数为水仙花数. 如,所以407是一个水仙花数,编写一个程序找出100~999之间所有的水仙花数. 1 #include<stdio.h> 2 #include<stdlib.h> 3 //判断水仙花数,是则返回1 4 int isNarcissus(int n); 5 6 int main() 7 { 8 int i; 9 for(i = 100; i < 1000; i++) 10 if(isNarcissus(i)) 11 print