|

楼主 |
发表于 2005-3-31 02:09:19
|
显示全部楼层
前几天看完啦折大的c因为忙于看数据结构就忘啦点评完.下面接着点评6 O, J( U; `) A' {1 B
对于指针课程分的很详细讲有下面的例子是指针数组0 @ @6 _: R s5 s
#include<stdio.h>
0 F. m$ W* s, Vvoid main(). `6 F& s# L- F4 w" H* V, J
{, R" y) c& @" k( G
char *name[4]={"wang","li","zhao",jin"};. |7 D" n+ v0 n! [& P: m. t
char **pp;
5 U4 k; {/ Q# C: o8 Mfor(pp=name;pp<name+4;pp++)
4 f( m9 |5 A$ T" X( E! dprintf("%c",**pp+1);! K0 |$ T8 ^2 M$ T
}. E2 R5 B2 C+ ^& \9 {
但我唯一觉得不足的是数组指针的例子太少可能和课时太少有关吧!对于链表我认为是讲的最好的部分在该课程中从算法到流程及最后的程序书写下面给出链表的一个例子:+ V: z1 e9 F F( V# w
#include "stdio.h"& [! ^+ v) m8 @5 K3 z( w
struct student{5 Q/ U' E# n; i# G3 ^2 N/ {
int num;( x) ]* z q- d
float score;) J, A7 U" i5 O6 |
struct student *next;0 h# e: o, N0 e$ g! y
};
}% S% {2 q, I ystruct student *creat();
% b3 I4 F7 s' a6 S' M& Wmain()
6 j# \& r" j6 `: T8 K* l) O{
5 w) p( m4 { N; K% L7 U* t" N2 Estruct student *head;
) B$ m; j% W' M% g3 B a( P$ Khead=creat();* }3 h, {# E& R1 |2 E q
}2 E" U' `! @$ t& ^! {# Z5 M R
struct student *creat()
! S+ H& Y9 P! d: ~$ K/ G( ]0 {$ x{struct student *head,*tail,*p;float score;
a8 N5 K9 Z- h& C1 lint num,size=sizeof(struct student);
# ^ |7 k0 u- h; y, ~head=tail=NULL;
6 Z ~2 x5 u+ D3 F1 ]4 T S7 [scanf(%d%f",&num,&score);
. E- Q2 F3 F2 z S R/ l+ x9 c9 \while(num){
) P" i0 W& z) Z6 I' f) Pp=(stuct student *)malloc(size);
# t% B# k" g: l6 k3 {! d# e/ H$ T6 ]p->num=num;p->score=score;; P) f- l- f$ O2 g
p->next=NULL;+ m8 Q4 U% [& J. U7 S
if(head==NULL)head=p;
/ H& B- ^0 G4 n' X! @: n; o6 Oelse tail->next=p;
( L! X- J* ?6 z- Y* Vtail=p;
# ^4 O( h6 ?% x7 gscanf("%d%f",&num,&score);: t4 u/ Y/ h5 |- Y$ {
}
* a6 y) H* [$ s4 Ereturn head;}% D* J. b1 q/ d+ W) e7 j
联合就没讲,这里是因为课时的关系就没讲可惜啊!2 B3 a: X, `* Y" _# x* I
总之该课程讲到之处都是经典的值得在一次学习. |
|