讓我來翻一下題目。題目說輸入兩個數,然後將他們的和用一種規定的格式輸出。這種格式也很常見,(取錢的時候見過吧)。(嗯,還是一道很平易近人的題目)
做這道題,我換了兩種思路,(嗯,很明顯,第一條我認為比較規範的道路我沒走通)
先說說兩種思路吧
我的第一種思路:先輸入兩個數然後設個字元型陣列,嗯,求和完將這個和的每乙個數字分別存入這個陣列中的乙個元素中,但是每三個就加乙個逗號。
**如下:
int main()
; scanf("%d%d",&a,&b);
sum=a+b;
for(;;)
e=e*10;
j=(sum/(d));
if(j!=0)
e=e*10;
j=(sum/(d));
if(f%3==0&&f!=0)
c[f]=j;
f=f+1;
sum=(sum-j*(d));
} }
} for(i=0;i排錯時通過不斷地輸出來檢驗有沒有執行哪一條語句,然後判斷前一過程的值有沒有問題。
排錯
嗯,然後我發現寫錯了,首先是我發現,我的思路都不能實現,輸出會出現奇怪的字元。
然後我就發現我想錯了
嗯,舉個栗子。eg:輸入10000 和1。設了c這個陣列。然後和為10001就c[0]=1,c[1]=0,c[2]=0,c[3]=',',c[4]=0,c[5]=1。(沒錯,就是這樣)
2. 然後我就生氣了(2333)我決定用愚蠢實用的方法快速解決它
第二種思路簡單粗暴(。。)嗯,我的思路是這樣的:首先,a與b有最大值的限制(多好啊)所以他們的和最高(max)有2後面6個0,最低(min)有負2後面6個0!
然後就好像很簡單的樣子,分情況討論討論,如果它大於4位數小於7位數用和來除1000得到的數就是逗號前的,(逗號後有3個0),嗯,然後再分具體幾位數來看看到底要補全幾個0.然後如果小於4位或等於7位再具體討論一下(if語句是萬能的)
具體**如下:
int main()
else if(sum>=1000)
else if(i>=10&&i<100)
else if(i>=1000)
else
}else if(sum<0)
else if(sum<=-1000)
else if(i>=10&&i<100)
else if(i>=1000)
else
}} return 0;
}
在除錯的途中發現了一些問題,(就是討論情況中的遺漏,畢竟方法比較笨)乙個是一開始預設和也是》=-1000000&&<=1000000;然後比較暴力的處理了七位數的情況。後來發現了這一問題(因為網路當時沒有所以修改過程沒有截圖)。
嗯,通過第二個思路,總結一種不斷除整然後相減取某一位數的常見方式,也發現簡單的思路有時候也很重要,然後第乙個思路也會去想想完善完善的。附上提交記錄
(啊哈哈,第一次,失誤失誤)
寒假 作業2
大話物聯網 讀書心得 物聯網是繼計算機 網際網路與移動通訊之後的世界資訊產業的第三次浪潮。但是對於我這種連計算機都還不太懂的菜鳥新手和科技無知者來說,物聯網 三個字真的是乙個新興詞彙。在之前我連 物聯網 三個字好像都不太聽到過,更加不可能了解。殊不知我已經和這個世界如此的脫軌,已經被時代遠遠地落在了...
寒假作業2
我的思路是,先設定乙個單步執行的只能處理乙個命令電梯程式,先模仿電梯的執行 然後再在此基礎上建立乙個五個指令的電梯程式。他們的名字分別是電梯問題 和電梯問題3。大概4天。198行 我先將題目大體意思看懂,然後再想平時電梯的執行,然後模仿了乙個只能處理乙個資訊的電梯程式 並在此基礎上進行擴充套件。挺多...
寒假作業2
只完成了乙個簡易版電梯emmmm 該電梯未考慮最優解,也沒有載人回頭的情況,且此電梯預設始終直上直下 該電梯在直上直下的情況下按照時間順序依次將乘客運達目的地 由於電腦問題,git尚未完成,貼上如下 includeusing namespace std int i,j,ans,dc,fx,t,num...