2_9_4.C
上传用户:wyn840322
上传日期:2007-01-13
资源大小:294k
文件大小:2k
- /* ======================================== */
- /* 程式实例: 2_9_4.c */
- /* 插入某长度字串 */
- /* ======================================== */
- /* ---------------------------------------- */
- /* 计算字串长度 */
- /* ---------------------------------------- */
- int strlen(char *str)
- {
- int i;
- for ( i = 0; str[i] != ' '; i++ ); /* 用回路计算长度 */
- return i;
- }
- /* ---------------------------------------- */
- /* 插入字串 */
- /* ---------------------------------------- */
- char *strins(char *str1,char *str2,int pos)
- {
- int s_len; /* 字串str1之长度 */
- int d_len; /* 字串str1之长度 */
- int i,j;
- pos --; /* 计算字串的开始 */
- s_len = strlen(str1); /* 计算字串长度 */
- d_len = strlen(str2);
- for ( i = s_len + 1; i >= pos; i-- ) /* 空出str2的空间 */
- str1[i+d_len] = str1[i];
- /* 用回路填入str2至字串str1 */
- for ( j = pos; str2[j-pos] != ' '; j++ )
- str1[j] = str2[j-pos];
- return str1;
- }
- /* ---------------------------------------- */
- /* 主程式: 插入字串於某位置 */
- /* ---------------------------------------- */
- void main()
- {
- char string1[200]; /* 字串阵列1宣告 */
- char string2[100]; /* 字串阵列2宣告 */
- int pos; /* 插入位置 */
- printf("请输入原始字符串 ==> ");
- gets(string1); /* 读取字串1 */
- printf("请输入插入字串 ==> ");
- gets(string2); /* 读取字串2 */
- printf("请输入插入位置 ==> ");
- scanf("%d",&pos); /* 读取位置 */
- strins(string1,string2,pos); /* 插入字串 */
- printf("插入后的字符串是 %s n ",string1);
- }