/************************************************************************/
/*绘制
*
* *
* *
* *
* *
* *
#include "iostream"
#include "assert.h"
using namespace std;
//菱形的对角线
void print_x(int n){
assert(n!=0);
if(0==(n%2))n--;//取n奇数
int i=0;
int j=0;
for(i=0; i<n; i++){
if(i<=n/2){
for(j=0; j<n; j++){
if((j==n/2-i) || (j==n/2+i)){
cout<<"*";
}else{
cout<<" ";
}
}
cout<<endl;
}else{
for(j=0; j<n; j++){
if((j==i-n/2) || (j==n-1-(i-n/2))){
cout<<"*";
}else{
cout<<" ";
}
}
cout<<endl;
}
}
}
int main(){
print_x(7);
return 0;
}
/*绘制
*
* *
* *
* *
* *
* *
* */
当场写,太紧张,大脑一片浆糊,虽然写出来了,但太繁,被鄙视了!全是泪啊。求工作!!!
出面试门时,想到了该简单方法,记录下来,引以为戒!
#include "iostream"
#include "assert.h"
using namespace std;
//菱形的对角线
void print_x(int n){
assert(n!=0);
if(0==(n%2))n--;//取n奇数
int i=0;
int j=0;
for(i=0; i<n; i++){
if(i<=n/2){
for(j=0; j<n; j++){
if((j==n/2-i) || (j==n/2+i)){
cout<<"*";
}else{
cout<<" ";
}
}
cout<<endl;
}else{
for(j=0; j<n; j++){
if((j==i-n/2) || (j==n-1-(i-n/2))){
cout<<"*";
}else{
cout<<" ";
}
}
cout<<endl;
}
}
}
int main(){
print_x(7);
return 0;
}