循环打印字符

#include<stdio.h>
#include<string.h>
//我们要使用sleep()函数时候
//在mac中需要#incliude<unistd.h>的头文件
//在Windows中使用的是#include<windows.h>
#include<unistd.h>
#include<stdlib.h>

int main()
{
  	//我们希望字符能够从两端到中间这样打印
    // welcome to bit!!!!!!
    // ####################
    // w##################!
    // we################!!
    // wel##############!!!
    // ······
    // welcome t##bit!!!!!!
    // welcome to bit!!!!!!
  
  	//首先定义我们要打印的字符串
  	//实现的方式是从字符串1中拿出字符元素去覆盖字符串2中的字符元素
    char arr1[] = "welcome to bit!!!!!!";
    char arr2[] = "####################";
  	//初始化左下标为0
    int left = 0;
  	//计算右下标,有两种方法
  	//第一种
  	//使用字符串的总长度/字符串单个元素的长度-2,减2的原因是下标是从0开始的,
  	//还有就是我们的sizeof()函数会把最后字符串的结束标志“\n”计算进去
    // int right = sizeof(arr1)/sizeofa(arr1[0]) - 2;
  	//第二种是使用strlen()函数计算字符串的长度,它不会将“\n”计算到里面
    int right = strlen(arr1)-1;
		
  	//循环条件是做下标小于等于右下标
    while (left<=right)
    {
      	//对于每一次循环将数组1中的左右下标元素对应的送到数组2中
        arr2[left] = arr1[left];
        arr2[right] = arr1[right];
      	//每覆盖一次,我们就打印一次
        printf("%s\n", arr2);
        // 休息1秒
        sleep(1);
        // system("cls");//执行系统命令的一个函数--cls--清空屏幕
      	//下标要求左边的往右走,右边的往左走
        left++;
        right--;
    }

    return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值