① c语言 for 循环 数据统计问题:从键盘输入一批任意数量的整数,统计其中不大于100的非负数数值的个数。
你的程序不管是不是负数a都会增加
continue;是执行下一次循环但是同时a也增加了并不会因为coninue而没增加
只需在判断b是否会负数的地方a--就可以达到要的效果,代码如下:
#include <stdio.h>
void main()
{
long int a, b;
for(a=0; b!=0; a++)
{
printf("please input interal numbers and input 0 to stop:");
scanf("%ld", &b);
if (b<0)
{
a--;
continue;
}
printf("\n");
}
printf("suitable number: %d\n", a-1);
}
② 用c语言统计数字出现的次数
b[a[i]]++; a[i] 是数组元素,数值在0-9范围内,所以b[a[i]] 总在 b[0]到b[9]之间。
b[] 已初始化为 0。
b[a[i]]++; 是 b[a[i]]=b[a[i]]+1; 它是累加器。
可以看成: x=a[i]; b[x]=b[x]+1; 第一次 b[x]++变1,第二次 b[x]++变2, 第三次 b[x]++变3。 例如 i=1,7,9 时 x=5,b[5] 累加3次变3。 这样就统计出5出现的次数了。
③ 数值统计 C语言!!!
#include<stdio.h>
intmain()
{intn,z,f,l;floatx;
scanf("%d",&n);
while(n>0)
{for(z=f=l=0;n--;)
{scanf("%f",&x);
if(x>0)z++;
elseif(x<0)f++;
elsel++;
}
printf("%d%d%d
",f,l,z);
scanf("%d",&n);
}
return0;
}