Tổng hợp các bài tập về mảng 1 chiều ngôn ngữ C

1. Tỉnh tổng các số nguyên tố trong mảng 1 chiều

bool ktsnt(int n){
if (n<2)
return 0;
for (int i=2; i<=sqrt(n); i++)
if (n%i==0)
return 0;
return 1;
}long tinhtongsonguyento(int a[], int n){long s=0;
for (int i=0; i<n; i++)
if (ktsnt(a[i])==1)
s=s+a[i];
return s;
}

2. Kiểm tra mảng có đối xứng hay không

int Kiemtramangdoixung(int a[], int n)
{
for(int i = 0; i < n/2; i++)
{
if(a[i] != a[n-i-1])
{
return -1;
break;
}
}
return 1;
}

3. Xuất các số chính phương trong mảng

bool soCP(int n){
int i = 0;
while(i*i <= n){
if(i*i == n){
return true;
}
++i;
}
return false;
}
void xuatscp(int a[], int n){
for(int i = 0; i<n; i++)
if(soCP(a[i]))
printf(“%4d”,a[i]);
}

4. Cho một mảng số nguyên hãy kiểm tra mảng xem có đang sắp xếp theo chiều tăng dần hay không.

int kiemtratangdan(int a[], int n){
int flag=1;
for(int i=0; i<n-1; i++){
if(a[i] > a[i+1]){
flag= 0;
break;
}
}
return flag;
}