在屏幕上输出以下图案(菱形图案):
*
***
*****
*******
*********
***********
*************
***********
*********
*******
*****
***
*
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void Print(char arr1[], char arr2[], char arr3[], int str)
{
int mid = (str >> 1) - 1;
int i = 0;
for (i = 0; i <= mid; i++)
{
arr1[mid + i] = arr2[mid + i];
arr1[mid - i] = arr2[mid - i];
printf("%s\n", arr1);
}
for (i = 0; i <= mid; i++)
{
arr1[i] = arr3[i];
arr1[str - 2 - i] = arr3[str - 2 - i];
printf("%s\n", arr1);
}
}
int main()
{
char arr1[] = " ";
char arr2[] = "*************";
char arr3[] = " ";
int str = sizeof(arr1);
Print(arr1, arr2, arr3, str);
system("pause");
return 0;
}
修正后的程序:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int line = 0;
int i = 0;
scanf("%d", &line);
for(i=0; i<line; i++)
{
int j = 0;
for(j=0; j<line-i-1; j++)
{
printf(" ");
}
for(j=0; j<2*i+1; j++)
{
printf("*");
}
printf("\n");
}
for(i=0; i<line-1; i++)
{
int j = 0;
for(j=0; j<=i; j++)
{
printf(" ");
}
for(j=0; j<(line-1-i)*2-1; j++)
{
printf("*");
}
printf("\n");
}
system("pause");
return 0;
}