7
CC
7.1
7.2
7.3
7.4
7.5
7.6
[Return]
7.1
[Return]
7.1,1
1main()
1
( void )
{
}
void”main()
2
( [ 2…… ] )
{
}
[7.1]
/*AL7_1.C*/
/**/
int max(int n1,int n2) /*max()*/
{ return (n1>n2?n1:n2)
}
main()
{ int max(int n1,int n2) /**/
int num1,num2
printf("input two numbers:\n")
scanf("%d%d",&num1,&num2)
printf("max=%d\n",max(num1,num2))
getch(); /**/
}
[]
2
1
main()main()
2──
[] (void)
{ }
3C2
[Return]
7.1.2
1return
return
1return return ( );
2return
return void”
2
return
[Return]
7.1.3
ANSI C
([ ][,[ 2]…])
2
1
2
[Return]
7.1.4
([])
1
2C
3
1
2C
3Turbo CMS C
[Return]
7.1.5
1
[7.3]
/**/
/*AL7_3.C*/
void main()
{ void s(int n); /**/
int n=100; /*n*/
s(n); /**/
printf("n_s=%d\n",n); /**/
getch();
}
/* */
void s(int n)
{ int i;
printf("n_x=%d\n",n); /**/
for(i=n-1; i>=1; i--) n=n+i; /**/
printf("n_x=%d\n",n); /**/
}
[]
1
2
3
4
[Return]
7.2
7.2.1
7-1
[7.4] s=1k+2k+3k+…… +N k
/*AL7_4.C*/
/**/
#define K 4
#define N 5
long f1(int n,int k) /*nk*/
{ long power=n;
int i;
for(i=1;i<k;i++) power *= n;
return power;
}
long f2(int n,int k) /*1nk*/
{ long sum=0;
int i;
for(i=1;i<=n;i++) sum += f1(i,k);
return sum;
}
main()
{ printf("Sum of %d powers of integers from 1 to %d = ",K,N);
printf("%d\n",f2(N,K));
getch();
}
[]
7.2.2
[7.5] n!
/*AL7_5.C*/
/**/
long power(int n)
{ long f;
if(n>1) f=power(n-1)*n;
else f=1;
return(f);
}
main()
{ int n;
long y;
printf("input a inteager number:\n");
scanf("%d",&n);
y=power(n);
printf("%d!=%ld\n",n,y);
getch();
} []
[Return]
7.3
7.3.1
7.3.2
[Return]
7.3.1
[7.6]
/*AL7_6.C*/
/**/
int isalp(char c)
{ if (c>='a'&&c<='z'||c>='A'&&c<='Z')
return(1);
else return(0);
}
main()
{ int i,num=0;
char str[255];
printf("Input a string,");
gets(str);
for(i=0;str[i]!='\0';i++)
if (isalp(str[i])) num++;
puts(str);
printf("num=%d\n",num);
getch();
} []
1
2
[Return]
7.3.2
[7.7] 5
/*AL7_7.C*/
float aver(float a[ ]) /**/
{ int i
float av,s=a[0]
for(i=1i<5i++) s += a[i]
av=s/5
return av
}
void main()
{ float sco[5],av
int i
printf("\ninput 5 scores:\n")
for(i=0 i<5i++) scanf("%f",&sco[i])
av=aver(sco) /**/
printf("average score is %5.2f\n",av)
getch();
} []
1a[]sco[]
2Ca[]
[Return]
7.4
7.4.1
7.4.2
[Return]
7.4.1
int f1(int a) /*f1*/
{ int b,c
……
} /*a,b,cf1()*/
int f2(int x) /*f2*/
{ int y,z
……
} /*x,y,zf2()*/
main()
{ int m,n
……
} /*m,nmain()*/
1main()
2
3
4
[Return]
7.4.2
[7.9] lwh
/*AL7_9.C*/
/**/
int s1,s2,s3;
int vs(int a,int b,int c)
{ int v;
v=a*b*c; s1=a*b; s2=b*c; s3=a*c;
return v;
}
main()
{int v,l,w,h;
clrscr();
printf("\ninput length,width and height ");
scanf("%d%d%d",&l,&w,&h);
v=vs(l,w,h);
printf("v=%d s1=%d s2=%d s3=%d\n",v,s1,s2,s3);
getch();
} []
1
2
3
extern [2…… ]
[7.10]
/*AL7_10.C*/
int vs(int xl,int xw)
{ extern int xh /*xh*/
int v
v=xl*xw*xh /*xh*/
return v
}
main()
{ extern int xw,xh /**/
int xl=5 /**/
printf("xl=%d,xw=%d,xh=%d\nv=%d",xl,xw,xh,vs(xl,xw))
}
int xl=3,xw=4,xh=5 /*xlxwxh*/
[]
[Return]
7.5
7.5.1
7.5.2
7.5.3
[Return]
7.5.1
static”
static ()
{…… }
static” static”
[Return]
7.5.2
static” extern”
[extern] ()
{…… }
[extern] ()[2(2)……]
[7.11]
1mainf.c
main()
{ extern void input(… ),process(… ),output(… );
input(… ); process(… ); output(… );
}
2subf1.c
……
extern void input(…… ) /**/
{…… }
3subf2.c
……
extern void process(…… ) /**/
{…… }
4subf3.c
……
extern void output(…… ) /**/
{…… }
[Return]
7.5.3
1
→ Project→ →
2Project
.PRJ.C
3
ProjectProject name
4
ProjectClear project Projectname”
5
Options Environment Message Tracking All files,All
files”
( Message Tracking” Off”)
[Return]
7.6
(auto)(register)(extern)(static)
7.6.1
7.6.2
[Return]
7.6.1
1──
1 static
2
1
2""'\0'
3
1
2
2──
1[auto]
2
1
2
3
[7.13]
/*AL7_13.C*/
void auto_static(void)
{ int var_auto=0; /**/
static int var_static=0; /*1*/
printf(“var_auto=%d,var_static=%d\n”,var_auto,var_static);
++var_auto;
++var_static;
}
main()
{ int i;
for(i=0; i<5; i++) auto_static();
} []
3──
register
1
2MSCTC
3
[Return]
7.6.2
1──
static
2──
static
extern
externextern
1
2
311 1
static”
[Return]