当前位置:首页 » 编程语言 » c语言字符函数参数

c语言字符函数参数

发布时间: 2023-09-08 23:58:22

‘壹’ 用c语言怎么写个 字符串插入函数

程序的大体思路可以是这样:
str1是原字符串,str2是待插入的字符串,position是待插入的位置,我们可以这样,用一个指针p_cur指向字符串1 str1中的待插入位置position,另一个指针p_end指向字符串1 str1的尾部,每次插入字符前,把str1中从当前位置开始一直到结束字符全部后移一个位置,空出当前位置,然后把要插入的字符放进这个位置,这样就完成了一个字符的插入,重复这个步骤,直到str2被完全插入。
代码如下:
#include <stdio.h>
#include <string.h>
void insert_str(char str1[],char str2[],int position)
{
/*
insert_str()函数
功能:将字符串str2插入到str1的position位置处
参数:char str1,char str2 ,int position
返回值:无
*/
int i;
char *p_end,*p_cur,*p;/*p_end指向第一个字符串的尾部,p_cur指向被插入的位置*/
p_end=str1+strlen(str1)-1;
p_cur=str1+position-1;
for(i=0;str2[i]!='\0';i++)
{
for(p=p_end;p>=p_cur;p--)
{
*(p+1)=*p;/*从p_cur到p_end的全部元素后移一个位置,此时p_cur指向的位置就空出来了*/
}
*p_cur=str2[i];/*把字符串2中的字符插入空出来的位置*/
p_cur++;/*p_cur下移一个位置*/
p_end++;/*多了一个字符,因此p_end也下移一个位置*/
}
}

void main()
{
char s1[100],s2[20];
int position;
printf("输入字符串1:\n");
gets(s1);
printf("输入插入位置:");
do
{
scanf("%d",&position);
while(getchar()!='\n');/*这一句可以把输入position的时候输入的回车去掉*/
}while(position<0||position>strlen(s1));
printf("输入字符串2:\n");
gets(s2);
insert_str(s1,s2,position);
printf("字符串被插入后变成:\n");
puts(s1);
}

‘贰’ c语言字符长度函数

正确的答案是5,题目选项有误。

首先strlen()函数返回的长度是不包含'',

第一个字符为:a

第二个字符为:b

第三个字符为: (换行符)

第四个字符为:2

第五个字符为: (\转义为)

所以答案为5。

(下图为实际代码演示)

扩展内容:

strlen()函数(C语言函数):

strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符''为止,然后返回计数器值(长度不包含'')。

‘叁’ c语言字符长度函数

C语言中字符串长度的函数是strlen(),一个字符的长度为1;
函数原型:
unsigned int strlen (char *s);
头文件:
#include <string.h>
参数说明:s为指定的字符串;
功能说明:strlen()用来计算指定的字符串s
的长度,不包括结束字符'\0';
返回值:返回字符串s
的字符数;
注意:strlen()
函数计算的是字符串的实际长度,遇到第一个'\0'结束。
示例:
#include<stdio.h>
#include<string.h>
int main()
{
char str[] = "ab\nxyz";//\n为回车字符,占一个字节
printf("strlen(str)=%d\n", strlen(str));
return 0;
}
//输出结果:strlen(str)=6

‘肆’ C语言中如何将二维字符数组作为函数参数引用传递

不可能达到目的。因为C语言中没有引用这类型,C++才有。另,C/C++都不支持传递数组,只能传递数组的首元素或行指针,所以即使是C++,也只能传递数组指针的引用,而不可能传递数组的引用,因为数组没有引用。

热点内容
滑板鞋脚本视频 发布:2025-02-02 09:48:54 浏览:432
群晖怎么玩安卓模拟器 发布:2025-02-02 09:45:23 浏览:557
三星安卓12彩蛋怎么玩 发布:2025-02-02 09:44:39 浏览:743
电脑显示连接服务器错误 发布:2025-02-02 09:24:10 浏览:537
瑞芯微开发板编译 发布:2025-02-02 09:22:54 浏览:146
linux虚拟机用gcc编译时显示错误 发布:2025-02-02 09:14:01 浏览:235
java驼峰 发布:2025-02-02 09:13:26 浏览:651
魔兽脚本怎么用 发布:2025-02-02 09:10:28 浏览:538
linuxadobe 发布:2025-02-02 09:09:43 浏览:212
sql2000数据库连接 发布:2025-02-02 09:09:43 浏览:726