【发布时间】:2022-01-24 02:59:20
【问题描述】:
#include <stdio.h>
int main(){
int num, counter, numberOfInputs, even, odd, sumEven, sumOdd;
printf("Enter number of inputs:\n ");
scanf("%d", &numberOfInputs);
printf("Enter %d numbers: ", numberOfInputs);
for(counter=1; numberOfInputs>counter; counter++){
scanf("%d", counter);
return 0;
}
我有一个项目可以让用户输入一些输入。我似乎无法解决它。我完成了程序的其他部分,它将确定奇数和偶数的数量关系,我只是没有包括它。 请帮助和tnx
后续问题:
为什么我用printf显示输入的数字,最后输入的数字总是加1?
#include <stdio.h>
int main(){
int num, counter, numberOfInputs, even, odd, sumEven, sumOdd;
printf("Enter number of inputs:");
scanf("%d", &numberOfInputs);
printf("Enter %d numbers:\n", numberOfInputs);
for(counter=0; numberOfInputs>=counter;){
scanf("%d", &counter);
counter++;
}
/*when I put a printf here, the last number is added by 1, it works fine without the printf though*/
【问题讨论】:
-
scanf("%d", counter)是这里的一个问题。你也应该得到编译器的警告 -
如果您的编译器没有为您提供警告消息,那么您应该查阅编译器的文档以了解如何启用警告。如果您使用的是 gcc 或 clang,则可以使用
-Wall -Wextra编译以启用所有警告。 -
1)
scanf("%d", counter);是一个错误。你可能想要scanf("%d", &counter);2)这也可能是一个错误:你真的想在循环内部覆盖你的循环计数器吗? 3)你真的想要变量int count吗?而不是值的数组(例如int[] counts)? -
int num,计数器,numberOfInputs,偶数,奇数,sumEven,sumOdd; printf("请输入输入数:\n"); scanf("%d", &numberOfInputs); printf("请输入 %d 个数字:\n", numberOfInputs); for(counter=0; numberOfInputs>counter;){ scanf("%d", &counter);计数器++;伙计们,我想我离解决方案更近了。但是当我输入 5 作为输入数时,它会在输入最后一个数字后加 1。
-
如果这会使现有答案无效,请不要覆盖您的原始问题。如果您有后续问题,请将其添加到问题的底部。我已经为你解决了这个问题。如果您对我的更改不满意,请随时编辑您的问题。
标签: c