问题描述
- c语言/c++的判断计数问题
-
小蜗牛是一名ACMer,他特别想加入校ACM队,为此他开始废寝忘食的刷题。小蜗牛不是神,也会因为做不对题目而烦恼。假设小蜗牛做对一道题,他的愉悦值会加一;如果做错一题,他的愉悦值会减一。给定一个初始的愉悦值N(0<=N<=10),当小蜗牛的愉悦值为0时他就会停止做题,转身去做其他的事情。但是他想知道自己这一天做了多少题,现在请你告诉他结果
请用c语言或c++代码表示 谢谢
解决方案
#include
int main()
{
int x,i,j;
int s[10];
while(scanf("%d",&x)!=EOF)
{if(x>=0&&x<=10)
for(i=0;i<10;i++)
{
scanf("%d",&s[i]);
}
for(j=0,i=0;i<10;i++)
{
j+=s[i];
if(j+x==0) break;
}
if(x==0) //注意考虑为0时
printf("0n");
else
{
if(i==10)
printf("10n");
else
printf("%dn",i+1);
}
}
return 0;
}
参考
http://yangchuangl.blog.163.com/blog/static/2128571392012103624635/
解决方案二:
或者参考 http://blog.csdn.net/nethanhan/article/details/8272610
解决方案三:
这里,需要解决做对做错的信息如何获得
主要有
1)从控制台输入
2)从文件输入
3)用随机数生成器生成
每次获取一个 数据(对,错)产生一个 新的愉悦值,
为0 时候,结束做题
输出结果
这个用 do ...while 循环最简洁
时间: 2025-01-05 13:18:11