1. 程式人生 > >陣列逆序

陣列逆序

第一種方法

#include <stdio.h>

#define N 10

int main ()

{

    int a[N] = {0,1,2,3,4,5,6,7,8,9};

    int i;

    int tmp;

    for ( i = 0; i < N/2; i++)

    {

        tmp = a[i];

        a[i] = a[N - i - 1];    // N - i - 1 因為陣列的下表是從0開始的,所以說a[0] 和 a[9]交換位置

        a[N - i - 1] = tmp;

    }

    for (i = 0; i < N ;i++)   // 先交換 在列印

    {

        printf ("%d\n",a[i];)

    }

    return 0;

}

第二種方法:一分為二min++、max--

#include <stdio.h>

int main()

{

    int a[5] = {0,1,2,3,4};

    int min = 0;

    int max = 5 -1;

    int tmp; //交換min和max的中間值

    while(min < max)

    {

     tmp = a[min];

     a[min] = a[max];

     a[max] = tmp;

     min++;

     max--;

    }

    int i;

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

    {

        printf ("%d\n",a[i]);

    }

    return 0;

}

相關推薦

【11.2校內測試】【狀壓】【矩陣字首和】【樹狀陣列對(題意轉換)】

Solution 簽到水題,直接狀壓列舉所有情況算出答案即可。 Code #include<bits/stdc++.h> #define LL long long using namespace std; inline LL read() { LL x =

Cow Sorting [樹狀陣列][對]

傳送門 考慮每個點的貢獻,即為它與前面的數構成的逆序對個數+前面比它大的數 兩個樹狀陣列維護一下就可以了 #include<cstdio> #include<cstring> #define N 100005 #define LL long long usin

廣實1590: 1.6-04:陣列重放

題目描述 將一個數組中的值按逆序重新存放。例如,原來的順序為8,6,5,4,1。要求改為1,4,5,6,8。 輸入 輸入為兩行:第一行陣列中元素的個數n(1<n<100),第二行是n個整數,每兩個整數之間用空格分隔。 輸出 輸出為一行:輸出逆序後陣列的整數,每兩個整數之間

陣列重放

描述: 將一個數組中的值按逆序重新存放。例如,原來的順序為1,2,3,4,5。要求改為5,4,3,2,1。 輸入: 輸入為兩行:第一行陣列中元素的個數n(1<n<100),第二行是n個整數,每兩個整數之間用空格分隔。 輸出: 輸出為一行:

基礎練習:1105:陣列重存放

1105:陣列逆序重存放 【題目描述】 將一個數組中的值按逆序重新存放。例如,原來的順序為8,6,5,4,1。要求改為1,4,5,6,8。 【輸入】 輸入為兩行:第一行陣列中元素的個數n(1<n<100),第二行是n個整數,每兩個整數之間用空格分隔。 【輸出】 輸出為一行:輸出逆

陣列輸出

**描述:將一個數組中的值按逆序重新存放。例如,原來的順序為 8,6,5,4,1。要求改為 1,4,5,6,8。 輸入:輸入為兩行:第一行陣列中元素的個數 n(1<n<100),第二行是 n 個整數,每兩 個整數之間用空格分隔。 輸出:輸出為一行:輸

1458:c語言實驗題—陣列2

下面是程式碼 已通過平臺ac #include<stdio.h> int main() { int a[100], b[100], m, n, i; scanf("%d", &n);//輸入n for(i=0; i<n; i++) { scanf("%d",

hdu 2838 Cow Sorting (樹狀陣列+對變形)

題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=2838 Problem Description Sherlock's N (1 ≤ N ≤ 100,000) cows are lined up to be milked

Java 案例六 奇數求和 水仙花 列印乘法口訣 列印陣列 輸出陣列 選擇排序 氣泡排序 折半查詢

 1.奇數求和 /* 編寫程式求1+3+5+...+99的和值 有一個數據從0變到100 迴圈 int i = 0; ,+100 ++ 從0-100,範圍內找到奇數 數%2==1 奇數 所有的奇數求和 需要變數,儲存奇數的求和 實現步驟: 1.程式中可以使用的資料

陣列

第一種方法 #include <stdio.h> #define N 10 int main () {     int a[N] = {0,1,2,3,4,5,6,7,8,9};     int i;     int tmp;     for ( i = 0;

java實現陣列

public class Reverse { public static void main(String[] args) { // TODO Auto-generated method st

lua學習筆記15:table陣列

陣列的逆序,只能用於陣列,不能用於雜湊表 function reverseTable(tab) local tmp = {} for i = 1, #tab do local key = #

使用js實現陣列

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-

java簡單陣列

import java.util.*; public class 陣列逆序輸出 { public static void main(String[] args){ Scanner input = new Scanner(System.in); System

1105:陣列重存放

//注意i變數的生命週期,兩個for迴圈中都要使用到,所以定義需要放在前面#include <stdio.h>#include<iostream>using namespace std;int a[110];int main(){    int n,i

C++ 計166-1 陣列輸出

/* 題目描述 輸入10個整數存入一維陣列,然後按逆序輸出。 輸入 輸入包括一行。 10個以空格隔開的整數。 輸出 逆序的10個整數,整數以空格隔開。 樣例輸入 1 3 5 9 7 6 8 2 4 0 樣例輸出 0 4 2 8 6 7 9 5 3 1 提示*

C#基礎 Array Reverse 陣列

慈心積善融學習,技術願為有情學。善心速造多好事,前人栽樹後乘涼。我今於此寫經驗,願見文者得啟發。  .NET Framework : 4.7.2        IDE : Visual Stud

Java 案例六 奇數求和 水仙花 列印乘法口訣 列印陣列 輸出陣列 選擇排序 氣泡排序 折半查詢

 1.奇數求和 /* 編寫程式求1+3+5+...+99的和值 有一個數據從0變到100 迴圈 int i = 0; ,+100 ++ 從0-100,範圍內找到奇數 數%2==1 奇數 所有的奇數求和 需要變數,儲存奇數的求和 實現步驟: 1.程式中可

Java程式設計之陣列輸出

工具:IntelliJ IDEA 15.0.5  程式碼很簡單,上程式碼 /* 題目:將一個數組逆序輸出。 1.程式分析:用第一個與最後一個交換。 */ import java.util.Sc

將一個整形陣列,如陣列a[5]={1,2,3,4,5},之和陣列a變成了{5,4,3,2,1};

方法一: #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include&