发布时间:2011-09-16 共7页
求最值
1. 请补全main函数,该函数的功能是:从键盘上输入3个整数,然后找出最大的数并输出。
main()
{int a,b,c,max;
clrscr();
printf("\nInput three numbers:\n");
scanf("%d,%d,%d",&a,&b,&c);
printf("Thethree numbers are:%d,%d,%d\n",a,b,c);
if (a>b)
___1___;
else
___2___;
if(max ___3___; printf("max=%d\n",max); } 第一处:max=a 第二处:max=b 第三处:max=c 解析: 若a>b 则a较大,将其放入max中;否则将b存于max。 此时,max中存放的就是前两个数中较大的,再将max与c比较。 2. 函数fun的功能是:从三个形参a,b,c中找出中间的那个数,作为函数值返回。 int fun(int a, int b, int c) {int t; t = (a>b) ? (b>c? b :(a>c?c:___1___)) : ((a>c)?___2___ : ((b>c)?c:___3___)); return t; } 第一处:a 第二处:a 第三处:b 解析:条件表达式的理解。 3. 请补全fun函数,该函数的功能是把从键盘输入的3个整数按从小到大输出。 main() {int x,y,z,t; clrscr(); printf("Input x,y,z\n"); scanf("%d%d%d",&x,&y,&z); if (___1___) { t=x; x=y; y=t; } /*交换x,y的值*/ if(___2___) { t=z; z=x; x=t; } /*交换x,z的值*/ if(___3___) { t=y; y=z; z=t; } /*交换z,y的值*/ 第一处:x>y 第二处:x>z 第三处:y>z 解析: 3个数排序,两两比较,小的放前,大者放后。 交换。