用C语言打印菱形的技巧粗解
2017-07-11 17:18
411 查看
#include
int main(int argc, const char *
argv[]) {
int num = 0;
printf("请输入您希望看到的菱形边的星星数:\n");
scanf("%d",&num);
int num1 = num;
int nu
4000
m2 = num;
int number1 = num;
int number2 = num;
//实心菱形
for (int i = 0;
i < num; i++) { //实心菱形的上半部分,共用户输入的数字num行
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) { //控制行输出,每一行都有2*num+1个“格子”
if (j>=num1 && j <= num2) { //在num1和num2之间的“格子”全部用*打印出来
printf("*");
}else{ //不在num1和num2之间的“格子”用空格代替
printf(" ");
}
}
printf("\n");
num1--; //调整num1和num2的值,使之呈每一步都相互远离一个“格子”的形式
num2++;
}
num1+=2; //调整num1和num2的值,为打印菱形的下半部分做准备
num2-=2;
for (int i = 0;
i < num-1; i++) { //打印菱形的下半部分
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) { //每一行都有2*num+1个“格子”
if (j>=num1 && j <= num2) { //在num1和num2之间的“格子”全部用*打印出来
printf("*");
}else{ //不在num1和num2之间的“格子”用空格代替
printf(" ");
}
}
printf("\n");
num1++; //调整number1和number2的值,使之在每一次循环中都呈现相互各靠近一个“格子”的形式
num2--;
}
printf("\n\n");
//在实心菱形打印完成后隔两行开始打印空心菱形
//空心菱形
for (int i = 0;
i < num; i++) { //打印空心菱形的上半部分
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) { //控制行输出,把每行看成2*num+1个格子组成
if (j==number1 || j == number2) { //把number1和number2代表的“格子”位置用*打印出来
printf("*");
}else{ //不满足要求的“格子”用空格代替
printf(" ");
}
}
printf("\n");
number1--; //调整number1和number2的值,使之在每一次循环中都呈现相互各远离一个“格子”的形式
number2++;
}
number1+=2;
//调整number1和number2的数值,为打印缩小部分做准备
number2-=2;
for (int i = 0;
i < num-1; i++) { //打印菱形的下半部分
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) {
if (j==number1 || j == number2) { //把number1和number2代表的“格子”位置用*打印出来
printf("*");
}else{ //不满足要求的“格子”用空格代替
printf(" ");
}
}
printf("\n");
number1++; //调整number1和number2的值,使之呈每一步都相互靠近各一个“格子”的形式
number2--;
}
return 0;
}
int main(int argc, const char *
argv[]) {
int num = 0;
printf("请输入您希望看到的菱形边的星星数:\n");
scanf("%d",&num);
int num1 = num;
int nu
4000
m2 = num;
int number1 = num;
int number2 = num;
//实心菱形
for (int i = 0;
i < num; i++) { //实心菱形的上半部分,共用户输入的数字num行
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) { //控制行输出,每一行都有2*num+1个“格子”
if (j>=num1 && j <= num2) { //在num1和num2之间的“格子”全部用*打印出来
printf("*");
}else{ //不在num1和num2之间的“格子”用空格代替
printf(" ");
}
}
printf("\n");
num1--; //调整num1和num2的值,使之呈每一步都相互远离一个“格子”的形式
num2++;
}
num1+=2; //调整num1和num2的值,为打印菱形的下半部分做准备
num2-=2;
for (int i = 0;
i < num-1; i++) { //打印菱形的下半部分
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) { //每一行都有2*num+1个“格子”
if (j>=num1 && j <= num2) { //在num1和num2之间的“格子”全部用*打印出来
printf("*");
}else{ //不在num1和num2之间的“格子”用空格代替
printf(" ");
}
}
printf("\n");
num1++; //调整number1和number2的值,使之在每一次循环中都呈现相互各靠近一个“格子”的形式
num2--;
}
printf("\n\n");
//在实心菱形打印完成后隔两行开始打印空心菱形
//空心菱形
for (int i = 0;
i < num; i++) { //打印空心菱形的上半部分
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) { //控制行输出,把每行看成2*num+1个格子组成
if (j==number1 || j == number2) { //把number1和number2代表的“格子”位置用*打印出来
printf("*");
}else{ //不满足要求的“格子”用空格代替
printf(" ");
}
}
printf("\n");
number1--; //调整number1和number2的值,使之在每一次循环中都呈现相互各远离一个“格子”的形式
number2++;
}
number1+=2;
//调整number1和number2的数值,为打印缩小部分做准备
number2-=2;
for (int i = 0;
i < num-1; i++) { //打印菱形的下半部分
for (int j = 0;
j<<span style="font-variant-ligatures: no-common-ligatures; color: #272ad8">2*num+1; j++) {
if (j==number1 || j == number2) { //把number1和number2代表的“格子”位置用*打印出来
printf("*");
}else{ //不满足要求的“格子”用空格代替
printf(" ");
}
}
printf("\n");
number1++; //调整number1和number2的值,使之呈每一步都相互靠近各一个“格子”的形式
number2--;
}
return 0;
}
相关文章推荐
- C语言空心菱形 *号打印图形
- 用c语言在屏幕上打印出一个菱形
- C语言实验——打印菱形 (sdut oj)
- 标准c语言调试技巧,打印调试信息技巧
- 打印一个菱形(C语言)
- C语言实验——打印菱形
- C语言_打印菱形(2)
- 用C语言实现打印菱形
- C语言实验——打印菱形
- C语言实现用星号在屏幕上打印菱形
- C语言 空心菱形打印
- 用C语言打印一个菱形
- 使用C语言打印出一个菱形
- C语言实验——打印菱形
- C语言实验——打印菱形
- 7_22|C语言| 另一种方法打印菱形
- C语言打印菱形的几种方法
- C语言实现打印各种菱形
- C语言——实例023 打印菱形
- Linux 程序开发打印 Debug 信息的使用技巧--C语言中几种输出调试信息的方法