多个字符从两段向中间汇聚

本文介绍了一个C语言程序,使用while循环和WindowsAPI函数(Sleep和system)将星号字符串*******************替换为mynameiszhangsan,并在每一步操作后清空控制台输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现有一段“*******************”变成文字“my name is zhangsan”

eg:my****************an   ->m******************n

#include<stdio.h>
#include <string.h>
#include <windows.h>
int main(){
	char arr1[]="my name is zahngsan";
	char arr2[]="*******************";
	int left=0;
	int right=strlen(arr1)-1;
	while(left<=right)
	{
		arr2[left]=arr1[left];
		arr2[right]=arr1[right];
		printf("%s",arr2);
		left++;
		right--;
		printf("\n");
	}
	printf("\n");
return 0;
}

 

为了让代码更好看,我们可以加上sleep函数和system("cls")函数。

Sleep(unsigned long);
其中,Sleep()里面的单位,是以毫秒为单位,所以如果想让函数滞留1秒的话,应该是Sleep(1000);

system("cls")清屏,清除运行框里所有的内容

他们都包含头文件#include <windows.h>

#include<stdio.h>
#include <string.h>
#include <windows.h>
int main(){
	char arr1[]="my name is zhangsan";
	char arr2[]="*******************";
	int left=0;
	int right=strlen(arr1)-1;
	while(left<=right)
	{
		arr2[left]=arr1[left];
		arr2[right]=arr1[right];
		printf("%s",arr2);
		Sleep(1000);      //需要包含头文件#include <windows.h>,在VC2010中‘S’要大写
		system("cls");    清屏,清除运行框里所有的内容
		left++;
		right--;
	}
	printf("%s",arr2);
	printf("\n");
return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值