王燕 程式設計A 2018212796

2021-09-07 08:47:33 字數 2888 閱讀 4014

1.水仙花數

描述:輸出乙個數,它的各位數的立方和等於它本身。

思路:通過相除取餘等方法求出各位數並立方,定義乙個sum=0,for迴圈找出規定範圍內的i並輸出,如果滿足題目條件,sum++,如果sum=0,則不存在水仙花數。

細節:考慮sum等於1的情況,此時不需要輸出空格。當大於1時,輸出空格加i。

原始碼:#include

#include

using namespace std;

int main()

}if(sum == 0)

cout << "no";

cout << endl;

}return 0;

}2.題目:給你n個數,輸出所有奇數的乘積

思路:通過迴圈,找出奇數,並相乘。

細節:輸入多組資料,注意用while(cin>>  )

原始碼:#include

using namespace std;

int main()

for(int i=1;i<=n;i++)

cout<

#include

using namespace std;

int main()

for(int n=x;n<=y;n++)

}   

}if(flag==0)

else

}return 0;

}4.題目:1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + ...

現在請你求出該多項式的前n項的和。

思路:通過迴圈將正數,負數分別求和,再加到一起。

原始碼:#include

#include

using namespace std;

int main()

cout<

#include

#include

#define max 101

using namespace std;

int main()

return 0;

}6.題目:輸入n(n<=100)個整數,按照絕對值從大到小排序後輸出。所有的數的絕對值都不相等。

細節:一般sort是從小到大排序,如果從大到小需要改變一下。標頭檔案後跟著bool compare(int a,int b)return abs(a)>abs(b),在下面排序時,則用sort(a,a+n,compare)。最重要的是輸出格式,因為要求是兩個數之間有空格,最後乙個數後則不需要空格,所以需要分開討論一下。

原始碼:#include

#include

#include

using namespace std;

bool compare(int a,int b)

int main()

sort(a,a+n,compare);

for (i = 0; i < n-1; i++)

printf("%d ", a[i]);

printf("%d", a[n-1]);

printf("\n");

}return 0;

}7.題目: 

已知n個老師的工資,現有100.50.20.10.1元人民幣問每個需準備幾張才不會找零。

思路:原則是能夠先給大的,就不給小的。所以依次給大的整除然後取餘就可以了。

原始碼:#include

using namespace std;

int main()

for(i=0;i<3;++i)

for(i=2;i>=0;--i)

}for(i=0;i<2;++i)

printf("%d\n",a[i]);

}return 0;

}  9.給出兩個數a和b,如果a的真約數之和為b,而b的真約數只和之和是a.則a和b為親和數,判斷兩個數是否為親和數。

思路:分別求出兩個數的真約數之和,判斷是否與a或b相等。

原始碼:#include

#include

using namespace std;

int main()

cout<<"6"<}

12.題目:已知多組資料,每組資料報括菜種,單價和數量,求一共需要支付多少錢。

思路:通過迴圈將每種菜需要付的錢加起來,最後合計。

細節:定義菜種為為char型別,單價為double型別。

原始碼:#include

#include

using namespace std;

int main()

cout<#include

#include

const double pi=3.1415926;

int main()

return 0;

}14.題目:對於a和b,只知道a的前幾位,不知道後兩位,若a%b=0,則求出a的後兩位。

思路:將a的後兩位數加上所給前幾位數的100倍來表示a,.

細節:最後兩位有00的情況

所以輸出時用%02d.

原始碼:#include

int main()

}printf("\n");

}return 0;

}15.題目:若乙個十進位制的各位數之和等於十二進位制的各位數之和等於十六進製制的各位數之和,則稱它為sky數,判斷乙個數是否為sky數。

思路:不需要進製轉換,只需將每個數通過連除或取餘求出各位數相加即可。

原始碼:#include

using namespace std;

int main()

return 0;

}感受:通過這次課程設計,我覺得可能是快要考試的緣故,自己想把每乙個題都認真想一遍,但還是有不會的,與此同時,這次實踐也讓我鞏固了一些知識,懂得了一些以前不懂的知識點,讓我對c++有了興趣。下學期也沒有這門課了,希望這學期學的知識能對我以後有幫助。總之,希望我能夠學以致用吧。哈哈!

王銀《程式設計的智慧型》

反覆提煉,剔除垃圾 枝丫分明,樹狀 如果出現了continue,你往往只需要把continue的條件反向,就可以消除continue。如果出現了break,你往往可以把break的條件,合併到迴圈頭部的終止條件裡,從而去掉break。有時候你可以把break替換成return,從而去掉break。如...

時間程式設計,王明學learn

時間程式設計 一 時間型別 coordinated universal time utc 世界標準時間,也就是大家所熟知的格林威治標準時間 greenwich mean time,gmt calendar time 日曆時間,是用 從乙個標準時間點 如 1970年1月1日0點 到此時經過的秒數 來表...

程式設計之美 發帖水王

問題是,在論壇上乙個人非常喜歡發帖,且他發的帖子數目超過了帖子總數的一半,要想快速的找出這個id,怎麼辦?首先可以先把所有帖子按id進行排序,把排序結果存進陣列裡面,然後直接索引n 2即可得到那個id。時間複雜度是n logn.還可以從另外乙個角度來看這個題,因為他的帖子數目超過了總數的一半,因此,...