使用"*"输出正方形C++

Outputting a Square Shape C++ using '*'

本文关键字:C++ 正方形 使用 输出      更新时间:2023-10-16

你好,我是编程新手,我的任务是输出形状。第一个是正方形:

int main(){
unsigned size;
cout <<"Size: ? ";
cin >>size;
for ( unsigned r = 0; r < size; r++ ){ // Square
    for ( unsigned c = 0; c < size ; c++ )
        if ( r == c ) 
            cout <<'*';
    cout <<endl;
}
cout <<endl;
}

当我在提示后输入"5"时。输出结果为:5

*

*

*

*

*

有人能解释一下我的代码出了什么问题吗?我需要同时具有水平和垂直输出。感谢

当r与c相同时,你只在对角线上输出一个*。你只输出一些端线,所以每行上只有一颗星。

#include<iostream>使用命名空间std;int main(){无符号大小;bool-solid=true//实心还是空心?cout<lt;"尺寸:?";cin>gt;大小大小=5;cout<lt;endl;for(无符号r=0;r<size;r++){//平方for(无符号c=0;c<size;c++){如果(实心){cout<lt;"*";}其他{如果(r=0 | | r=size-1 | | c=0或c=size-1){cout<lt;"*";}其他{cout<lt;";}}}cout<lt;endl;}cout<lt;endl;}
输出空心:
**************

固态:

********************

只有当r==c时才打印*。if语句的用途是什么?尝试对if语句进行注释并查看结果。