首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun:在形参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 #include vo
请编写函数fun:在形参指针所指的4个整数中找出最大值和最小值,最大的放在a中,最小的放在d中。 注意:部分源程序存在PROG1.C中,请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 #include vo
admin
2019-03-19
28
问题
请编写函数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://jikaoti.com/ti/S5f0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的运行结果是_______。#include"stdio.h"main(){inta[]={1,2,3,4,5,6,7,8,9,10,11,12};int*p=a+5,*q=NULL;
下面程序的输出是【】。main(){intarr[10],i,k=0;for(i=0;i<10;i++)arr[i]=i;for(i=1;i<4;i++)
最简单的交换排序方法是______。
若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是()。
设有以下语句:inta=1,b=2,c;c=a∧(b<<2);执行后,c的值为()。
有以下程序:#includemain(){inta=6,b=7,m=1;switch(a%2){case0:m++;break;case1:m++:
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
表示关系a≤b≤c的C语言表达式为()。
函数sub的功能是根据下面近似分式求π的值。(π*π)/6=1+1/(2*2)+1/(3*3)+…+1/(n*n)现在请在下面的函数中填空,完成求π值的功能。#include"math.h"doublesub(longm
有以下函数char*fun(char*p){returnp;}该函数的返回值是______。
随机试题
新托马斯主义法学的主要代表人物是
InEngland,peopleoftentalkabouttheweatherbecausetheycanexperiencefourseasonsinoneday.Inthemorningtheweather
在医院感染控制委员会领导下建立的三级护理管理体系中,二级管理的执行者是
下列关于X射线透视的说法,正确的是
患者外感风邪,头痛较甚,伴恶寒发热,目眩鼻塞,舌苔薄白,脉浮。治疗宜选用
10岁女孩,左小腿轻微外伤后发热3天,左小腿上端肿胀,剧痛,局部皮温高,肤色正常,白细胞计数30×109/L,X线片未见明显变化,局部穿刺,针达骨膜下时抽出黄色脓液,首先应考虑为()
(2014年司考试题)因公司章程所规定的营业期限届满,蒙玛有限公司进入清算程序。关于该公司的清算,下列哪些选项是错误的?()
胰岛素(非制剂)()
在学前教育课程中,学科课程的优势是()。
WhatistheweatherlikeinthenorthernandeasternEnglandtoday?
最新回复
(
0
)