Làm thế nào để viết một chương trình C để đếm số phần tử lớn thứ 2 liên tiếp trong ngôn ngữ lập trình C ?
Dung dịch:
- #include<stdio.h>
- #include<conio.h>
- #include<stdlib.h>
- int main()
- {
- int n;
- printf("so phan tu cua mang");
- scanf("%d",&n);
- int *b=(int*)malloc(sizeof(int)*n);
- for(int e=0;e<n;e++)
- {
- scanf("%5d",(b+e));
- }
- for(int i=0;i<n;i++)
- { for(int j=i+1;j<n;j++)
- {
- if (*(b+i)>*(b+j)){
- int k=*(b+j);
- *(b+j)=*(b+i);
- *(b+i)=k;}
- }}
- int e;
- for(int d=n-2;d>=1;d--)
- {
- if (*(b+d)< *(b+n-1)){ e=*(b+d); break;}}
- int dem=0;
- for(int d=n-2;d>=1;d--)
- {
- if(*(b+d)==e) dem=dem+1;
- if(*(b+d)<e) break;
- }
- printf(" co %d so lon thu hai trong day",dem);
- getch();
- }