• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
qyk123
博客园    首页    新随笔    联系   管理    订阅  订阅
C语言实验报告九——指针

题目:

利用指针编写程序

编写程序,将字符串中的第m个字符开始的全部字符复制成另一个字符串。

要求:

在主函数中输入字符串及m的值,并输出复制结果。在被调用函数中完成复制。

分析:

  1. 字符串输入和初始化:

    • 用户输入一个整数 m,表示从字符串 a 的第 m 个位置开始复制。
    • 用户输入一个字符串 b,作为要复制到 a 中的字符串。
    • 字符数组 a 被初始化为 "i am a student"。
  2. copy 函数实现:

    • copy 函数接受三个参数,m 表示从字符串 a 的第 m 个位置开始,a 和 b 分别表示要复制的目标字符串和源字符串。
    • 使用两个循环变量 i 和 j,分别遍历字符串 a 和字符串 b。
    • 从 m - 1 位置开始,将字符串 b 中的字符逐个复制到字符串 a 中。
  3. 输出结果:

    • 输出复制后的字符串 a,包括原有内容和新复制的内容。

代码:

#include<stdio.h>
int main()
{
	void copy(int m, char* a, char* b);
	char a[] = "i am a studant", b[30];
	int m;
	printf("输入m:");
	scanf("%d", &m);
	printf("输入字符串:");
	scanf("%s", b);
	copy(m, a, b);
	printf("%s", a);
}
void copy(int m, char* a, char* b)
{
	int i, j;
	for (i = m - 1, j = 0; b[j] != 0; i++, j++)
	{
		a[i] = b[j];
	}
	a[i] = 0;
}

posted on 2024-02-22 12:12  qiyukun  阅读(28)  评论(0)    收藏  举报  来源
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3