第二次上機考補題報告
阿新 • • 發佈:2021-12-12
6-1 統計字串各類字元的個數 (15 分)
統計一個字串中的字母、數字、空格和其它字元的個數。
函式介面定義:
void fun(char s[],int b[]);
其中s
和b
都是使用者傳入的引數。 函式fun統計字串s
中的字母、數字、空格和其它字元的個數,並將結果放在b
陣列中。
裁判測試程式樣例:
#include "stdio.h"
void fun(char s[],int b[]);
int main ()
{ char s1[80];int a[4]={0};
int k;
gets(s1);
fun(s1,a);
for(k=0;k<4;k++) printf("%4d",a[k]);
return 0;
}
/* 請在這裡填寫答案 */
輸入樣例:
jfh h#$yf7y
結尾無空行
輸出樣例:
7 1 1 2
原始碼
修改後的程式碼
6-2 求方陣和 (15 分)給定一個N×N的方陣,本題要求計算該方陣除對角線、最後一列和最後一行以外的所有元素之和。對角線為從方陣的左上角至右下角的連線。
函式介面定義:
void createMatrix(int a[][N]); //建立n階方陣a[N][N],裁判程式實現,細節略。
int sumMatrix(int a[][N]); //計算方陣除對角線、最後一列和最後一行以外的所有元素之和。
裁判測試程式樣例:
#include<stdio.h>
#define N 10
void createMatrix(int a[][N]);
int sumMatrix(int a[][N]);
int main()
{
int a[N][N];
createMatrix(a);
printf("%d\n",sumMatrix(a));
return 0;
}
/* 請在這裡填寫答案 */
輸入樣例:
在這裡給出一組輸入。例如:
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
結尾無空行
輸出樣例:
在這裡給出相應的輸出。例如:
360
原始碼
修改後的程式碼
7-1 最受歡迎的菜品 (20 分)某自助餐廳要求餐廳的客人在就餐後進行投票,選出一款最喜愛的菜品,每日營業結束後進行投票統計,選出投票數最多的菜品為最受歡迎的菜品。 請編寫一個程式幫助餐廳快速完成這個統計工作。
輸入格式:
第1行中給出一個正整數n(不超出1000),表示菜品的數量,每個菜品使用1~n進行編號。 第2行輸入若干以空格間隔的正整數,表示客人投出的最喜愛的菜品編號,以鍵盤結束符^Z或檔案結束符結束輸入。
輸出格式:
每行輸出一個最受歡迎的菜品編號和得票數。 菜品編號和得票數間隔1個空格。如果有並列的最受歡迎的菜品,則按編號從小到大的順序輸出每一個菜品,每個菜品佔一行。
輸入樣例:
10
6 8 5 8 9 3 6 6 8 2 1 4 7 2 8 3 8 9 6 3 8 10 6 6
結尾無空行
輸出樣例:
6 6
8 6
結尾無空行
7-2 字串迴圈左移 (20 分)
輸入一個字串和一個非負整數N,要求將字串迴圈左移N次。
輸入格式:
輸入在第1行中給出一個不超過100個字元長度的、以回車結束的非空字串;第2行給出非負整數N。
輸出格式:
在一行中輸出迴圈左移N次後的字串。
輸入樣例:
Hello World!
2
結尾無空行
7-3 順時針矩陣 (30 分)
讀入20內正整數正整數n,輸出順時針分佈的矩陣。矩陣內容為1,2,。。。到n*n。
輸入格式:
每個例項包含一個20內正整數。
輸出格式:
順時針分佈的矩陣,每個資料佔4位。
輸入樣例:
7
結尾無空行
輸出樣例:
19 20 21 22 23 24 1
18 37 38 39 40 25 2
17 36 47 48 41 26 3
16 35 46 49 42 27 4
15 34 45 44 43 28 5
14 33 32 31 30 29 6
13 12 11 10 9 8 7
結尾無空行
總結:
由於我近一個月來並未按照老師要求完成學習任務,導致在這次考試中基本不會做。我現在只有在剩下的幾個星期裡努力學習才能彌補。