要求用short定义,然后用强制转换。
用上if语句。。
小弟初学。
望高手相助。。(我相信这是道很简单的题。。)
采用数组来接收输入的4个数,然后给数组排序,最后只需要输出数组的第一个数和最后个数,具体代码如下:
int str[4];
num=4;
printf("请输入%d个整数:",num);//数
for(i=0;i<num;i++)
scanf("%d",&str[i]);
for(i=0;i<num-1;i++)//冒泡排序,从小到大
for(j=i+1;j<num;j++)
if(str[i]>str[j])
{tmp=str[i];str[i]=str[j];str[j]=tmp;}
printf("最小数:%d:\n",str[0]);//最小数
printf("最大数:%d:\n",str[3]);//最大数
温馨提示:答案为网友推荐,仅供参考
第1个回答 2008-04-14
1.不是很明白你的short定义和强制转换
#include "stdio.h"
int main()
{
short input=0;//short定义
int max=0,min=0;
printf("请输入4个整数:");
for(int i = 0;i<4;i++)
{
scanf("%hd",&input);//%hd为短整型输入
if(i==0)
{
max = min = (int)input;//强制转换
}
else
{
if(max<input)
max = (int)input;//强制转换
if(min>input)
min = (int)input;//强制转换
}
}
printf("最大值是:%d 最小值是:%d \n",max,min);
return 0;
}本回答被提问者采纳
#include "stdio.h"
int main()
{
short input=0;//short定义
int max=0,min=0;
printf("请输入4个整数:");
for(int i = 0;i<4;i++)
{
scanf("%hd",&input);//%hd为短整型输入
if(i==0)
{
max = min = (int)input;//强制转换
}
else
{
if(max<input)
max = (int)input;//强制转换
if(min>input)
min = (int)input;//强制转换
}
}
printf("最大值是:%d 最小值是:%d \n",max,min);
return 0;
}本回答被提问者采纳
第2个回答 2008-04-14
不错不错。
第3个回答 2008-04-14
#include<iostream>
using namespace std;
int main()
{
short a,b,c,d;
int max,min;
cin>>a>>b>>c>>d;
if(a>b){max=a;min=b;}
else {max=b;min=a;}
if(c>max)max=c;
if(d>max)max=d;
if(c<min)min=c;
if(d<min)min=d;
cout<<"最大:"<<max<<"\n最小:"<<min;
return 0;
}
using namespace std;
int main()
{
short a,b,c,d;
int max,min;
cin>>a>>b>>c>>d;
if(a>b){max=a;min=b;}
else {max=b;min=a;}
if(c>max)max=c;
if(d>max)max=d;
if(c<min)min=c;
if(d<min)min=d;
cout<<"最大:"<<max<<"\n最小:"<<min;
return 0;
}