這個做業屬於哪一個課程 | C語言程序設計II |
這個做業要求在哪裏 | 2019年春季學期第五週做業 |
我在這個課程的目標是 | 我但願可以經過學習C語言的知識,編寫程序 |
這個做業在哪一個具體方面幫助我實現目標 | 這個做業讓我知道了字符串的基本概念及使用方法,理解了字符串與一維字符數組的區別、字符串的存儲以及字符串的操做方法。明白瞭如何正確使用字符串進行程序設計。 |
參考文獻 | 字符串 菜鳥教程C 標準庫 - <string.h> 《C語言程序設計》指針 |
本題目要求編寫程序統計一行字符中單詞的個數。所謂「單詞」是指連續不含空格的字符串,各單詞之間用空格分隔,空格數能夠是多個。html
輸入格式:
輸入給出一行字符。編程
輸出格式:
在一行中輸出單詞個數。數組
輸入樣例:ide
Let's go to room 209.
輸出樣例:學習
5
#include<stdio.h> #include<string.h> int main(void) { int i, count, len; char ch[1000]; gets(ch); len = strlen(ch); if(ch [0] == ' ') count = 0; else count = 1; for(i = 0;i < len - 1;i ++) { if(ch [i] == ' ' && ch [i+1] != ' ') count ++; } printf("%d", count); return 0; }
7-1 英文單詞排序 (25 分)
本題要求編寫程序,輸入若干英文單詞,對這些單詞按長度從小到大排序後輸出。若是長度相同,按照輸入的順序不變。測試
輸入格式:
輸入爲若干英文單詞,每行一個,以#做爲輸入結束標誌。其中英文單詞總數不超過20個,英文單詞爲長度小於10的僅由小寫英文字母組成的字符串。設計
輸出格式:
輸出爲排序後的結果,每一個單詞後面都額外輸出一個空格。3d
輸入樣例:指針
blue red yellow green purple #
輸出樣例:調試
red blue green yellow purple
新增要求:
基礎做業
PTA:英文單詞排序
要求:
1.在PTA上完成做業
2.博客總結須要將PTA上代碼作如下修改:(1)經過以本身名字命名的文件輸入英文單詞,(2)英文單詞輸入的結束標記爲你學號最後一位數+37所對應的ASCII字符。(例如:你的學號最後一位爲9,則結束標記爲9+37=46所對應的ASCII字符「.」)(3)在不刪除原有內容的狀況下,將排序後的單詞輸出到文件。
#include<stdio.h> #include<stdlib.h> #include<string.h> int main(void) { FILE * fp = fopen("C:\\Users\\LILI\\Desktop\\LX\\lixuan.txt", "a+"); int i=0, j, k; char zf[21][11]; while(1) { fscanf(fp,"%s", &zf[i]); if(zf[i][0] == ',') break; i++; } fprintf(fp,"\n") ; for(j = 1;j <= 10;j ++) { for(k = 0;k < i;k++) { if(strlen(zf[k]) == j) fprintf(fp,"%s ", zf[k]); } } fclose(fp); return 0; }
繼續挑戰第二週的挑戰做業:返回整數數組中最大子數組的和,本週,咱們要求二維數組的子數組必須是矩形的。
具體要求參看鄒欣老師博客 現代程序設計做業2
第一步 輸入二維數組
第二步 循環進行相鄰幾行幾列相加進行比較大小
第三步 再循環比較大小的同時也不斷將最大的幾行幾列的地址存儲在另外一個數組中
第四步 輸出最大矩形子數組的和
周/日期 | 這周所花的時間 | 代碼行數 | 學到的知識點簡介 | 目前比較迷惑的問題 |
---|---|---|---|---|
3/2-3/8 | 20h | 300行 | 數組,指針的大體意義,文件入門 | 數組串的使用,指針 |
3/9-3/15 | 25h | 400行 | 二維數組,文件與數組的結合運用 | 雙for循環的流程圖(再不上課,光自學感受太艱難了) |
3/16-3/22 | 22h | 450行 | 一維數組,二維數組,幾種數組排序法 | 字符串使用 |
3/23-3/29 | 20h | 350行 | 字符串的定義及其使用 | 指針的具體使用 |