c - main 外部的函数未从 For 循环返回正确的值

标签 c for-loop visual-studio-2015

由于某些莫名其妙的原因,我没有很好地使用 C 中的语法。让我切入细节并解释我遇到的问题。

在 main 中获取用户输入的整数,将整数发送到一个函数,函数在该函数中使用“for 循环”来计算该数字。

问题:我无法在 main 中获得正确的返回值。循环工作正常,但循环的函数返回 0。我被困在这里。来回做了几次调整,研究了正确的语法,但我无法准确理解它应该是什么。

int forLoop(int input); //function//

int main(){
    int input;
    printf("Enter an integer \n");
    scanf_s("%d", &input);
    printf("Results %d ex: 1 2 3...8 ", forLoop(input));

    return 0;
}//end here//

int forLoop(int input){ //function//

    for (int i= 0  ; i < input; ) {
        printf("%d \n", i = i + 1);     

    }
    return 0;
}

最佳答案

该函数返回零,因为您在其中键入了 return 0;

相反,这样做:

int forLoop (int input){
    int i;
    for (i= 0; i < input; i++) {
        printf("%d \n", i);     

    }
    return i; // will be the same value as "input"
}

关于c - main 外部的函数未从 For 循环返回正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43038982/

相关文章:

objective-c - For 语句每次都漏掉最后一个对象

linux - 如何将 .lib 与 "Visual C++ for linux"插件一起使用?

C 用户输入数组用作 if 语句

c++ - 哪个 C++ 转换类型是 C 转换等同于

c - 为什么这个代码块显示堆栈粉碎检测?

c - 数组的最后一个元素不同的值

javascript - 从 for 循环返回数据

for-loop - TYPO3:在流体中计数

c# - Visual Studio 2015 不是语法高亮 Razor ,也不是 Intellisense

c# - 转到定义 : "Cannot navigate to the symbol under the caret."