天天看點

c語言 輸入一個整數 n ,求不超過 n 的最大的二進制的對稱數,自學考試《C語言程式設計》随堂習題及答案...

【4.92】将一個數的數位倒過來所得到的新數,叫作原數的反序數,如果一個數等于它的反序數,則稱它為對稱數。編寫程式,采用遞歸算法求不超過1993的最大的二進制的對稱數。

【4.93】從1到n(n<1000)個自然數中選出r個數進行組合,并按指定的格式輸出組合的結果。例如:n=5,r=3時,共有10種組合,運作程式,要按下面的格式輸出:

123

4

5

34

5

45

234

5

45

345

請用遞歸算法實作。

【4.94】從鍵盤輸入十個整數,用合并排序法對輸入的資料按照從小到大的順序進行排序,将排序後的結果輸出。

【4.95】編寫程式,讀入一個以符号"."結束的長度小于20位元組的英文句子,檢查其是否為回文(即正讀和反讀都是一樣的,不考慮空格和标點符号)。例如:

讀入句子:MADAM I'M ADAM. 它是回文,是以輸出:YES

讀入句子:ABCDBA). 它不是回文,是以輸出:NO

【4.96】編寫程式,其中包括一個函數,此函數的功能是:對一個長度為N 的字元串從其第K個字元起,删去M個字元,組成長度為N-M的新字元串(其中N、M<=80,K<=N)。例如輸入字元串"We are poor students.",利用此函數進行删除"poor"的處理,輸出處理後的字元串是"We are students."。

【4.97】編寫函數,通過指針将一個字元串反向。

【4.98】編寫一個函數insert(s1,s2,ch),實作在字元串s1中的指定字元ch位置處插入字元串s2。

【4.99】編寫程式将輸入的兩行字元串連接配接後,将串中全部空格移到串首後輸出。

【4.100】編寫程式,輸入字元串,分别統計字元串中所包含的各個不同的字元及其各自字元的數量。如:輸入字元串: abcedabcdcd

則輸出:a=2 b=2 c=3 d=3 e=1。

【4.101】利用結構:struct complx

{ int real;

int im;

};

編寫求兩個複數之積的函數cmult,并利用該函數求下列複數之積:

⑴ (3+4i)×(5+6i) ⑵ (10+20i)×(30+40i

【4.102】編寫成績排序程式。按學生的序号輸入學生的成績,按照分數由高到低的順序輸出學生的名次、該名次的分數、相同名次的人數和學号;同名次的學号輸出在同一行中,一行最多輸出10個學号。

【4.103】編寫程式,實作輸入的時間螢幕顯示一秒後的時間。顯示格式為HH:MM:SS。程式需要處理以下三種特殊情況:

⑴ 若秒數加1後為60,則秒數恢複到0,分鐘數增加1;

⑵ 若分鐘數加1後為60,則分鐘數恢複到0,小時數增加1;

⑶ 若小時數加1後為24,則小時數恢複到0。

【4.104】編寫程式,從鍵盤輸入3個學生的資料,将它們存入檔案student;然後再從檔案中讀出資料,顯示在螢幕上。

【4.105】編寫程式,從鍵盤輸入一行字元串,将其中的小寫字母全部轉換成大寫字母,然後輸出到一個磁盤檔案"test"中儲存。

【4.106】編寫程式,讀入磁盤上C語言源程式檔案"test8.c",删去程式中的注釋後顯示。