for(i=0;i<2048;i++) {
fprintf(fp,\
printf(\
}
if((fp=fopen(\{ }
for(i=0;i<2048;i++) {
b[i][0]=a[i][0];
b[i][1]=a[i][1];
fprintf(fp,\printf(\
printf(\ } 2.3 任务效果
} fclose(fp);
3、按钮实现数据的读写
3.1 任务要求
编辑程序。实现数据的读写。
3.2 任务步骤 3.2.1新建C++文档。 3.2.2输入程序并运行。 void CShiyanDlg::OnDushuju()
{
// TODO: Add your control notification handler code here FILE *fp;
int datanum=0,data[2048]; float data_ph[2048]; int i;
int data1,data2;
if((fp=fopen(\{
printf(\
exit(0); }
while(!feof(fp))
{
}
fscanf(fp,\data[datanum++]=data2; fscanf(fp,\
for(i=0;i<2048;i++) 0;
}
printf(\{
if(i<2||i>2045)
data_ph[i]=data[i];
else
data_ph[i]=(data[i-2]+4*data[i-1]+6*data[i]+4*data[i+1]+data[i+2])*1.0/16.
fclose(fp);
if((fp=fopen(\
{ } 3.3 任务效果
}
for(i=0;i<2048;i++) { } fclose(fp);
fprintf(fp,\printf(\exit(0);
4、显示图谱
4.1 任务要求
设计一个对话框,编辑程序。实现图谱的显示。 4.2 任务步骤
4.2.1编辑一个对话框并在对话框内编辑按钮。 4.2.2分别对每个按钮进行编程。 void CShiyanDlg::OnYuantu()
{
double xViewport,yViewport;
int max;
CWnd *pWnd=GetDlgItem(IDC_P1);
CDC *pDC =pWnd->GetDC();
pDC->SetMapMode(MM_ANISOTROPIC);
CRect rect;
double scale;
GetDlgItem(IDC_P1)->GetWindowRect(&rect);
scale=25.4*10/pDC->GetDeviceCaps(LOGPIXELSX); CDC MemDC;
CBitmap MemBitmap;
MemDC.CreateCompatibleDC(NULL);
MemBitmap.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height()); MemDC.FillSolidRect(0,0,rect.Width(),rect.Height(),RGB(255,255,255)); max=data[0];
for(int i=1;i<2048;i++)
{if (data[i]>max ) max=data[i]; }
for ( i = 0;i<2048;i++) {
xViewport = (i+1)*rect.Width()/2048;
yViewport = (0.67*data[i]*rect.Height())/max+10;
pDC->SetPixel(xViewport,rect.Height()-yViewport-1,RGB(255,0,0)); pDC->BitBlt(0,0,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY);
}
MemBitmap.DeleteObject(); MemDC.DeleteDC(); }
void CShiyanDlg::OnWudianpinghua()
pDC->DeleteDC();
{
double xViewport,yViewport; float max;
CWnd *pWnd=GetDlgItem(IDC_P2);
CDC *pDC =pWnd->GetDC();
pDC->SetMapMode(MM_ANISOTROPIC);
CRect rect;
double scale;
GetDlgItem(IDC_P2)->GetWindowRect(&rect);
scale=25.4*10/pDC->GetDeviceCaps(LOGPIXELSX); CDC MemDC;
CBitmap MemBitmap;
MemDC.CreateCompatibleDC(NULL);
MemBitmap.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height()); MemDC.FillSolidRect(0,0,rect.Width(),rect.Height(),RGB(255,255,255)); max=data_ph[0];
for(int i=1;i<2048;i++)
{if (data_ph[i]>max ) max=data_ph[i]; }
for ( i = 0;i<2048;i++) {
xViewport = (i+1)*rect.Width()/2048;
yViewport = (0.67*data_ph[i]*rect.Height())/max+10;
pDC->SetPixel(xViewport,rect.Height()-yViewport-1,RGB(255,0,0)); }
pDC->BitBlt(0,0,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY); MemBitmap.DeleteObject(); MemDC.DeleteDC(); }
pDC->DeleteDC();