程序:
#include<stdio.h>
#include<string.h>
int main(void)
{
char arr1[] = "hello, world!";
char arr2[] = "#############";
int left = 0;
//int right = sizeof(arr1) / sizeof(arr1[0]) - 2; // 注意这里是减去 2, 因为字符串最后一个字符是空字符
int right = strlen(arr1) - 1;
while (left <= right)
{
arr2[left] = arr1[left];
arr2[right] = arr1[right];
printf("%s\n", arr2);
left++;
right--;
}
return 0;
}
结果:
h###########!
he#########d!
hel#######ld!
hell#####rld!
hello###orld!
hello,#world!
hello, world!
此时程序是直接输出全部内容的, 可以使其每隔一秒输出一行, 动态显示.
程序:
#include<stdio.h>
#include<string.h>
#include<Windows.h>
int main(void)
{
char arr1[] = "hello, world!";
char arr2[] = "#############";
int left = 0;
//int right = sizeof(arr1) / sizeof(arr1[0]) - 2; // 注意这里是减去 2, 因为字符串最后一个字符是空字符
int right = strlen(arr1) - 1;
while (left <= right)
{
arr2[left] = arr1[left];
arr2[right] = arr1[right];
printf("%s\n", arr2);
Sleep(1000); // 暂停一秒, 数值的单位是毫秒, 需要包含头文件 Windows.h
left++;
right--;
}
return 0;
}
也可以在屏幕上只显示一行打印信息.
程序:
#include<stdio.h>
#include<string.h>
#include<Windows.h>
#include<stdlib.h>
int main(void)
{
char arr1[] = "hello, world!";
char arr2[] = "#############";
int left = 0;
//int right = sizeof(arr1) / sizeof(arr1[0]) - 2; // 注意这里是减去 2, 因为字符串最后一个字符是空字符
int right = strlen(arr1) - 1;
while (left <= right)
{
arr2[left] = arr1[left];
arr2[right] = arr1[right];
printf("%s\n", arr2);
Sleep(1000); // 暂停一秒, 数值的单位是毫秒, 需要包含头文件 Windows.h
system("cls"); // 清空屏幕, clear screen, 需要包含头文件 stdlib.h
left++;
right--;
}
return 0;
}