| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 815 人关注过本帖
标题:帮帮我 改一下下面的程序
只看楼主 加入收藏
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
结帖率:92%
收藏
已结贴  问题点数:0 回复次数:14 
帮帮我 改一下下面的程序
               我想写一个下面图案的程序
                   * * * * * * * * *
                     * * * * * * * * *
                   * * * * * * * * *
                     * * * * * * * * *
                   * * * * * * * * *
                     * * * * * * * * *
程序:
程序代码:
include<iostream>
using namespace std;

char  A[]="********";
int j=0;

int main ()
{ 
    for(int i=0; i<=3; i++)
    {
        while(j>=0 && j<=7)
        { 
            cout<<A[j];
            j++;
        }
        cout<<endl;
          cout<<" ";
         for(int g=0; g<=7; g++)
        {    
            cout<<A[g];
        }
   
    }  
    return 0;
   但是我得出的是 * * * * * * * * *
                    * * * * * * * * *
                    * * * * * * * * *
                    * * * * * * * * *
                    * * * * * * * * *
                    * * * * * * * * *
   希望大家帮我改改程序,不胜感激
搜索更多相关主题的帖子: color 
2011-03-10 22:56
蛐蛐的叫声
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2011-3-10
收藏
得分:0 
在include前难道不需要#?
2011-03-10 23:50
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
#include<iostream>
#include<cstring>
using namespace std;
void main()
{
char  A[]="********";
int i=1;
for(int j=0;j<6;j++)
    {
      if(i%2==0)
       {
       cout<<strcat(" ",A);
       cout<<endl;
        }
       else
        {
       cout<<strcat(A," ");
       cout<<endl;
         }
       i++;
     }
}
      


   唯实惟新 至诚致志
2011-03-11 00:03
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
收藏
得分:0 
回复 2楼 蛐蛐的叫声
要啊。我复制的时候漏了
2011-03-15 21:28
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
收藏
得分:0 
我已经写出来了
程序代码:
#include<iostream>
#include<iomanip>
using namespace std;

char A[]="********";

int main ()
{
    for (int i=1; i<=8; i++)
    {  
        if(i%2!=0)
        {  
            for(int j=0; j<=7; j++)
            {  
                cout<<A[j];
            }
        }
        
        else
        {
            cout<<setw(2);
                for(int f=0; f<=7; f++)
            {  
                cout<<A[f];
            }
        }
      cout<<endl;
    }


    return 0;
}

谢谢大家的回复,一起学习
2011-03-15 21:30
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
我也给种写法:
观察一下就会发现,第一行的第一个字母是 '*',第一行的第二个字母是 ' '。第二行的第一个是 ' '。
总结出规律是:所在行的所在位置是同奇偶的时候是 '*',否则是 ' '。(很难说清,第3行第5个,3和5都是奇数,是'*'。如果是一奇一偶就不是)

程序代码:
#include <iostream>
using namespace std;

int main()
{
    char a[2] = {' ', '*'};
    int i, j;

    for (i = 0; i < 6; i++)
    {
        for (j = 0; j < 18; j++)
            cout << a[ (i&1) == (j&1) ];
        cout << endl;
    }

    return 0;
}

2011-03-15 23:16
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
3楼的程序很有问题。那个 strcat 的调用应该是不合法的。
2011-03-15 23:18
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
strcat 对它的参数是否是常串有要求,strcat(" ", A) 是不行的。因为它在运行过程中要修改第一个串。

2011-03-15 23:19
编程2011
Rank: 2
来 自:湖南
等 级:论坛游民
帖 子:73
专家分:19
注 册:2011-3-3
收藏
得分:0 
回复 6楼 pangding
运行了一下,比我的简单多了,但是挺难懂得,初学的这个是a[ (i&1) == (j&1) ]?


[ 本帖最后由 编程2011 于 2011-3-15 23:29 编辑 ]
2011-03-15 23:27
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:2 
& 是位与运算,听说过吧?
就是拿 i 和 1 位与。如果結果是 0 的话,说明 i 是偶数。反之是奇数。
i 表示行,j 表示列。(i&1) == (j&1) 就是测 i 和 j 的奇偶是不是相同,相同为 1,就打印 a[1],是那个星号。不同是 a[0]。
2011-03-16 10:12
快速回复:帮帮我 改一下下面的程序
数据加载中...
 
   



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

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