Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Dalam program C, selepas melakukan beberapa operasi kenaikan julat tatasusunan, cetak tatasusunan yang diubah suai

Dalam program C, selepas melakukan beberapa operasi kenaikan julat tatasusunan, cetak tatasusunan yang diubah suai

王林
王林ke hadapan
2023-09-13 23:49:021447semak imbas

Dalam program C, selepas melakukan beberapa operasi kenaikan julat tatasusunan, cetak tatasusunan yang diubah suai

Diberi arr[m] tatasusunan yang mengandungi m integer dan n (nilai ​​untuk ditambahkan pada tatasusunan) dan r pertanyaan diberi sedikit permulaan dan akhir. Untuk setiap pertanyaan kita perlu menambah nilai n dari awal hingga akhir had dalam tatasusunan. .

Tambah nilai n dan cetak tatasusunan.

Algoritma
    Input:
    arr[] = {1, 2, 3, 4, 5}
    query[] = { { 0, 3 }, { 1, 2 } }
    n = 2
    Output:
    If we run above program then it will generate following output:
    Query1: { 3, 4, 5, 6, 5 }
    Query2: { 3, 6, 7, 6, 5 }
  • Contoh
  • START
    STEP 1 : DECLARE A STRUCT range for start AND end LIMITS
    STEP 2 : IN FUNCTION add_tomatrix(int arr[], struct range r[], int n, int size, int m)
       int i, j, k;
       LOOP FOR i = 0 AND i < m AND i++
          LOOP FOR j = r[i].start AND j<= r[i].end AND j++
             arr[j] = arr[j] + n
          END FOR
          LOOP FOR k = 0 AND k < size AND k++
             PRINT arr[k]
          END FOR
       END FOR
    STOP
  • Output
Jika kita menjalankan program di atas maka ia akan menghasilkan output berikut -

#include <stdio.h>
struct range{
   int start, end; //struct to give the range for the array elements
};
int add_tomatrix(int arr[], struct range r[], int n, int size, int m){
   int i, j, k;
   for ( i = 0; i < m; i++) //for all the elements in a struct we defined{
      for(j = r[i].start; j<= r[i].end; j++) //from where till where we want our results to be updated{
         arr[j] += n; //add the value of the particular range
      }
      printf("Query %d:", i+1);
      for ( k = 0; k < size; k++){
         printf(" %d",arr[k]); // print the whole array after every query
      }
      printf("</p><p>");
   }
}
int main(int argc, char const *argv[]){
   int arr[] ={3, 4, 8, 1, 10};
   struct range r[] = {{0,2}, {1, 3}, {3, 4}};
   int n = 2;
   int size = sizeof(arr)/sizeof(arr[0]);
   int m = sizeof(r)/sizeof(r[0]);
   add_tomatrix(arr, r, n, size, m);
   return 0;
}

Atas ialah kandungan terperinci Dalam program C, selepas melakukan beberapa operasi kenaikan julat tatasusunan, cetak tatasusunan yang diubah suai. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam