三、PTA實驗作業(數組)


7-2 求最大值及其下標(20 分)

本題要求編寫程序,找出給定的n個數中的最大值及其對應的最小下標(下標從0開始)。

輸入格式:

輸入在第一行中給出一個正整數n(1<n10)。第二行輸入n個整數,用空格分開。

輸出格式:

在一行中輸出最大值及最大值的最小下標,中間用一個空格分開。

1.本題PTA提交列表

2.設計思路(包括流程圖),主要描述題目算法

   按照數組的順序和后面的數字一次次比較,一直到找出最大的數。

最終代碼如下

 

#include<stdio.h>

int main(){
  int n,i,j;
  scanf("%d",&n);
  int a[100];
  for(i=0;i<n;i++){
    scanf("%d",&a[i]);
  }
    for(j=0;j<n;j++){
      if(a[0]<a[j]){
        a[0]=a[j];
        i=j;
      }
      if(a[0]==a[j]){
        a[0]=a[j];
        if(i>j){
            i=j;
        }
      }
  }
  printf("%d %d",a[i],i);

  return 0;
}

7-4 查找整數(10 分)

本題要求從輸入的N個整數中查找給定的X。如果找到,輸出X的位置(從0開始數);如果沒有找到,輸出“Not Found”。

輸入格式:

輸入在第一行中給出兩個正整數N(≤20)和X,第二行給出N個整數。數字均不超過長整型,其間以空格分隔。

輸出格式:

在一行中輸出X的位置,或者“Not Found”。

輸入樣例1:

5 7
3 5 7 1 9

輸出樣例1:

2

輸入樣例2:

5 7
3 5 8 1 9

輸出樣例2:

Not Found

1.本題PTA提交列表

 

 

2.設計思路(包括流程圖),主要描述題目算法

設置一個數組,然后用一個循環將n個數放入數組中,之后再用if來尋找數字,如果超出數組的范圍沒有找到就輸出NOT FOUND

最終代碼如下

#include  <stdio.h> 
#define N 20  
int main(void) {  
    long a[N];  
    int i, n, x;  
    scanf("%d%d", &n, &x);  
    for(i = 0; i < n; ++i)  
        scanf("%ld", &a[i]);  
    for(i = 0; i < n; ++i) {  
        if(a[i] == x) {  
            printf("%d\n", i);  
            break;  
        }  
    }  
    if(i >= n)  
        printf("Not Found\n");  
    return 0;  
}  

 

7-3 將數組中的數逆序存放(20 分)

本題要求編寫程序,將給定的n個整數存入數組中,將數組中的這n個數逆序存放,再按順序輸出數組中的元素。

輸入格式:

輸入在第一行中給出一個正整數n(1n10)。第二行輸入n個整數,用空格分開。

輸出格式:

在一行中輸出這n個整數的處理結果,相鄰數字中間用一個空格分開,行末不得有多余空格。

輸入樣例:

4
10 8 1 2

輸出樣例:

2 1 8 10

1.本題PTA提交列表

 2.設計思路(包括流程圖),主要描述題目算法

最終代碼如下

#include <stdio.h>

int main()
{
    int i, n, swap, array[10];
    scanf("%d", &n);
    for (i = 0; i < n; i++)
        scanf("%d", &array[i]);
    for (i = 0; i < n/2; i++)
    {
        swap = array[i];
        array[i] = array[n-1-i];
        array[n-1-i] = swap;
    }
    for (i = 0; i < n-1; i++)
        printf("%d ", array[i]);
    printf("%d\n", array[n-1]);
    return 0;
}

最終pta排名

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM