內(nèi)容:打印出題目要求圖形
目的:掌握for循環(huán)
程序代碼:
/*
* 程序的版權(quán)和版本聲明部分:
* Copyright (c) 2013, 煙臺(tái)大學(xué)計(jì)算機(jī)學(xué)院
* All rights reserved.
* 文件名稱:test.cpp
* 作 者:匡效國
* 完成日期:2013 年 4 月 11 日
* 版 本 號(hào):v1.0
*
* 對任務(wù)及求解方法的描述部分:
* 輸入描述:循環(huán)輸入整數(shù)n,輸入0時(shí)結(jié)束
* 問題描述:要求輸入n的值,按照圖形的打印規(guī)則打印出相關(guān)的圖形
* 具體圖形見程序運(yùn)行結(jié)果
* 程序輸出:見下圖
* 問題分析:略
* 算法設(shè)計(jì):略
*/
#include <iostream>
using namespace std;
int main()
{
int n,i,j,k;//n為輸入的數(shù)字,i,j,k用來循環(huán)
while(cin>>n)
{
if(n==0)
break;
for(i=1;i<=n;i++)//第一次循環(huán)n次,輸出上半部分
{
for(k=1;k<=n-i;k++)
cout<<" ";
cout<<"+";
if(i!=1)//因?yàn)樵诘谝恍胁荒茌敵?,所以用一個(gè)if語句
{
for(j=3;j<=2*i-1;j++)
cout<<"*";
cout<<"+";
}
cout<<endl;
}
for(i=1;i<=n-1;i++)//第二次循環(huán)n-1次,輸出下半部分
{
for(k=1;k<=i;k++)
cout<<" ";
cout<<"+";
if(i!=n-1)//此處在最后一行也不能輸出*,再用if語句控制
{
for(j=2;j<=2*(n-i-1);j++)
cout<<"*";
cout<<"+";
}
cout<<endl;
}
}
return 0;
}
運(yùn)行結(jié)果:
感悟:for循環(huán)不是太難掌握,多做一些類似的題目就很簡單了
說明:為使讀者容易明白程序的輸出,所以對題目稍作改動(dòng),原題為輸入一個(gè)數(shù)n,這里是循環(huán)輸入n,以0結(jié)束
題目來源: http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1135
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

