- 在线时间
- 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
- 自我介绍
- 中国地质大学的学生
 |
以下是《计算单位阶跃响应的上升时间》的部分源程序:7 V W$ P- g, O _ |- r
3 }2 G' v9 Z( e# g
# include <stdio.h>2 A1 }- B. H# ~$ H& _) ?' Z* d
# include <malloc.h>
: t% m8 O9 E w) [: U; K# include <stdlib.h>
+ w: a! h2 D l8 C% w8 c9 @+ A) l3 [/ @* V/ J7 R- m/ ~
/*
: s l* S8 U/ ~& E* Q: H0 J3 J** delta---抽样时间间隔;tr---响应的上升时间;n---抽样数;f(i)---抽样数组。
3 r1 c7 s0 b& b2 h*/0 N5 T- s v# C; u7 k6 S1 O( c
3 P6 Q {" j% C. [; O$ f
void get_data(float * pf, int n);6 S. n0 r/ e6 a0 ]" q( r- g
int main(void)
: J- G" F; Y! w{6 ]) k% z3 i' L# J8 H; d+ w; d7 l# z
int i;
! o* t, l, U$ T2 K$ n O9 V8 I int n;7 K' A# c$ l7 ], [6 ~; d N
float delta;
' K+ V X' X8 t float * pf = NULL;0 }6 G# K2 W q
% h9 ]8 J% r { printf( "请如入抽样数: n = " );- a2 T# k' v3 l F' L o
scanf( "%d", &n );
2 d3 J' _5 s& ? A9 C& P printf( "请输入抽样时间间隔: delta = " );& g M" D- B$ q [3 P. U9 r
scanf( "%f", &delta );
I: }& y. B [9 m* r printf( "请输入抽样数组: f(i)\n" );
$ R% _: y8 J% ~ S2 u/ i0 n) _% R6 E' k& q- J- e' o; e
pf = ( float * )malloc( n * sizeof(float) );
- R N! S2 p# n2 K' w2 @. \6 [
. s1 ^5 G( v$ P- H' B. R if (NULL == pf); E$ d; ~( I( L/ M( z6 J
{
6 Q. x# F7 m: P. K9 }" i m5 B printf( "动态内存分配失败!\n" );
) q* T5 K* g- U6 {5 b, T exit(-1);8 E f1 V' @3 b" v5 a
}, k& V c/ k+ V3 g* T
' X: B4 \( S# W6 n6 l7 q
get_data(pf, n);( z2 f K+ m. a1 P8 ] g2 s
/ `4 E% c2 a. l
// 数据输出
( ]% J! K" q; c* ^- O8 z for(i=0; i<n; ++i)* p: ]# D7 K, Q0 [2 F0 Q) N# [
printf("f(%d) = %f\n", i+1, pf);6 J1 W4 q P$ Y: x) H9 Z' y$ L
5 _5 Y9 ]" e! I% o8 \8 @, ]' }9 g return 0;
" Z2 W: a; S( H, Q8 E}/ Q# K- W L! D7 Z: R
% q/ C# B2 V ~' M! Vvoid get_data(float * pf, int n)4 \# V2 u: I( ?. f
{- b# Y4 q2 P5 _
int i;
- r* s! {9 {9 K4 y" a0 o$ n w! X+ \
for ( i=0; i<n; ++i)1 B+ V/ ?% t$ A; E- U5 s
{; `: M: M% E8 D
printf( "f(%d) = ", i+1 );
% f7 b" d }# j scanf( "%f\n", &pf );
1 P" Z2 ]3 A0 I9 e$ |+ L }" U; l, a' ?% m* P9 [
}7 H. E# t5 Y6 l1 j3 [. {
9 J% K& c6 d) f6 U/ b) t3 U' {# z& i在敲完 void get_data(float * pf, int n) 函数时测试输出f(i)时出了问题,打印为:7 d6 ]" X. I7 i& O9 _; h& g
, `( {3 O& q; v) \7 z$ H. a2 [
+ W. h9 V% y) @/ Y& W
: }7 g1 f6 K9 Z; y0 [& H; r
* P R5 G, w2 y" x0 r
想了很久,还是想不通! |
zan
|