摘要:
#include int main() { int n,na,nb,i,c=0,d=0,e=0; int a[1000],b[1000]; scanf("%d%d%d",&n,&na,&nb); for(i=0;id) //!判断谁赢时,只用先判断c,d的大小;若两者相等,则平局。 printf("A\n");... 阅读全文
摘要:
#include int main() { int a[100],b[100],n,i,c; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=0;i<(n/2+0.5);i++) //四舍五入,当n为奇数时0.5就起作用,让for循环再进行一次 { ... 阅读全文
摘要:
这是书上的一道例题。#include int main() { void s(int *p1,int *p2); int a,b; int *o1,*o2; while(scanf("%d %d",&a,&b)!=EOF) 对就是这里!!!!!多组数据输入可以循环比较!记得while后面的大括号要紧跟循环体,没有大括号的话就没有输出的(我经常错这里),还有啊,w... 阅读全文
摘要:
#include<stdio.h> #include<string.h> int main() { char a[50]; int i,len; i=0; while(gets(a)) { len=strlen(a); for(i=0;i<len;i++) { if(a[i]>='A'&&a[i]< 阅读全文
摘要:
错解: 这是一个死循环,问题出在i=i*(-1)。若i为负数,则为死循环。 正解: 引入新变量b,添加第二个if条件来判断当b为负数时改怎么做。 b为负数时在第二个if里执行语句变为整数,从而进行累加。 阅读全文
摘要:
第一个do循环,是为了得到这个数将会在第一个for循环里循环几次。 一开始在do里面,我的c为a,输出都是0;因为最后a为0;在接下来的循环里都是0。 不妨引入一个新的变量来统计循环次数。 第一个for循环执行的是分离各个数位,然后存放在b数组里。别忘了a也要除以10。 第二个for循环是输出。 阅读全文
摘要:
第一次做这个题目的时候,没有考虑到输出是“血压连续正常的最长小时”,所以我的第一次输出为满足条件的正常血压。理解题意错误。 题意有两层含义:1.血压连续正常。2.保持正常的最大小时。 正解是:执行完条件判断a[i]和a[i+1]时,s++,如果不满足第一个if里的条件,则应该让s归零,且将原s存放在 阅读全文
摘要:
在if里面,注意错误:如果写成 上面这种,每次循环的时候,C会被覆盖掉,C的引入并没有什么意义,而且也没有将a两者中的最大值和下一个值进行比较,每次循环都比较的是相邻两个数的大小,所以最后输出应该是值输出最后两个数中的最大值。 所以在正解中,应写成像正解那样的,将两者中大的赋值给c,再将c赋值给a[ 阅读全文
摘要:
上面为错解题,b=1/b 是逻辑错误,因为b是整型,所以1/b是0,此时只要重新定义一个双浮点变量来存放值就行。 阅读全文