C语言程序题:编写程序,输入10个整数,分别输出其中正数、负数和零的个数??

如题所述

#include "stdio.h"
#include "stdlib.h"

int main()
{
int data[10],i,flag[3]={0};
for(i=0;i<10;i++)
{
scanf("%d",&data[i]);//l输入10个整数
if(data[i]>0)
{
flag[0]++;
}
else if(data[i]<0)
{
flag[1]++;
}
else
{
flag[2]++;
}
}
printf("正数个数为%d,负数个数为%d,零的个数为%d\n",flag[0],flag[1],flag[2]);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-10-21
#include<stdio.h>
void main()
{
int np=0,nn=0,nz=0,n;
for (int i=0;i<10;i++){
scanf("%d",&n);
if (n>0) np++;
else if (n<0) nn++;
else nz++;
}
printf("正数有%d个,负数有%d个,零有%d个\n",np,nn,nz);
}
写的不好,见谅啊
第2个回答  推荐于2018-02-23
#include<stdio.h>
void main()
{int s[10],a=0,b=0,c=0,i;
for(i=0;i<10;i++)
scanf("%d",&s[i]);
for(i=0;i<10;i++)
{if(s[i]<0)a++;
else if(s[i]==0)b++;
else c++;}
printf("+:%d\n0:%d\n-:%d\n",c,b,a);
}本回答被提问者和网友采纳
第3个回答  2009-10-21
#include "stdio.h"
#include "conio.h"
void main()
{
int l=0, s=0, e=0;
int a[10];
int i = 0;
while(1)
{
scanf("%d", &a[i]);
i++;
if(i>=10)
break;
}
i = 0;
while(1)
{
if(a[i] > 0)
l++;
else if(a[i] <0)
s++;
else e++;

i++;
if(i>=10)
break;
}
printf(">0: %d\n<0: %d\n=0: %d\n", l, s, e);
getch();
}
相似回答