回复 楼主 御坂美琴
提示: 作者被禁止或删除 内容自动屏蔽
#include <stdio.h> #define IABS(x) ( (x) >= 0 ? (x) : -(x) ) //定义一个计算绝对值的宏 void print(int size) // size是这个菱形的半径,直径会是size * 2 + 1 { int x, y; for (y = -size; y <= size; y++) { for (x = -size; x <= size; x++) { if ( IABS(x) == IABS(y)) //x和y各自的绝对值的和,即 |x| + |y| <= size putchar('*'); else putchar(' '); } putchar('\n'); } } int main() { print(3); //输出一个半径为5的菱形 getchar(); return 0; }
#include <stdio.h> void print(int size) { int x, y; for(y=0;y<size;putchar('\n'),y++) for(x=0;x<size;x++) { if(x==y||x+y==size-1) putchar('*'); else putchar(' '); } } int main() { print(6); //输出一个半径为5的菱形 getchar(); return 0; }