- 在线时间
- 6 小时
- 最后登录
- 2012-4-16
- 注册时间
- 2012-2-21
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 100 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 34
- 相册
- 0
- 日志
- 0
- 记录
- 1
- 帖子
- 14
- 主题
- 2
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   30.53% TA的每日心情 | 开心 2012-2-27 16:45 |
|---|
签到天数: 4 天 [LV.2]偶尔看看I
- 自我介绍
- 中国地质大学的学生
 |
以下是《计算单位阶跃响应的上升时间》的部分源程序:! l P" K4 L2 R; r
, |* `" x" ^( A( c6 M( e
# include <stdio.h>' I1 d: z, t. ^ r# A8 s" l
# include <malloc.h>
8 w- t* [. d( O# ~. a, {7 P# include <stdlib.h>2 `8 a; v+ p" _% V% Z# h
: A2 Y0 U$ A7 M/ a/*
: Q# F% u p I** delta---抽样时间间隔;tr---响应的上升时间;n---抽样数;f(i)---抽样数组。1 V1 R' W: t$ m l, E
*/& O/ H- K' I# W; o
4 \, u6 B8 |/ e+ p" q' g
void get_data(float * pf, int n);
7 R! `) f& C1 {* lint main(void)
& U6 r+ r# A( p$ h7 q* ^. f{
6 a6 `9 }- ]4 l% r: T' u int i;
# a4 f- X6 _* z int n;
4 {: E7 ^" {$ h5 G5 z+ I$ O9 M: Y float delta;3 ~: h& _8 ^& v8 O2 z( D
float * pf = NULL;
8 t+ {8 v( c/ q9 U
) P1 F4 i$ q* _" s1 B printf( "请如入抽样数: n = " );; }# `* \0 }% [ }% n- A
scanf( "%d", &n );
8 D) l5 e+ ~1 @8 A3 E! A/ j printf( "请输入抽样时间间隔: delta = " ); I \5 a A- J$ B1 K
scanf( "%f", &delta );* x5 E) e, t1 r- F% U- ` a9 m
printf( "请输入抽样数组: f(i)\n" );
4 G3 Q2 x5 V% Y* W) L; J, f! I2 i+ }$ b. A5 G9 Y
pf = ( float * )malloc( n * sizeof(float) );6 c, p; X; d- q- r( b
* j, x# Z, ?5 [. ]
if (NULL == pf)
% B3 `: S, a2 n {
5 c) ~' C0 W8 r! ~3 U printf( "动态内存分配失败!\n" );
' {# s2 {: n( y0 a$ M" Y6 C exit(-1);+ o" ^* ~# Q. m! b9 O
}. H# N$ c% q- }2 T4 b7 _$ H
8 m+ ]* o4 p9 t- x( o get_data(pf, n);- B0 E. t: y& `1 o( T ]
8 t7 e& W; F8 B, d( c
// 数据输出
5 h" u- m- U* ^/ D. ]) e9 p for(i=0; i<n; ++i)
2 H% e" Y( w# o: P printf("f(%d) = %f\n", i+1, pf);
. u5 F2 C$ o, B8 S' T( A' z7 J# E2 ]
return 0;
]3 K5 `2 @* A# L}
8 s4 Y" @6 R! q- l A4 i i9 J$ F
1 m) `7 d6 J$ H7 l. @4 t6 fvoid get_data(float * pf, int n)
( z( H6 }: @9 Q5 {{7 q- G3 l3 C1 c0 {0 O9 W# q! i
int i;) I* ^& B% ~' N- j, q% B) A
6 o& P' g- T. o- U* L
for ( i=0; i<n; ++i)
# U! t" H" o3 u. y {0 S( N3 T; N. ^1 ]
printf( "f(%d) = ", i+1 );
; f3 |3 {- J7 E* T! e' p scanf( "%f\n", &pf );: |7 a7 H! u% o) D
}$ w, n8 B! P! `/ |
}5 b& m! _' r% J$ i9 i. G; P: y6 x d
! z$ G) g6 y8 k& |" [( e
在敲完 void get_data(float * pf, int n) 函数时测试输出f(i)时出了问题,打印为:
$ ^- z0 T$ w a1 x5 ~8 M* [. K) l
% M/ }7 `/ U4 [: [) E. g2 X
) z# U$ F* e' G4 P) Z- a " P+ U d& j! |# f, u1 d& R
3 N' b. u; ^, U/ y/ b# v想了很久,还是想不通! |
zan
|