Re: [請益] 沒有想像中簡單的小問題
※ 引述《tenfaces (我愛三筒小叮噹~~)》之銘言:
: 這次某個公營考試的程式題目
: 列印出如下格式:
: 3
: 345
: 34567
: 345
: 3
echo ' 3\n 345\n34567\n 345\n 3\n' | lpr
題目好像有說要"列印"? xD
: 當初一看到題目 覺得很簡單啊 就跳下去寫了 後來發現~
: 唔 要左拼拼 右湊湊 才能搞定 挺多狀況的
: 上來討解答很白目 我是自己寫出來後 才想請問各位高手
: 有沒有比較直覺的想法還有解法
: 或是迴圈數更少的做作 看有些比較有經驗的版本的解答 應該可以加強下次寫此類題目的邏輯推演
: 小弟先將自己的版本放上來 謝謝各位分享 :)
: //_____________程式開始 ________________
: #include<stdio.h>
: void main(void) {
: int i,j;
: int step1=0; // 這二個步進值 分別控制 從三開始印到何時停止
: int step2=1; //
: for (i=1;i<=5;i++) { // 外層迴圈跑五次 列印五行
: if(i<=3) { // 先寫上半段 到 34567 這個部份
: for(j=1;j<=5;j++) { // 此迴圈是控制 每一行的五個數字
: if(abs(j-3)<=step1)
: printf("%d\t",j+i-1);
: else printf("%s","\t");
: }
: step1++; }
: if(i>3) { // 再寫下半段
: for(j=1;j<=5;j++) {
: if(abs(j-3)<=step2)
: printf("%d\t",j-i+5);
: else printf("%s","\t");
: }
: step2--; }
: printf("\n");
: } }
: // 程式結束 ___________________________________
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.126.5.40
※ 編輯: lucky17 來自: 220.139.205.10 (10/05 23:57)
討論串 (同標題文章)
Programming 近期熱門文章
PTT數位生活區 即時熱門文章