打印本文 打印本文  关闭窗口 关闭窗口  
经典c程序100例==41--50
作者:佚名  文章来源:不详  点击数  更新时间:2007/12/21 18:19:27  文章录入:杜斌  责任编辑:杜斌

【程序41】
题目:学习static定义静态变量的用法   
1.程序分析:
2.程序源代码:
#include 'stdio.h'
varfunc()
{
int var=0;
static int static_var=0;
printf('/40:var equal %d /n',var);
printf('/40:static var equal %d /n',static_var);
printf('/n');
var++;
static_var++;
}
void main()
{int i;
 for(i=0;i<3;i++)
  varfunc();
}
==============================================================
【程序42】
题目:学习使用auto定义变量的用法
1.程序分析:      
2.程序源代码:
#include 'stdio.h'
main()
{int i,num;
num=2;
 for (i=0;i<3;i++)
 { printf('/40: the num equal %d /n',num);
  num++;
  {
  auto int num=1;
  printf('/40: the internal block num equal %d /n',num);
  num++;
  }
 }
}
==============================================================
【程序43】
题目:学习使用static的另一用法。   
1.程序分析:
2.程序源代码:
#include 'stdio.h'
main()
{
int i,num;
num=2;
for(i=0;i<3;i++)
{
printf('/40: the num equal %d /n',num);
num++;
{
static int num=1;
printf('/40:the internal block num equal %d/n',num);
num++;
}
}
}
==============================================================
【程序44】
题目:学习使用external的用法。
1.程序分析:
2.程序源代码:
#include 'stdio.h'
int a,b,c;
void add()
{ int a;
a=3;
c=a+b;
}
void main()
{ a=b=4;
add();
printf('the value of c is equal to %d/n',c);
}
==============================================================
【程序45】
题目:学习使用register定义变量的方法。
1.程序分析:
2.程序源代码:
void main()
{
register int i;
int tmp=0;
for(i=1;i<=100;i++)
tmp+=i;
printf('the sum is %d/n',tmp);
}
==============================================================
【程序46】
题目:宏#define命令练习(1)   
1.程序分析:
2.程序源代码:
#include 'stdio.h'
#define true 1
#define false 0
#define sq(x) (x)*(x)
void main()
{
int num;
int again=1;
printf('/40: program will stop if input value less than 50./n');
while(again)
{
printf('/40:please input number==>');
scanf('%d',&num);
printf('/40:the square for this number is %d /n',sq(num));
if(num>=50)
 again=true;
else
 again=false;
}
}
==============================================================
【程序47】
题目:宏#define命令练习(2)
1.程序分析:            
2.程序源代码:
#include 'stdio.h'
#define exchange(a,b) { / /*宏定义中允许包含两道衣裳命令的情形,此时必须在最右边加上'/'*/
            int t;/
            t=a;/
            a=b;/
            b=t;/
           }
void main(void)
{
int x=10;
int y=20;
printf('x=%d; y=%d/n',x,y);
exchange(x,y);
printf('x=%d; y=%d/n',x,y);
}
==============================================================
【程序48】
题目:宏#define命令练习(3)   
1.程序分析:
2.程序源代码:
#define lag >
#define sma <
#define eq ==
#include 'stdio.h'
void main()
{ int i=10;
int j=20;
if(i lag j)
printf('/40: %d larger than %d /n',i,j);
else if(i eq j)
printf('/40: %d equal to %d /n',i,j);
else if(i sma j)
printf('/40:%d smaller than %d /n',i,j);
else
printf('/40: no such value./n');
}
==============================================================
【程序49】
题目:#if #ifdef和#ifndef的综合应用。
1. 程序分析:
2.程序源代码:
#include 'stdio.h'
#define max
#define maximum(x,y) (x>y)?x:y
#define minimum(x,y) (x>y)?y:x
void main()
{ int a=10,b=20;
#ifdef max
printf('/40: the larger one is %d/n',maximum(a,b));
#else
printf('/40: the lower one is %d/n',minimum(a,b));
#endif
#ifndef min
printf('/40: the lower one is %d/n',minimum(a,b));
#else
printf('/40: the larger one is %d/n',maximum(a,b));
#endif
#undef max
#ifdef max
printf('/40: the larger one is %d/n',maximum(a,b));

打印本文 打印本文  关闭窗口 关闭窗口