Mọi người cho em hỏi tại sao phải khai báo tham chiếu tại cái hàm addValue(), deleteAllValue(), và hàm execute() ạ?
Đây là code của em ạ
#include <stdio.h>
void copyArray(int arr[],int arrCopy[], int n){
for(int i = 0;i<n;i++){
arrCopy[i] = arr[i];
}
}
void swap(int &a,int &b){
int temp;
temp = a;
a = b;
b = temp;
}
void addValue(int arr[], int &i){
printf("\nEnter the number: ");
scanf("%d", &arr[i]);
i++;
}
void display(int arr[], int n){
for(int i =0;i<n;i++){
printf("\t%d", arr[i]);
}
}
void searchValue(int arr[], int n){
printf("\Enter the value to search: ");
int x;
int count = 0;
scanf("%d", &x);
for(int i=0;i<n;i++){
if(arr[i] == x){
count = 1;
}
}
if(count == 1){
for(int i=0;i<n;i++){
if(arr[i] == x )
printf("%d", i);
}
}
if(count == 0){
printf("\nThis number not exist");
}
}
void deleteFirstValue(int arr[], int &n){
printf("\nEnter the number to delete: ");
int x;
int count =0;
scanf("%d", &x);
for(int i=0;i<n;i++){
if(arr[i] == x){
count = 1;
}
}
if(count = 1){
for(int i=0;i<n;i++){
if(arr[i] == x){
for(int j =i;j<n;j++){
swap(arr[j],arr[j+1]);
}
n--;
break;
}
}
display(arr,n);
}
if(count == 0){
printf("\nThe number not exist");
}
}
void deleteAllValue(int arr[], int &n){
printf("\nEnter the number to delete: ");
int x;
int count =0;
scanf("%d", &x);
for(int i=0;i<n;i++){
if(arr[i] == x){
count = 1;
}
}
if(count = 1){
for(int i=0;i<n;i++){
if(arr[i] == x){
for(int j =i;j<n;j++){
swap(arr[j],arr[j+1]);
}
n--;
i--;
}
}
display(arr,n);
}
if(count == 0){
printf("\nThe number not exist");
}
}
void increase(int arr[], int n){
int arrCopy[100];
copyArray(arr,arrCopy,n);
for(int i =0;i<n;i++){
for(int j=i+1;j<n;j++){
if(arr[i] > arr[j]){
swap(arr[i],arr[j]);
}
}
}
display(arrCopy,n);
}
void execute(int arr[],int &n,int option){
switch(option){
case 1:{
addValue(arr,n);
break;
}
case 2:{
searchValue(arr,n);
break;
}
case 3:{
deleteFirstValue(arr,n);
break;
}
case 4:{
deleteAllValue(arr,n);
break;
}
case 5:{
display(arr,n);
break;
}
case 6:{
increase(arr,n);
break;
}
}
}
void displayMenu(){
int arr[100];
int n=0;
int option;
do{
printf("\nChoose option:");
printf("\n1.Add");
printf("\n2.Search");
printf("\n3.Delete first");
printf("\n4.Delete all");
printf("\n5.Display");
printf("\n6.Increase\n");
scanf("%d", &option);
execute(arr,n,option);
}while(1);
}
int main(){
displayMenu();
}
nhưng mà đúng vậy.
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?