关键点,我使用Codeblocks编写这个程序,需要编写的目的只是编写C而不是其他内容。我希望它尽可能基本。所以这是我到目前为止的混乱。
我需要这个程序继续向用户询问一个值,直到1-29之间,直到它达到176.一旦超过176,我需要做的就是打印数字的总和,输入的最大数字和最小数字输入的号码。
从那里程序需要循环并询问是否输入另一组数字。使用适当的用户输入终止程序。我需要输出以下信息:
如果有人有任何建议可以帮助很多。
/* Matthew Gambrell CSC 120 12/4/14*/
#include <stdio.h>
main ()
{
int total, num, large, small, again;
again=1;
while (again==1);
{
total = 0;
large = 0;
small = 50;
}
while(total<=176);
{
num=inputNum();
total=tot(num, total);
large=CheckLarge(num, total);
small=CheckSmall(num, small);}
printresult(total, large, small);
printf("play again");
printf("1=yes 0=no");
scanf("%d", &again);
}
float inputNum();
{
float badnum, num;
badnum=1;
while (badnum==1);
printf("please enter a number between 1 and 29");
scanf("%f", &num);
if(num>0 and num<30)
badnum = 0;
else
printf("error renter");
getch("press enter to continue");
return(num)
}
tot(num, total)
total += num
return (total)
}
return(num)
答案 0 :(得分:0)
就像你的同学说的那样,你可以在循环中使用循环来做到这一点。代码的结构使它看起来像是你的目标。
首先,如评论中所述,从while(..);
语句的末尾删除分号。这将允许控件输入您在其下面定义的块。
其次,您可能希望在第二个while
循环结束后为第一个while
循环放置右括号。这是你在循环中的'循环'结构。
第三,您目前没有任何真正的方式来显示您的结果。通常,您的int main(){ ... }
函数会返回与您的程序相关的数字。虽然您可以让它返回total
变量,但您更希望它变为return 0;
,并在程序执行期间将变量输出到屏幕。
例如,正如您在inputNum(..)
中的输入解析中所做的那样,您可以编写
printf('The total is %i\n', total);
printf('The largest number entered was %i\n', large);
printf('The smallest number entered was %i\n', small);
这些数字(large
和small
)需要在你的(第一个)while循环中 - 它们应该在每次循环重启时重置,但不是每次输入数字时都重置。< / p>