请教一个c++的问题

来源:百度知道 编辑:UC知道 时间:2024/05/06 06:13:46
#include<iostream>
using namespace std;
int main()
{
int i,j,k;
for(i=1;i<=4;i++)
{
for(j=1;j<=20-3*j;j++)
cout<<"";
for(k=1;k<=i;k++)
cout<<k;
for(k=i-1;k>0;k--)
cout<<k;
cout<<endl;
}
system("pause");
return 0;
这个程序中的 for(j=1;j<=20-3*j;j++)
cout<<"";是干什么的?

cout<<""没有效果,应为双引号之间是空字符

其实你要想看出结果很简单

把cout<<"";换成cout<<"*";就能看出结果了

结果如下:

*****1
*****121
*****12321
*****1234321
请按任意键继续. . .

它总是输出5个*号,因为
for(j=1;j<=20-3*j;j++)
cout<<"";
中间的控制条件j<=20-3*j;总是在j=5的时候就停止执行了

cout<<"" 表示把"" 输入到cout中。

cout<<""是C++里面的格式插入