-2
我是编程新手,我必须创建一个模块化C程序,它允许用户输入1到23之间的正数偶数,并且只接受这些值。它也必须保持数字的运行总和,只要总和小于98就继续询问数字。它还必须跟踪输入的最大和最小数字,显示总和和最小值和最大值,并且必须允许要输入的新号码。模块化程序
我在下面附加了我的程序。我不知道如何让数字的总和工作或如何产生最小值和最大值。我一直在尝试使用sum += i
来查找总和,并且我一直在尝试使用一个变量与输入的整数进行比较以找到最小值和最大值,但是我无法使其正常工作。
#include <stdio.h>
main()
{
inputNumber();
sumNumber();
smallVsLarge();
moreInput();
}
inputNumber()
{
int i = 0;
while (i <= 22)
{
printf("\nPlease enter an even number between 1 and 23: ");
scanf ("%d", &i);
if (i%2==1)
{
printf ("Please enter another number: ");
scanf ("%d", &i);
}
else if (i < 0)
{
printf("Please enter another number: ");
scanf ("%d", &i);
}
else if (i > 23)
{
printf("Please enter another number: ");
scanf ("%d", &i);
}
sumNumber(i);
}
}
sumNumber(int i)
{
int sum = 0;
int n;
for (n = 1; n <= i; n++)
{
sum = sum + n;
if (sum >= 98)
{
moreInput();
}
}
printf ("Your running total is %d.\n", sum);
smallVsLarge(i);
}
smallVsLarge(int i)
{
int min, max;
max = 0;
min = 22;
for (i = 0 ; i <= 22; i++)
{
if (i < min)
{
min = i;
}
else if (i > max)
{
max = i;
}
}
printf ("Your smallest value is %d and your largest value is %d.\n", min, max);
}
moreInput(int sum)
{
int x;
while (sum > 98)
{
printf("\n\nYou have reached the maximum sum. Enter 0 to Quit or 1 to Start Over: ");
scanf("%d",&x);
if(x==0)
{
break;
}
else if (x==1)
{
inputNumber();
}
}
}
请格式化您的代码,使其可读。 –
让我想起楼梯上最陡峭的台阶。 – randominstanceOfLivingThing