<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          c語言各種古怪的寫法

          共 1995字,需瀏覽 4分鐘

           ·

          2020-10-08 05:42


          點(diǎn)擊「閱讀原文」查看良許原創(chuàng)精品視頻。


          我覺得這是一個送分題,奈何知乎人才太多了,給出了各種古怪的寫法,如果是做項目的話,我比驕建議一些正常的寫法,就是大家都能看得懂的,不要搞什么花里胡哨,不過你要是交流的話,既然是交流,我不覺得要多正規(guī),即使你的觀點(diǎn)有問題,我覺得也可以拿出來說說,畢竟是交流,各抒己見,發(fā)表自己的觀點(diǎn)是最重要的。


          ---- 為什么不建議大家花里胡哨

          我覺得花里胡哨之前首先是你基礎(chǔ)非常好了再去花里胡哨,不要自己很多基礎(chǔ)的東西還搞不清楚就去花里胡哨。


          ---- 看這個代碼,題外話

          看看基礎(chǔ)搞不明白的殺傷有多大。

          void?start_f(int?first_start)
          {
          ?char?time_buf[512];
          ?char?buf[512];
          ?if(!first_start)
          ?{
          ??sprintf(time_buf,"%s",get_time());
          ??int?len?=?strlen(time_buf);
          ??time_buf[len?-1?]?=?0;
          ??printf("time_buf:%s\n",time_buf);
          ?}
          }

          這個是在網(wǎng)上看到的一個代碼,比較典型的基礎(chǔ)不牢靠,對strlen 理解不夠。

          常規(guī)解題代碼

          我覺得對于這個題目,使用for是非常常規(guī)的思考方式,所以我看了所有的回答之后,寫了一個常規(guī)的代碼。

          ---- 代碼如下

          #include?"stdio.h"

          void?main(void)
          {
          ?int?i=0;
          ?for(i=1;i<=100;i++)
          ?{
          ??printf("%d?",i);
          ?}
          ?for(i=99;i>=1;i--)
          ?{
          ??printf("%d?",i);
          ?}
          }?

          ---- 代碼輸出

          1?2?3?4?5?6?7?8?9?10?11?12?13?14?15?16?17?18?19?20?21?22?23?24?25?26?27?28?29?30?31?32?33?34?35?36?37?38?39?40?41?42?43?44?45?46?47?48?49?50?51?52?53?54?55?56?57?58?59?60?61?62?63?64?65?66?67?68?69?70?71?72?73?74?75?76?77?78?79?80?81?82?83?84?85?86?87?88?89?90?91?92?93?94?95?96?97?98?99?100?99?98?97?96?95?94?93?92?91?90?89?88?87?86?85?84?83?82?81?80?79?78?77?76?75?74?73?72?71?70?69?68?67?66?65?64?63?62?61?60?59?58?57?56?55?54?53?52?51?50?49?48?47?46?45?44?43?42?41?40?39?38?37?36?35?34?33?32?31?30?29?28?27?26?25?24?23?22?21?20?19?18?17?16?15?14?13?12?11?10?9?8?7?6?5?4?3?2?1
          --------------------------------
          Process?exited?after?0.04664?seconds?with?return?value?2
          請按任意鍵繼續(xù).?.?.

          ---- 為什么是 void main ,而不是int main ,題外話

          這個是一個知乎留言提到的,很多人也對這個有疑惑,main 的寫法有幾種,有的被認(rèn)為是正規(guī)的,有的被認(rèn)為是不正規(guī)的。

          main是一個函數(shù),既然是一個函數(shù),就遵從函數(shù)的規(guī)則就好。

          所以,這樣寫輸出并沒有什么問題

          #include?

          char?*?main()
          {
          ?printf("hhh\n");?
          ????return?(char?*?)NULL;
          }

          我們還要知道比較常見的幾種

          int?main(int?argc,char?**argv){}
          int?main(int?argc,char?*argv[]){}
          int?main(void){}

          ---對于返回值的認(rèn)知

          main 函數(shù)是被操作系統(tǒng)調(diào)用的,既然是被操作系統(tǒng)調(diào)用的,操作系統(tǒng)會判斷函數(shù)的返回值,通過返回值來判斷程序是否正確運(yùn)行,所以main函數(shù)的返回值是有意義的,我示例中的寫法并不規(guī)范。

          對main的解讀

          比較玄乎的寫法

          #include?"stdio.h"
          void?fun(int?n)
          {
          ?if(n<100)
          ?{
          ??printf("%d?",n);?
          ??fun(n+1);
          ?}?
          ?printf("%d?",n);
          }

          int?main(void)
          {
          ?fun(1);
          ?return?0;
          }

          ---- 程序輸出

          1?2?3?4?5?6?7?8?9?10?11?12?13?14?15?16?17?18?19?20?21?22?23?24?25?26?27?28?29?30?31?32?33?34?35?36?37?38?39?40?41?42?43?44?45?46?47?48?49?50?51?52?53?54?55?56?57?58?59?60?61?62?63?64?65?66?67?68?69?70?71?72?73?74?75?76?77?78?79?80?81?82?83?84?85?86?87?88?89?90?91?92?93?94?95?96?97?98?99?100?99?98?97?96?95?94?93?92?91?90?89?88?87?86?85?84?83?82?81?80?79?78?77?76?75?74?73?72?71?70?69?68?67?66?65?64?63?62?61?60?59?58?57?56?55?54?53?52?51?50?49?48?47?46?45?44?43?42?41?40?39?38?37?36?35?34?33?32?31?30?29?28?27?26?25?24?23?22?21?20?19?18?17?16?15?14?13?12?11?10?9?8?7?6?5?4?3?2?1
          --------------------------------
          Process?exited?after?0.05336?seconds?with?return?value?0
          請按任意鍵繼續(xù).?.?.

          這里涉及到遞歸,如果沒有這個概念的人,腦子可能彎不過來

          大概是這樣執(zhí)行順序的

          fun(1)
          ->fun(2)
          --->fun(3)
          ........
          ---->fun(99)

          ---- 把上面的代碼修改下

          #include?"stdio.h"
          void?fun(int?n)
          {
          ?if(n<100)
          ?{
          ??printf("fun(%d)?",n);?
          ??fun(n+1);
          ?}?
          ?printf("fun(%d)?",n);
          }

          int?main(void)
          {
          ?fun(1);
          ?return?0;
          }

          ---- 代碼輸出

          fun(1)?fun(2)?fun(3)?fun(4)?fun(5)?fun(6)?fun(7)?fun(8)?fun(9)?fun(10)?fun(11)?fun(12)?fun(13)?fun(14)?fun(15)?fun(16)?fun(17)?fun(18)?fun(19)?fun(20)?fun(21)?fun(22)?fun(23)?fun(24)?fun(25)?fun(26)?fun(27)?fun(28)?fun(29)?fun(30)?fun(31)?fun(32)?fun(33)?fun(34)?fun(35)?fun(36)?fun(37)?fun(38)?fun(39)?fun(40)?fun(41)?fun(42)?fun(43)?fun(44)?fun(45)?fun(46)?fun(47)?fun(48)?fun(49)?fun(50)?fun(51)?fun(52)?fun(53)?fun(54)?fun(55)?fun(56)?fun(57)?fun(58)?fun(59)?fun(60)?fun(61)?fun(62)?fun(63)?fun(64)?fun(65)?fun(66)?fun(67)?fun(68)?fun(69)?fun(70)?fun(71)?fun(72)?fun(73)?fun(74)?fun(75)?fun(76)?fun(77)?fun(78)?fun(79)?fun(80)?fun(81)?fun(82)?fun(83)?fun(84)?fun(85)?fun(86)?fun(87)?fun(88)?fun(89)?fun(90)?fun(91)?fun(92)?fun(93)?fun(94)?fun(95)?fun(96)?fun(97)?fun(98)?fun(99)?fun(100)?fun(99)?fun(98)?fun(97)?fun(96)?fun(95)?fun(94)?fun(93)?fun(92)?fun(91)?fun(90)?fun(89)?fun(88)?fun(87)?fun(86)?fun(85)?fun(84)?fun(83)?fun(82)?fun(81)?fun(80)?fun(79)?fun(78)?fun(77)?fun(76)?fun(75)?fun(74)?fun(73)?fun(72)?fun(71)?fun(70)?fun(69)?fun(68)?fun(67)?fun(66)?fun(65)?fun(64)?fun(63)?fun(62)?fun(61)?fun(60)?fun(59)?fun(58)?fun(57)?fun(56)?fun(55)?fun(54)?fun(53)?fun(52)?fun(51)?fun(50)?fun(49)?fun(48)?fun(47)?fun(46)?fun(45)?fun(44)?fun(43)?fun(42)?fun(41)?fun(40)?fun(39)?fun(38)?fun(37)?fun(36)?fun(35)?fun(34)?fun(33)?fun(32)?fun(31)?fun(30)?fun(29)?fun(28)?fun(27)?fun(26)?fun(25)?fun(24)?fun(23)?fun(22)?fun(21)?fun(20)?fun(19)?fun(18)?fun(17)?fun(16)?fun(15)?fun(14)?fun(13)?fun(12)?fun(11)?fun(10)?fun(9)?fun(8)?fun(7)?fun(6)?fun(5)?fun(4)?fun(3)?fun(2)?fun(1)

          重點(diǎn)在于只有if 判斷為假后,才結(jié)束遞歸,但是遞歸不能無限大,太大了會撐爆棧空間的哦

          遞歸的文章

          C 語言,你真的懂遞歸了嗎?

          比如這樣

          再看看一個高贊的奇葩寫法

          作者:已注銷了
          鏈接:https://www.zhihu.com/question/420856018/answer/1474402510
          來源:知乎
          著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。

          #include?
          int?main()?{
          ?printf("1");
          ?printf("?");
          ?printf("2");
          ?printf("?");
          ?printf("3");
          ?printf("?");
          ?printf("4");
          ?printf("?");
          ?printf("5");
          ?printf("?");
          ?printf("6");
          ?printf("?");
          ?printf("7");
          ?printf("?");
          ?printf("8");
          ?printf("?");
          ?printf("9");
          ?printf("?");
          ?printf("10");
          ?printf("?");
          ?printf("11");
          ?printf("?");
          ?printf("12");
          ?printf("?");
          ?printf("13");
          ?printf("?");
          ?printf("14");
          ?printf("?");
          ?printf("15");
          ?printf("?");
          ?printf("16");
          ?printf("?");
          ?printf("17");
          ?printf("?");
          ?printf("18");
          ?printf("?");
          ?printf("19");
          ?printf("?");
          ?printf("20");
          ?printf("?");
          ?printf("21");
          ?printf("?");
          ?printf("22");
          ?printf("?");
          ?printf("23");
          ?printf("?");
          ?printf("24");
          ?printf("?");
          ?printf("25");
          ?printf("?");
          ?printf("26");
          ?printf("?");
          ?printf("27");
          ?printf("?");
          ?printf("28");
          ?printf("?");
          ?printf("29");
          ?printf("?");
          ?printf("30");
          ?printf("?");
          ?printf("31");
          ?printf("?");
          ?printf("32");
          ?printf("?");
          ?printf("33");
          ?printf("?");
          ?printf("34");
          ?printf("?");
          ?printf("35");
          ?printf("?");
          ?printf("36");
          ?printf("?");
          ?printf("37");
          ?printf("?");
          ?printf("38");
          ?printf("?");
          ?printf("39");
          ?printf("?");
          ?printf("40");
          ?printf("?");
          ?printf("41");
          ?printf("?");
          ?printf("42");
          ?printf("?");
          ?printf("43");
          ?printf("?");
          ?printf("44");
          ?printf("?");
          ?printf("45");
          ?printf("?");
          ?printf("46");
          ?printf("?");
          ?printf("47");
          ?printf("?");
          ?printf("48");
          ?printf("?");
          ?printf("49");
          ?printf("?");
          ?printf("50");
          ?printf("?");
          ?printf("51");
          ?printf("?");
          ?printf("52");
          ?printf("?");
          ?printf("53");
          ?printf("?");
          ?printf("54");
          ?printf("?");
          ?printf("55");
          ?printf("?");
          ?printf("56");
          ?printf("?");
          ?printf("57");
          ?printf("?");
          ?printf("58");
          ?printf("?");
          ?printf("59");
          ?printf("?");
          ?printf("60");
          ?printf("?");
          ?printf("61");
          ?printf("?");
          ?printf("62");
          ?printf("?");
          ?printf("63");
          ?printf("?");
          ?printf("64");
          ?printf("?");
          ?printf("65");
          ?printf("?");
          ?printf("66");
          ?printf("?");
          ?printf("67");
          ?printf("?");
          ?printf("68");
          ?printf("?");
          ?printf("69");
          ?printf("?");
          ?printf("70");
          ?printf("?");
          ?printf("71");
          ?printf("?");
          ?printf("72");
          ?printf("?");
          ?printf("73");
          ?printf("?");
          ?printf("74");
          ?printf("?");
          ?printf("75");
          ?printf("?");
          ?printf("76");
          ?printf("?");
          ?printf("77");
          ?printf("?");
          ?printf("78");
          ?printf("?");
          ?printf("79");
          ?printf("?");
          ?printf("80");
          ?printf("?");
          ?printf("81");
          ?printf("?");
          ?printf("82");
          ?printf("?");
          ?printf("83");
          ?printf("?");
          ?printf("84");
          ?printf("?");
          ?printf("85");
          ?printf("?");
          ?printf("86");
          ?printf("?");
          ?printf("87");
          ?printf("?");
          ?printf("88");
          ?printf("?");
          ?printf("89");
          ?printf("?");
          ?printf("90");
          ?printf("?");
          ?printf("91");
          ?printf("?");
          ?printf("92");
          ?printf("?");
          ?printf("93");
          ?printf("?");
          ?printf("94");
          ?printf("?");
          ?printf("95");
          ?printf("?");
          ?printf("96");
          ?printf("?");
          ?printf("97");
          ?printf("?");
          ?printf("98");
          ?printf("?");
          ?printf("99");
          ?printf("?");
          ?printf("100");
          ?printf("?");
          ?printf("99");
          ?printf("?");
          ?printf("98");
          ?printf("?");
          ?printf("97");
          ?printf("?");
          ?printf("96");
          ?printf("?");
          ?printf("95");
          ?printf("?");
          ?printf("94");
          ?printf("?");
          ?printf("93");
          ?printf("?");
          ?printf("92");
          ?printf("?");
          ?printf("91");
          ?printf("?");
          ?printf("90");
          ?printf("?");
          ?printf("89");
          ?printf("?");
          ?printf("88");
          ?printf("?");
          ?printf("87");
          ?printf("?");
          ?printf("86");
          ?printf("?");
          ?printf("85");
          ?printf("?");
          ?printf("84");
          ?printf("?");
          ?printf("83");
          ?printf("?");
          ?printf("82");
          ?printf("?");
          ?printf("81");
          ?printf("?");
          ?printf("80");
          ?printf("?");
          ?printf("79");
          ?printf("?");
          ?printf("78");
          ?printf("?");
          ?printf("77");
          ?printf("?");
          ?printf("76");
          ?printf("?");
          ?printf("75");
          ?printf("?");
          ?printf("74");
          ?printf("?");
          ?printf("73");
          ?printf("?");
          ?printf("72");
          ?printf("?");
          ?printf("71");
          ?printf("?");
          ?printf("70");
          ?printf("?");
          ?printf("69");
          ?printf("?");
          ?printf("68");
          ?printf("?");
          ?printf("67");
          ?printf("?");
          ?printf("66");
          ?printf("?");
          ?printf("65");
          ?printf("?");
          ?printf("64");
          ?printf("?");
          ?printf("63");
          ?printf("?");
          ?printf("62");
          ?printf("?");
          ?printf("61");
          ?printf("?");
          ?printf("60");
          ?printf("?");
          ?printf("59");
          ?printf("?");
          ?printf("58");
          ?printf("?");
          ?printf("57");
          ?printf("?");
          ?printf("56");
          ?printf("?");
          ?printf("55");
          ?printf("?");
          ?printf("54");
          ?printf("?");
          ?printf("53");
          ?printf("?");
          ?printf("52");
          ?printf("?");
          ?printf("51");
          ?printf("?");
          ?printf("50");
          ?printf("?");
          ?printf("49");
          ?printf("?");
          ?printf("48");
          ?printf("?");
          ?printf("47");
          ?printf("?");
          ?printf("46");
          ?printf("?");
          ?printf("45");
          ?printf("?");
          ?printf("44");
          ?printf("?");
          ?printf("43");
          ?printf("?");
          ?printf("42");
          ?printf("?");
          ?printf("41");
          ?printf("?");
          ?printf("40");
          ?printf("?");
          ?printf("39");
          ?printf("?");
          ?printf("38");
          ?printf("?");
          ?printf("37");
          ?printf("?");
          ?printf("36");
          ?printf("?");
          ?printf("35");
          ?printf("?");
          ?printf("34");
          ?printf("?");
          ?printf("33");
          ?printf("?");
          ?printf("32");
          ?printf("?");
          ?printf("31");
          ?printf("?");
          ?printf("30");
          ?printf("?");
          ?printf("29");
          ?printf("?");
          ?printf("28");
          ?printf("?");
          ?printf("27");
          ?printf("?");
          ?printf("26");
          ?printf("?");
          ?printf("25");
          ?printf("?");
          ?printf("24");
          ?printf("?");
          ?printf("23");
          ?printf("?");
          ?printf("22");
          ?printf("?");
          ?printf("21");
          ?printf("?");
          ?printf("20");
          ?printf("?");
          ?printf("19");
          ?printf("?");
          ?printf("18");
          ?printf("?");
          ?printf("17");
          ?printf("?");
          ?printf("16");
          ?printf("?");
          ?printf("15");
          ?printf("?");
          ?printf("14");
          ?printf("?");
          ?printf("13");
          ?printf("?");
          ?printf("12");
          ?printf("?");
          ?printf("11");
          ?printf("?");
          ?printf("10");
          ?printf("?");
          ?printf("9");
          ?printf("?");
          ?printf("8");
          ?printf("?");
          ?printf("7");
          ?printf("?");
          ?printf("6");
          ?printf("?");
          ?printf("5");
          ?printf("?");
          ?printf("4");
          ?printf("?");
          ?printf("3");
          ?printf("?");
          ?printf("2");
          ?printf("?");
          ?printf("1");
          ?printf("?");
          ?return?0;
          }



          良許個人微信


          添加良許個人微信即送3套程序員必讀資料


          → 精選技術(shù)資料共享

          → 高手如云交流社群





          本公眾號全部博文已整理成一個目錄,請在公眾號里回復(fù)「m」獲取!

          推薦閱讀:

          拆了公司發(fā)的中秋禮包,我竟然要被全員批評!

          Docker中級篇

          學(xué)C/C++編程的必要軟件你都裝了不?


          5T技術(shù)資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,單片機(jī),樹莓派,等等。在公眾號內(nèi)回復(fù)「1024」,即可免費(fèi)獲取!!


          瀏覽 61
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  一区二区三区无码区 | 天堂8AV | 亚洲欧洲AV在线 | 影音先锋日韩 | 亚洲成人综合色图 |