打印菱形
写法一:下半部分的循环用i++的方法打印
#include <stdio.h>
int main()
{int line = 0;int i = 0;int j = 0;printf("请输入你要打印的行数\n");scanf("%d", &line);//先打印上部分的三角形for (i = 1; i <= line; i++) //打印上半部分的line行{ //打印每一行的前面的空格for (j = 1; j <= line - i; j++){printf(" ");}//打印每一行空格后面的星号for (j = 1; j <= 2 * i - 1; j++){printf("*");}printf("\n"); //每一行完成后记得要换行}//方法一 通过i++方法打印菱形下半部分for (i = 1; i <= line - 1; i++) // 注意下半部分有 line - 1行{//打印每一行前面的空格for (j = 1; j <= i; j++){printf(" ");}打印每一行空格后面的星号for (j = 1; j <= 2 * (line - i) - 1; j++){printf("*");}printf("\n"); //每一行完成要换行}system("pause");
}
结果:
写法二:打印下菱形下半部分的循环用i–打印
#include <stdio.h>
int main()
{int line = 0;int i = 0;int j = 0;printf("请输入你要打印的行数\n");scanf("%d", &line);//先打印上部分的三角形for (i = 1; i <= line; i++) //打印上半部分的line行{ //打印每一行的前面的空格for (j = 1; j <= line - i; j++){printf(" ");}//打印每一行空格后面的星号for (j = 1; j <= 2 * i - 1; j++){printf("*");}printf("\n"); //每一行完成后记得要换行}//方法二for (i = line - 1; i > 0; i--) // 注意下半部分有 line - 1行{//打印每一行前面的空格for (j = 1; j <= line - i; j++) {printf(" ");}//打印每一行空格后面的星号for (j = 1; j <= 2 * i - 1; j++){printf("*");}printf("\n"); //每一行完成要换行}system("pause");
}
结果: