如何使用局部变量和用户定义函数计算循环执行?C语言

如何使用局部变量和用户定义函数计算循环执行?C语言,c,variables,global,C,Variables,Global,请帮忙,因为我是这里的初学者。在这个程序中,main要求用户输入一个整数。如果整数为正,循环将继续,并要求输入另一个整数。名为“myfunction”的用户定义函数在输出中显示do while循环被调用的次数。我使用变量loopCount++每次递增这个计数。这个程序工作正常,但我刚刚遇到了一个新的挑战:在不使用任何全局变量的情况下执行此操作。结果我有一个全球变量。。。整数循环计数。我不知道如何使用局部变量实现这一点,但我确实想知道。请帮忙 #include <stdio.h> #i

请帮忙,因为我是这里的初学者。在这个程序中,main要求用户输入一个整数。如果整数为正,循环将继续,并要求输入另一个整数。名为“myfunction”的用户定义函数在输出中显示do while循环被调用的次数。我使用变量loopCount++每次递增这个计数。这个程序工作正常,但我刚刚遇到了一个新的挑战:在不使用任何全局变量的情况下执行此操作。结果我有一个全球变量。。。整数循环计数。我不知道如何使用局部变量实现这一点,但我确实想知道。请帮忙

#include <stdio.h>
#include <stdlib.h>
int loopCount;

int main()
{
int number;

  do{

     printf("Enter a number: ");
      scanf("%i", &number);
       loopCount++;
        myfunction();

  }while(number > 0);
    exit(0);
  }


int myfunction(){
  printf("The loop has been called %d times\n\n", loopCount);
}
#包括
#包括
整数循环计数;
int main()
{
整数;
做{
printf(“输入一个数字:”);
scanf(“%i”和编号);
loopCount++;
myfunction();
}而(数量>0);
出口(0);
}
int myfunction(){
printf(“循环已被调用%d次\n\n”,loopCount);
}

只需将
loopCount
设置为
main
的本地变量,并将其作为参数传递给
myfunction
,如下所示:

#include <stdio.h>
#include <stdlib.h>

int main()
{
  int number;
  int loopCount = 1;

  do{

    printf("Enter a number: ");
    scanf("%i", &number);
    myfunction(loopCount++);

  }while(number > 0);
  exit(0);
}


int myfunction(count){
  printf("The loop has been called %d times\n\n", count);
}
#包括
#包括
int main()
{
整数;
int loopCount=1;
做{
printf(“输入一个数字:”);
scanf(“%i”和编号);
myfunction(loopCount++);
}而(数量>0);
出口(0);
}
int myfunction(计数){
printf(“循环已被调用%d次\n\n”,计数);
}

可能还需要指出的是,此代码可以使用更好的错误处理—如果您不确定我的意思,请尝试在提示符处键入字母(而不是数字)。

我明白了。。如果你看到了,我在while循环中使用了loopCount++,但是我如何在main中计算循环,而在另一个函数中使用相同的整数来显示“循环被调用了多少次”,我觉得没有全局变量就无法完成。只需将变量
loopCount
移动到
main()
函数,然后将该变量传递给
myfunction()
I还将loopCount post increment压缩为对myfunction()的调用-您可以将这些操作作为不同的操作保留。