c语言,帮忙写个程序,希望高手帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/09 19:31:34
中有以下数据保存在data[i]中
0.600
0.300
0.800
0.200
0.300
0.360
......
现在想实现如下
依次与下个相加,当大于1时,取整打印1,否则打印0,然后余数继续和后面的相加
老师提示用floor 和ceil
最后效果如下:
0
0
1
0
1
0
...
希望哪位大侠帮忙写下`

#include <stdio.h>
#include <math.h>
void main()
{
float data[6]={0.6,0.3,0.8,0.2,0.3,0.36};
int i,k;
float sum=0.0;
for(i=0;i<6;i++)
{
sum += data[i];
if(floor(sum)==1.0)
{
printf("1\n");
sum-=1.0;
}
else printf("0\n");
}
getch();
}
-----------------------------------------------------------------------------
#include <stdio.h>
#include <math.h>
void main()
{
float data[6]={0.6,0.3,0.8,0.2,0.3,0.36};
int i,k;
float sum=0.0;
for(i=0;i<6;i++)
{
sum += data[i];
if(ceil(sum)==2.0)
{
printf("1\n");
sum-=1.0;
}
else printf("0\n");
}
getch();
}

不太明确,可不可以再补充一下

#include <stdio.h>

int main()
{
double sum = 0.0;
int flag = 0;
double a[6] = {0.600 ,0.300 ,0.800 ,0.200 ,0.