| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1375 人关注过本帖
标题:劳驾各位给指点一下。。感谢
取消只看楼主 加入收藏
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
 问题点数:0 回复次数:6 
劳驾各位给指点一下。。感谢

预想编一个根据输入的行数确定一个菱形。。例如:输入3。。得到
*
* *这样的一个形状。。。
*

我在VC++6.0中总是得不到正确的结果。麻烦各位看看。。

#include<iostream.h>


char main()
{
int n,i,j;
char star[30][30];
cout<<"Input How many lines do you want?(MAX is 30,MIN is 3)"<<endl;
cin>>n;

if(n>=3&&n<=30)
{




if(i=0||n-1)
{


if (j=(n-1)/2)
{
star[i][j]='*';
}
else
{
star[i][j]=' ';
};

}

else if(i=(n-1)/2)
{
//for(j=0;j<n;j++)
if (j=0|(n-1))
{
star[i][j]='*';
}

else
star[i][j]=' ';

}


else{
while(i>=1&&i<(n-1)/2)
{if(j=(n-1)/2+i||(n-1)/2-i)
{
star[i][j]='*';
star[i][j]='*';
}
else
star[i][j]=' ';
};


while(i>(n-1)/2&&i<n-1)
{if(j=(n-1)/2+i||(n-1)/2-i)
{
star[i][j]='*';
star[i][j]='*';
}
else
star[i][j]=' ';

};

};


for(i=0;i<n;i++)
for(j=0;j<n;j++)
cout<<star[i][j]<<endl;

}
else
cout<<"ERROR!Input Again."<<endl;

};

[此贴子已经被作者于2007-8-14 15:22:21编辑过]

搜索更多相关主题的帖子: 劳驾 感谢 
2007-08-14 15:17
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
得分:0 

劳驾各位高手给我说说吧。。
迷惑中!


I Believe I Can Fly
2007-08-14 15:25
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
得分:0 

是这样的,输入“3”,那么会出现的图形是:(输入的行数是:除中线之外上、下两部分的行数)

图片附件: 游客没有浏览图片的权限,请 登录注册


输入“4”的话,则上下各增加一行。如图:

图片附件: 游客没有浏览图片的权限,请 登录注册


以此类推。。

[此贴子已经被作者于2007-8-15 23:20:24编辑过]


I Believe I Can Fly
2007-08-15 23:12
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
得分:0 

请问:7楼的同学。。你程序里的i,j代表什么意思呢?
还想问问,可以用二维数组做吗?


I Believe I Can Fly
2007-08-17 10:01
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
得分:0 


大家来帮我看看。这段程序怎么运行不起来呢?编译通过了。





#include<iostream.h>


char main()
{
int n;
char star[15][15];
cout<<"Input How many lines do you want?(MAX is 14,MIN is1)"<<endl;
cin>>n;

if(n>=0&&n<=14)
{ int i,j;
for(i=0;i<15;i++)

{
{ while((i=0)||(i=n-1)) //在最上、下的顶点。
{
for(j=0;j<15;j++)
{
if(j!=7)
star[i][j]=' ';
else
star[i][j]='*';
}
}
while(i=(n-1)/2) //最左、右的顶点。
{for(j=0;j<15;j++)
if((j!=(7-n))&&(j!=(7+n)))
star[i][j]=' ';
else
star[i][j]='*';
}
while((i<(n-1)/2)&&(i>0)) //上半边的点。
{
for(j=0;j<=7;j++)
{
if((j>=0)&&(j<=7))
{ i=1,j=1;
star[i][7-j]='*';
star[i][7+j]='*';
i++;
j++;
}
else
star[i][j]=' ';
}
}
while((i<n-1)&&(i>(n-1)/2)) //下半边的点。
{for(j=0;j<=7;j++)
{
if((j>=0)&&(j<=7))
{ i=1,j=1;
star[i][7-j]='*';
star[i][7+j]='*';
i++;
j++;
}
else
star[i][j]=' ';
}
}

cout<<star[i][j]<<endl;
}
}
}
else
cout<<"ERROR!Input Again."<<endl;



return 0;

}


I Believe I Can Fly
2007-08-17 10:11
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
得分:0 

恳请高手帮我分析一下上面的代码具体错在哪里了呢?
感谢!!!


I Believe I Can Fly
2007-08-18 09:32
taojingwen
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-5-5
收藏
得分:0 
回复:(aipb2007)回复:(taojingwen)恳请高手帮我...

非常感谢。。。
原来程序可以这么短的。。


I Believe I Can Fly
2007-08-18 19:09
快速回复:劳驾各位给指点一下。。感谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031511 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved