回覆列表
  • 1 # 卡麗麥妹妹

    例6-2 將10個整數存入陣列,刪除陣列中的某個元素。例如,陣列中有1,2,3,4,5,6,7,8,9,10共10個元素,刪除第5個元素後,陣列中剩下9個元素1,2,3,4,6,7,8,9,10。首先定義一個長度為10的int型陣列,用來存放10個整數。用迴圈輸入陣列的每個元素,以及要刪除元素的序號(假設序號為n)。使用迴圈,將陣列中序號n後的所有元素向前移動一位,然後刪除最後一個元素。這裡要注意陣列的下標是從0開始的,序號為n的陣列元素,對應陣列的下標應該是n-1。讀者可以思考:如果本例是向陣列插入一個元素,迴圈應該如何來寫?main(){int nArray[10], i,num;/*輸入10個整數*/printf("\nPlease input 10 integers: ");for(i=0;i<10;i++)scanf("%d",& nArray [i]);/*輸入要刪除的元素序號*/printf("\nPlease input sequence number of the element to delete: ");scanf("%d",&num);/*從nArray [num](第num+1個元素)開始,依次向前移動一位*/for(i=num;i<10;i++)nArray [i-1]= nArray [i];/*刪除最後一個元素*/nArray [10]=0;/*輸出處理後的陣列,最後一位不需要輸出*/printf("\nProcessed array: ");for(i=0;i<9;i++)printf("%d ", nArray [i]);}程式執行後,輸入10個整數:Please input 10 integers: 1 2 3 4 5 6 7 8 9 10Please input sequence number of the element to delete: 5Processed array: 1 2 3 4 6 7 8 9 10

  • 2 # 使用者3486140770140

    讀者可以思考:如果本例是向陣列插入一個元素,迴圈應該如何來寫?

    main()

    {

    int nArray[10], i,num;

    /*輸入10個整數*/

    printf("\nPlease input 10 integers: ");

    for(i=0;i

    scanf("%d",& nArray [i]);

    printf("\nPlease input sequence number of the element to delete: ");

    scanf("%d",&num);

    /*從nArray [num](第num+1個元素)開始,依次向前移動一位*/

    for(i=num;i

    nArray [i-1]= nArray [i];

    nArray [10]=0;

    /*輸出處理後的陣列,最後一位不需要輸出*/

    printf("\nProcessed array: ");

    for(i=0;i

    printf("%d ", nArray [i]);

    }

    程式執行後,輸入10個整數:

    Please input 10 integers: 1 2 3 4 5 6 7 8 9 10

    Please input sequence number of the element to delete: 5

    Processed array: 1 2 3 4 6 7 8 9 10

  • 中秋節和大豐收的關聯?
  • 隨身碟PE安裝原版Win7系統教程?