/**
*
*MyCounter.c
*用来存放计算函数调用次数的函数原型及实现
*/
//引用了外部变量
extern int whileCount;
void counter(int); //用来计算当前counter函数执行了多少次
void counter(int i)
{
//静态存储
static int subTotal = 0; //静态变量
subTotal++;
printf("counter函数被调用了%d次\n",subTotal);
printf("当前是while的第%d轮",whileCount);
return;
}
#include <stdio.h>
#include <stdlib.h>
//全局变量的作用域:当前源文件
int whileCount = 0;//全局变量,用来记while循环执行的轮数
int main()
{
int value;//自动变量 - 执行循环的次数
register int i; // 将村换变量设置为寄存器存储模式
printf("请输入循环执行的次数(按0退出):");
//用户输入的value为整型数字并且值大于0时,进入循环
while (scanf("%d",&value) == 1 && value > 0) //实现一个循环录入的效果
{
whileCount++; //轮数++
for(i = value; i >= 0;i--) //for循环了i+1次,因为>=0
{
//1、循环执行多少次
//2、counter被调用了多少次
counter(i); //每次村换调用counter函数
}
printf("请输入循环执行的次数(按0退出):");
}
return 0;
}