首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun:在形参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 #include vo
请编写函数fun:在形参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 #include vo
admin
2019-03-19
36
问题
请编写函数fun:在形参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。
注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include
void NONO();
void fun(int *a,int *b,int *c,int
*d)
{
}
main()
{int a,b,c,d;
printf("请输入4个整数:");
scanf("%d%d%d%d",&a,&b,&c,&d);
printf("原始顺
序:%d,%d,%d,%d\n",a,b,c,d);
fun(&a,&b,&c,&d);
printf("处理
后:%d,%d,%d,%d\n",a,b,c,d);
NONO();
}
void NONO()
{/* 本函数用于打开文件,输入数据,
调用函数,输出数据,关闭文件。*/
FTLE *fp,*wf;
int i,a,b,c,d;
fp=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0;i<5;i++)
{fscanf(fp,"%d %d %d %d",&a,
&b,&c,&d);
fun(&a,&b,&c,&d);
fprintf(wf,"a=%d,d=%d\n",a,d);
}
fclose(fp);
fclose(wf);}
选项
答案
void fun (int*a, int*b,int*c, int *d) {int t; if(*a<*b){t=*a; *a=*b;*b=t;} if(*a<*c){t=*a; *a=*c;*c=t;} if(*a<*d){t=*a; *a=*d;*d=t;} if(*b<*c){t=*b; *b=*c;*c=t;} if(*b<*d){t=*b; *b=*d;*d=t;} if(*c<*d){t=*c; *c=*d;*d=t;} }
解析
首先在主函数main中我们需要的就是四个数字,这四个数字需要手动输入,件程序代码第13—15行,四个数字输入完城后就可以进入fun函数进行数据处理了。进入到fun函数中,只要从a到d进行比较,按照一开始的规则即可,如果a大于b,不变,比较a与c,若a小b,a与b交换位置,交换过后a就大于b了,这样就进行a与c的比较;a与c的比较同理,这样的循环比较,就能发现,每比较一次,较大的数字就能交换到a的位置,较小的数字就离a越来越远,也就是到了d的位置,这样就完成了题目所给出的要求了,最大的数字放在a中,最小的数字放在d中。当新的排序排好后,就可以返回主函数进行输出了。
转载请注明原文地址:https://kaotiyun.com/show/H6Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
将以下程序写成三目运算表达式是【】。if(a>b)max=a;elsemax=b;
以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。FILE*myf;longf1;myf=【】("test.t""rb");
若按功能划分,软件测试的方法通常分为白盒测试方法和【】测试方法。
分析下列程序:#include<stdio.h>main(){int*p1,*p2,*p;inta=6,b=9;p1=&a;p2=&b;if(a<b){p=p1;p1=p2;p2=p
要正确定义并初始化一个数组a,它含有5个元素,则正确的语句是______。
有以下程序:int*f(int*x,int*y){if(*<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;
若有下列定义(设int类型变量占2个字节):inti=8,j=9;则下列语句:printf("i=%u,j=%x\n",i,j);输出的结果是()。
在数据管理技术发展的三个阶段中,数据共享最好的是______。
下列程序的输出结果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;char
有以下函数char*fun(char*p){returnp;}该函数的返回值是______。
随机试题
若要对类Value中重载的类型转换运算符long进行声明,下列选项中正确的是
Friendsplayanimportantpartinourlife,andalthoughwemaytakethefriendshipforgranted,weoftendon’tclearlyunderst
某工程机械公司专门向建筑业用户供应推土机、打桩机、起重机、水泥搅拌机等建筑工程中所需要的机械设备,这是一种()策略。
DNA复制的特点是
下列关于老年人的生理变化对药动学的影响哪项是错误的
不能同时在同一生产厂房内进行加工和灌装的情况是
下列涉税相关处罚措施中不属于税务机关作出的税务行政处罚行为的是()。
如图,四边形ABCD是平行四边形,以AB为直径的⊙O经过点D,E是⊙O上一点,且∠AED=45°.请判断CD与⊙O的位置关系,并说明理由.
①这个名字的意思是,它的作用是把“多酚”进行氧化②不过多酚自己不稳定,一旦跟空气接触,多酚氧化酶就可以让空气中的氧气把多酚氧化,然后连接成为黑褐色的色素③自然界的酶有很多种,每种具有各自特定的作用④苹果、梨、土豆等蔬菜水果,切开后很快会变色,就是这个
一个有16个字的数据区,它的起始地址为70A0:DDF6,那么该数据区的最后一个字单元的物理地址为______。
最新回复
(
0
)