1. 程式人生 > 其它 >第二次上機考補題報告

第二次上機考補題報告

6-1 統計字串各類字元的個數 (15 分)

統計一個字串中的字母、數字、空格和其它字元的個數。

函式介面定義:

void fun(char s[],int b[]);

其中sb都是使用者傳入的引數。 函式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
結尾無空行

總結:

    由於我近一個月來並未按照老師要求完成學習任務,導致在這次考試中基本不會做。我現在只有在剩下的幾個星期裡努力學習才能彌補。