您的位置:首页 > 其它

输入边长n 输出n边长实心菱形 和n边长空心菱形

2015-07-07 21:11 411 查看
虽然用用的foundation框架,但是语言是c,用studio.h头文件也可以运行.
理论就是把菱形的四个象限的公式计算出来了,通过||来显示边.

#import <Foundation/Foundation.h>
int main(int argc,
const char * argv[]) {

//
用户输入边长

int n = 0;

int zongchang = 0;

//
菱形所在矩形的总边长

printf("请输入边长n:");

scanf("%d",&n);
zongchang = ((n*2)-1);

// printf("%d",zongchang);

//
矩形的高

for (int i = 1; i <= zongchang;i++) {

// 矩形的宽

if(i <= (n-1)){

// 矩形上半部

for(int j = 1;j <= zongchang ; j++){

if (j == i+(n-1) || j == (n+1)-i) {

printf("*");
}else{

printf(" ");
}
}
}else{

// 矩形下半部

for (int k = 1; k <= zongchang; k++) {

if (k == i-(n-1) || k== (zongchang+n) - i) {

printf("*");

}else{

printf(" ");
}

}

}

printf("\n");
}

for (int i = 1; i <= zongchang;i++) {

// 矩形的宽

if(i <= (n-1)){

// 矩形上半部

for(int j = 1;j <= zongchang ; j++){

if (j >= i+(n-1) || j <= (n+1)-i) {

printf(" ");
}else{

printf("*");
}
}
}else{

// 矩形下半部

for (int k = 1; k <= zongchang; k++) {

if (k <= i-(n-1) || k >= (zongchang+n) - i) {

printf(" ");

}else{

printf("*");
}

}

}

printf("\n");
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: