题目:
编写程序,由键盘输入20个整数,分别找出其中的最大正整数、最小正整数、最大负整数、最小负整数。
/*习题2.9
*/
#include <stdio.h>
int main()
{
int num;
int minznum=0,maxznum=0,minfnum=0,maxfnum=0;
int zs=0,fs=0;
int count=20;
printf("请输入20个整数:");
while(count)
{
scanf("%d",&num);
if(num>0)
{
zs++;
if(zs==1)minznum=maxznum=num;
if(num<minznum)minznum=num;
if(num>maxznum)maxznum=num;
}
if(num<0)
{
fs++;
if(fs==1)minfnum=maxfnum=num;
if(num>maxfnum)maxfnum=num;
if(num<minfnum)minfnum=num;
}
count--;
}
if(zs!=0 && fs!=0)
{
printf("最大正整数=%d,最小正整数=%d\n",maxznum,minznum);
printf("最大负整数=%d,最小负整数=%d\n",maxfnum,minfnum);
}
if(zs==0)
{
if(fs!=0)
{
printf("没有最大正整数和最小正整数\n");
printf("最大负整数=%d,最小负整数=%d\n",maxfnum,minfnum);
}
else
{
printf("没有最大正整数和最小正整数\n");
printf("没有最大负整数和最小负整数\n");
}
}
else
{
if(fs==0)
{
printf("最大正整数=%d,最小正整数=%d\n",maxznum,minznum);
printf("没有最大负整数和最小负整数\n");
}
}
return 0;
}