A=[...
11000 6 8 29 21 0 9 47 147
11001 6 8 29 21 0 10 89 149
11002 6 8 29 21 0 12 31 142
11003 6 8 29 21 0 13 71 146
11004 6 8 29 21 0 15 12 149
11005 6 8 29 21 0 16 52 151
11006 6 8 29 21 0 17 92 146
11007 6 8 29 21 0 19 32 144
11008 6 8 29 21 0 20 73 148
11009 6 8 29 21 0 22 14 148]
t=A(:,7)*1000+A(:,8) %ms
I=A(:,9)
[Imax,idmax]=max(I)
[Imin,idmin]=min(I)
plot(t,I,'o-')
本题的一个完整的c程序如下,程序在win-tc和Dev-c++下都调试通过胡孙。#include <stdio.h>
#include <stdlib.h>
#define N 80
int num,b[N]/* num表示峰值的个数,定义为全局变量,液态初值为0 */
/* b[]存储所有找大的峰值 */
int TopPoints(int d[],int n)
{int i,j
int peakmax=-32768/* 峰值最大值,初值设为整型最小值 */
for(i=0i<n-2i++)
if(d[i+1]>d[i]&&d[i+1]>d[i+2])
{ b[num]=d[i+1]
if(d[i+1]>peakmax)
peakmax=d[i+1]
num++
}
return peakmax
}
int main()
{int i,n,max,d[N]
printf("Please input number of digits:\n")/*输入数字个数*/
scanf("%d",&n)
printf("Please input %d digits one by one:\n",n)/*输入各个数字*/
for(i=0i<ni++)
scanf("%d",&d[i])
max=TopPoints(d,n)
printf("There are %d peak values.They are:\n",num)
for(i=0i<numi++)
printf("闹做源%-5d",b[i])
printf("\nThe largest is: %d\n",max)
system("pause")
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)