Coursera C程式設計高階 第二週

2021-08-19 07:56:55 字數 2971 閱讀 8631

已知乙個整數陣列x,其中的元素彼此都不相同。找出給定的陣列中是否有乙個元素滿足x[i]=i的關係,陣列下標從0開始。

舉例而言,如果x=,則x[3] = 3,因此3就是答案。

輸入第一行包含乙個整數n (0 < n < 100),表示陣列中元素的個數。

第二行包含n個整數,依次表示陣列中的元素。

輸出為乙個整數,即滿足x[i]=i的元素,若有多個元素滿足,輸出第乙個滿足的元素。若沒有元素滿足,則輸出「n」。

#includeusing namespace std;

int main()

; cin>>n;

for(int i=0;i>x[i];

for(i=0;i我國有4大淡水湖。

a說:洞庭湖最大,洪澤湖最小,鄱陽湖第三。

b說:洪澤湖最大,洞庭湖最小,鄱陽湖第二,太湖第三。

c說:洪澤湖最小,洞庭湖第三。

d說:鄱陽湖最大,太湖最小,洪澤湖第二,洞庭湖第三。

已知這4個湖的大小均不相等,4個人每人僅答對乙個,

請程式設計按照鄱陽湖、洞庭湖、太湖、洪澤湖的順序給出他們的大小排名。

輸入無。

輸出為4行,第1行為鄱陽湖的大小名次,從大到小名次分別表示為1、2、3、4;第2、3、4行分別為洞庭湖、太湖、洪澤湖的大小名次。

#include using namespace std;

int main()

} }

} }

return 0;

}

有乙個小型的報賬系統,它有如下功能:

(1)統計每個人所報發票的總錢數

(2)統計每類發票的總錢數

將此系統簡化為如下:假設發票類別共有a、b、c三種;一共有三個人,id分別為1、2、3。

輸入系統輸入包含三行,每行第乙個數為人員id(整型,1或2或3),第二個數為發票總張數(張數不超過100),之後是多個發票類別(字元型,a或b或c)和相應發票金額(單進度浮點型,不超過1000.0)。

輸出包含六行,前三行為每人(按id由小到大輸出)所報發票總錢數(保留兩位小數),後三行為每類發票的總錢數(保留兩位小數)。

#include using namespace std;  

int main()

; float sum_type[3]=;

int i=0;

for(int j=0;j<3;j++)//第一層迴圈是人員的迴圈;j是作為動態的id指標,進行人員迴圈 }

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

cout《甲殼蟲的《a day in the life》和《tomorrow never knows》膾炙人口,如果告訴你a day in the life,真的會是tomorrow never knows?相信學了計概之後這個不會是難題,現在就來實現吧。

讀入乙個格式為yyyy-mm-dd的日期(即年-月-日),輸出這個日期下一天的日期。可以假定輸入的日期不早於1600-01-01,也不晚於2999-12-30。

輸入僅一行,格式為yyyy-mm-dd的日期。

輸出也僅一行,格式為yyyy-mm-dd的日期

網上答案

#include //注意此標頭檔案一定要寫對,否則提交出錯

int main()

else

break;

case 12:

if (day == 31)

else

break;

case 2:

if (leapyear)

else

}

else

else

} break;

case 4:

case 6:

case 9:

case 11:

if (day == 30)

else

break;

default:

break;

} printf("%d-%02d-%02d\n", year, month, day);

return 0;

}

有一種細菌分為a、b兩個亞種,它們的外在特徵幾乎完全相同,僅僅在繁殖能力上有顯著差別,a亞種繁殖能力非常強,b亞種的繁殖能力很弱。在一次為時乙個 小時的細菌繁殖實驗中,實驗員由於疏忽把細菌培養皿搞亂了,請你編寫乙個程式,根據實驗結果,把兩個亞種的培養皿重新分成兩組。

輸入有多行,第一行為整數n(n≤100),表示有n個培養皿。

其餘n行,每行有三個整數,分別代表培養皿編號,試驗前細菌數量,試驗後細菌數量。

輸出有多行:

第一行輸出a亞種培養皿的數量,其後每行輸出a亞種培養皿的編號,按繁殖率公升序排列。

然後一行輸出b亞種培養皿的數量,其後每行輸出b亞種培養皿的編號,也按繁殖率公升序排列。

#includeusing namespace std;

int main()

for(i=0;iy[j])

}int max=0;

for(i=0;i有一批易感人群住在網格狀的宿舍區內,宿舍區為n*n的矩陣,每個格點為乙個房間,房間裡可能住人,也可能空著。在第一天,有些房間裡的人得了流感,以後每天,得流感的人會使其鄰居傳染上流感,(已經得病的不變),空房間不會傳染。請輸出第m天得流感的人數。

輸入第一行乙個數字n,n不超過100,表示有n*n的宿舍房間。

接下來的n行,每行n個字元,』.』表示第一天該房間住著健康的人,』#』表示該房間空著,』@』表示第一天該房間住著得流感的人。

接下來的一行是乙個整數m,m不超過100.

輸出第m天,得流感的人數

#includeusing namespace std;

int main()

}} }

int sum=0;

for(i=1;icout

}

Coursera C 程式設計 第二週筆記

第二課 引用 int n 100 const int r n r 200 編譯錯 n 300 沒問題 不能通過常引用去修改其引用的內容 第三課 const關鍵字 定義常量指標 int n,m const int p n p 5 編譯錯 n 4 ok p m ok,常量指標可以指向其他內容 指標常量不...

Coursera C程式設計高階 期末考試

注意 總時間限制 1000ms 記憶體限制 65536kb 輸入二個正整數m 和 k,其中1 m 100000,1 k 5 判斷m 能否被19整除,且恰好含有k個3,如果滿足條件,則輸出yes,否則,輸出no。例如,輸入 43833 3 滿足條件,輸出yes 如果輸入 39331 3 儘管有3個3,...

Coursera C程式設計高階 第三週作業

注意 總時間限制 1000ms 記憶體限制 65536kb 輸入乙個句子 一行 將句子中的每乙個單詞翻轉後輸出。只有一行,為乙個字串,不超過500個字元。單詞之間以空格隔開。所謂單詞指的是所有不包含空格的連續的字元。這道題請用cin.getline輸入一行後再逐個單詞遞迴處理。翻轉每乙個單詞後的字串...