英文電影中參演人員名單一般以某種方式進行排版顯示。給定乙個未排版的檔案listin.txt,該檔案中每行參演人員名單由冒號「:」分隔成前後兩部分,但格式雜亂無章,單詞(由除空格和水平製表符之外的其它字元構成)之間可能有多個空格或水平製表符分隔。編寫程式,要求將其按如下排版規則排版輸出到另乙個檔案listout.txt中:
1.從標準輸入讀取一整數,作為排版後所有各行冒號「:」在一行中的固定位置;假設輸入的整數肯定大於排版後所有各行冒號「:」前的字元個數,位置從1開始計數;
2.冒號「:」左邊的單詞串以行頭為基準左對齊,左邊的最後乙個單詞與冒號之間以空格填充;冒號「:」右邊的單詞串以冒號「:」為基準左對齊,最後乙個單詞後只有回車換行符,不再有其它字元;
3.冒號「:」左右兩邊的單詞間都只有乙個空格分隔,並且要求冒號兩邊至少各有乙個空格。
假設輸入檔案中每行字元個數不超過100。
待排版的參演人員名單從當前目錄下的listin.txt檔案中讀入;表示冒號「:」位置的整數從標準輸入讀入。
排版後的參演人員名單輸出到當前目錄下的listout.txt中。
假設檔案listin.txt內容為:
digital intermediate by : efilm
supervising digital colorist : steven j. scott
second colorist :andrew francis
digital intermediate producer:loan phan
digital intermediate editor: devon miller
表示冒號固定位置的整數為:
檔案listout.txt中的內容應為:
輸入的檔案listin.txt中有五行參演人員名單,要求排版後冒號「:」位於第40個字元的位置,按照上述排版規則輸出到檔案listout.txt中
#include
#include
#include
intmain()
scanf
("%d"
,&num)
;//冒號位置
for(x=
1;x(c,num,g,x)
;//輸出
fclose
(f);
fclose
(g);
return0;
}voidpr(
char c[
100]
,int num,file *g,
int x)
while
((c[x]
[i]==
'\t'
||c[x]
[i]==
' ')
&&(c[x]
[i+1]==
'\t'
||c[x]
[i+1]==
' ')
)//去掉兩個單詞之間多餘空格和水平製表符
i++;if
(c[x]
[i]==
'\t'
)fprintf
(g,"%c"
,c[x]
[i])
; count++;}
}
筆記1 C語言概述
1.c語言起源 c語言是由unix的研製者丹尼斯 里奇和肯 湯普遜於1970年研製出的b語言的基礎上發展完善起來的。19世紀70年代初期,貝爾實驗室的丹尼斯 里奇第一次將b語言改為c語言。2.c語言特點 c語言是一種面向過程的語言,同時具有高階語言和組合語言的優點。由於具有良好的移植性,稍加修改或不...
C基礎1 C語言環境
c語言簡介 c語言是一種通用的,面向過程式的計算機程式語言。1972年,為了移植與開發unix作業系統,丹尼斯 里奇在貝爾 實驗室設計開發了c語言。當前最新使用的c語言標準為c11,在他之前的c語言標準為c99。include int main 這個應該是最基礎最標準的寫法了,在vc編譯器中第乙個 ...
1 C 語言發展史
本部分簡單介紹從c 1到c 5各個版本的語言新特性,1.簡單的資料型別 我們先使用c 1編寫乙個product類,如下圖所示 c 2 中的強型別集合 泛型 c 3 自動實現屬性和簡化初始化 c 4 命名引數 以上就是product類從c 1到c 4的演變歷程總結如下 2.排序和過濾 下面我們將使用按...