问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言,调用函数!!从大到小输出?

发布网友 发布时间:2023-07-13 16:20

我来回答

5个回答

热心网友 时间:2023-10-04 14:41

// 3个数由大到小输出.cpp : Implementation of DLL Exports.
#include"stdio.h"
void main()
{
int x,y,z,t;
printf("请输入x,y,z3个数:\n");
scanf("%d%d%d",&x,&y,&z);
if(x>y)
{t=x;x=y;y=t;} /*交换x,y的值*/
if(x>z)
{t=z;z=x;x=t;} /*交换x,z的值*/
if(y>z)
{t=y;y=z;z=t;} /*交换z,y的值*/
printf("small to big :%d %d %d\n",x,y,z);
printf("big to small:%d %d %d\n",z,y,x);
getch();
}
我这里有编好的你比着改吧。
/* #include "stdio.h"
main()
{ int a,b,c,d,sam,sam1,sum,sum1,e,f,g,h;
printf("请输入a,b,c,d,四个数:\n");
scanf("%d%d%d%d%d,&a,&b,&c,&d");
if(a>b)
{sam=a;sam1=b;
else
sam=b;sam1=a;}
else if(c>d)
{sum=c;sum1=d;
else
sum=d;sum1=c;}
else if(sam>sum)
{e=sam;f=sum;
else
e=sum;f=sam;}
else if(sam1<sum1)
{h=sam1;g=sum;
else
h=sum1;g=sam1;}
if(f>g)
printf("%d%d%d%d",e,f,g,h);
else
printf("%d%d%d%d",e,g,f,h);
getch();

}*/
#include "stdio.h" //29
main()
{ int a,b,c,d,sam,sam1,sum,sum1,e,f,g,h;
printf("请输入a,b,c,d,四个数:\n");
scanf("%d%d%d%d%d",&a,&b,&c,&d);
if(a>b)
{sam=a;sam1=b;}
else
{sam=b;sam1=a;}
if(c>d)
{sum=c;sum1=d;}
else
{sum=d;sum1=c;}
if(sam>sum)
{e=sam;g=sum;}
else //44
{e=sum;g=sam;}
if(sam1<sum1)
{h=sam1;g=sum;}
else
{h=sum1;g=sam1;}
if(f>g)
{printf("%d%d%d%d",e,f,g,h);}
else
printf("%d%d%d%d",e,g,f,h);
getch();
这个是4个数的。希望对你有所帮助!

热心网友 时间:2023-10-04 14:41

函数调用时,如果参数是变量名那只能单向传递,即主调函数传送到被调函数,不能回传。把变量名变成变量地址,就可以实现双向传递! 但是你如果不用指针,不用地址,还可以直接在调用函数中输出结果,如下面修改后的程序:
#include <stdio.h>
void main()
{
int f(int p1,int p2,int p3);
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
f(a,b,c);}

int f(int p1,int p2,int p3)
{ int t;
if(p1<p2)
{t=p1;
p1=p2;
p2=t;}
if(p1<p3)
{t=p1;
p1=p3;
p3=t;}
if(p2<p3)
{t=p2;
p2=p3;
p3=t;}
printf("%d%d%d",p1,p2,p3);
}

热心网友 时间:2023-10-04 14:41

函数调用时,如果是变量那只能单向传递,即主调函数传送到被调函数,不能回传。只能把变量变成变量地址,终于就可以实现双向传递!

热心网友 时间:2023-10-04 14:42

你用的p1,p2,p3,p11,p22跳出函数运行到主函数里就没有了。要么设置静态变量,要么像下面这样
#include <stdio.h>
void main()
{
void f(int p1,int p2,int p3);
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
f(a,b,c);
}

void f(int p1,int p2,int p3)
{int t;
if(p1<p2) t=p1;p1=p2;p2=t;
if(p1<p3) t=p1;p1=p3;p3=t;
if(p2<p3) t=p2;p2=p3;p3=t;
printf("%d%d%d\n",p1,p2,p3);
}

你最后面输出的a b c 就是原来的a b c 你不管怎么运行函数
不用指针指向 a b c,那他们的值就不会变。

热心网友 时间:2023-10-04 14:43

#include <stdio.h>
void main()
{
void f(int &p1,int &p2,int &p3);
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
f(a,b,c);
printf("%d%d%d",a,b,c);
}

void f(int &p1,int &p2,int &p3)
{
void R(int &p11,int &p22);
if(p1<p2) R(p1,p2);
if(p1<p3) R(p1,p3);
if(p2<p3) R(p2,p3);
}
void R(int &p11,int &p22)
{
int t;
t=p11;
p11=p22;
p22=t;
}
简单修改了一下。
另外,int型函数必须返回一个值
c语言实现函数,将正整数的每一位从高到低顺序输出,每-位占-行,不有多...

include &lt;stdio.h&gt; int i=0;int dig[];void digit(int);int main(){ int num;int j;i=0;printf("请输入一个正整数:\n");scanf("%d",num);digit(num);for(j=i;j&gt;=0;j--){ printf("%d\n",dig[j]);} return 0;} void digit(int num){ dig[i++]=num%10;num = num...

C语言中从键盘上输入三个数,将之排序后按由大到小的顺序输出

include&lt;stdio.h&gt; int main(void){int a,b,c,t;printf("请输入三个数");scanf("%d%d%d",&amp;a,&amp;b,&amp;c);if(a&lt;b){t=a;a=b;b=t;} if(b&lt;c){t=b;b=c;c=t;} if(a

C语言的编程题:输入三个整数,按从大到小的顺序输出

include &lt;stdio.h&gt; main(){ int x,y,z,t;scanf("%d%d%d",&amp;x,&amp;y,&amp;z);if (x&lt;y){t=x;x=y;y=t;} if(x&lt;z){t=z;z=x;x=t;} if(y&lt;z){t=y;y=z;z=t;} printf("%d %d %d\n",x,y,z);}

c语言,输入三个不同的数字,按从从大到小输出

1、参考2楼,修改两个语法错误:scanf("%d,%d,d%",&amp;x,&amp;y,&amp;z);应该是:scanf("%d,%d,%d",&amp;x,&amp;y,&amp;z);输出语句:printf("输入的三个数字由大到小排列为:%d,%d,%d",z,y,x);2、算法太乱,应该先对x,y,z排序,排序的算法是两两相比较,如果前者大就交换,最后得到x,y,z是从小到...

c语言程序在主函数中输入3个数,调用函数找出最大和最小的,并在主函数...

include&lt;stdio.h&gt; void main(){ int max(int x,int y,int z);int min(int x,int y,int z) ;int a,b,d,c;scanf("%d,%d,%d",&amp;a,&amp;b,&amp;c);d=max(a,b,c);printf("max=%d\n",d);d=min(a,b,c);printf("min=%d\n",d);} int max(int x,int y,int z){ int q;i...

c语言任意输入5个数,并按从大到小顺序输出

可以采用以下的代码进行计算:include &lt;stdio.h&gt; include &lt;stdlib.h&gt; int main(){ int a[5];int i,j,k;for(i=0;i&lt;=4;i++){ scanf("%d",&amp;a[i]);} for(i=0;i&lt;=4;i++){ for(j=0;j&lt;=4;j++){ if(a[i]&gt;a[j]){ k=a[i]; a[i]=a[j]; a[j]=k;} } } pri...

用C语言编程序,调用随机函数,产生30个100到200之间的随机整数,按由大到...

C程序:include &lt;stdio.h&gt; include include &lt;stdlib.h&gt; void main(void){ int i, j, k;int arr[30];int temp;srand(time(NULL));/* get random number */ for(i=0; i&lt;30; i++){ temp = rand() % 201;if(temp &lt; 100)temp += 100;arr[i] = temp;} /* sort */ for(...

C语言如何用调用函数的方法把5个数字从小到大排序?

2、第10行输出*point_1和*point_2的值,其中的“*”表示“指向”。*point_1表示“指针变量point_1所指向的变量”,也就是变量a。*point_2表示“指针变量point_2所指向的变量”,也就是变量b。从运行结果来看他们也就是100和10.3、程序中有两处出现*point_1和*point_2,但是两者含义不同。

C语言 输入10个整数,用函数编程将其中最大数与最小数的位置互换然后输出...

include &lt;stdio.h&gt;int main(){int i,t,n,maxi=0,mini=0,a[10]; n=10; for(i=0;i&lt;n;i++) {scanf("%d",&amp;a[i]); if(a[i]&gt;a[maxi])maxi=i; else if(a[i]

C语言:输入5个数,用调用函数的方法,从小到大排序 用简单点的

printf("%.2f ",a[i]);printf("\n");} 或者三个数的。void sort(int *a, int *b, int *c){ int tmp;if(*a&gt;*b){ tmp = *b;b = *a;a = tmp;} if(*a&gt;*c){ tmp = *c;c = *a;a = tmp;} if(*b&gt;*c){ tmp = *c;c = *b;b = tmp;} return;} ...

c语言函数调用数组 c语言函数调用语句是什么 c语言程序中,当调用函数时 c语言怎么调用函数 c语言函数嵌套调用 c语言函数的定义与调用 c语言两个函数先后调用 c语言函数调用编程题 c语言函数的递归调用
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎样成为职业象棋棋手 建设银行贷款的申请条件是什么? 我怎样才能查到我的qq号啊。。 米虫是怎么凭空长出来的 什么银行有纯信用贷 什么银行纯信用贷款 什么叫做纯信用贷款 什么是纯信用贷款 ...去年做了16颗钛合金烤瓷牙,没过多久就发现牙根松动了,和做烤瓷牙... ...电源需要冲多长时间才能充满,我的怎么三个小时就充满了 我眼中的作文400字 周公庙名胜古迹作文400字 天府半岛在天府新区什么位置 岐山周公庙作文!快快快!!! 小炒头菜怎么做 智慧宝贝(广州)婴童用品有限公司怎么样? 软件开发前期调研时间 怎么彻底删除手机里面的照片 黄壳HX5 Plus和HX5区别 海棠花夏季怎么养护和浇水(海棠花浇水的正确方法分享) 热收缩包装设备厂家 广州热收缩机的优势在哪? 求社会实践地区如何落实科教兴国战略与人才强国战略 论文 不少于3000字 最好是原创的 给跪了~~~~ pcx160是进口的吗 pcx160是新大洲还是五羊 悠悠忽忽表示什么意思?悠悠忽忽的拼音是什么 新时代是奋斗者的时代,只有奋斗的人生才称得上幸福的人生,新时代大学生如何成就出彩人生? 如何解决win10系统0x00000002无法连接打印机的问题 子宫肌瘤5CM了,每年还要检查吗? 我今年49岁,患有子宫肌瘤3公分左右需要手术吗 小米3的初始密码是多少 小米三恢复出厂设置密码是多少 大学生创新创业对创新驱动发展战略的意义 新能源猎豹cs9备胎在哪 建设银行卡是之前的身份证+之前的丢失了重补一张身份证+有没有影响卡? 09年7夕是新历几号啊? 2009年七夕是哪一天啊 ,我苯告诉我下 大田到阳历8月底种什么粮食作物? 森海大馒头某宝不到1000块可信吗?正常水货大馒头多少钱? 27码牛仔裤是多大码? 87年浙江户口女人.2021年公司开始交的五险.2023年开始灵活就业交社保,请问多少岁退休? 1977年2月3号出生,2013年开始交灵活就业保险哪一年退 81年参加工作退休工资,社保帐户38万,2024年退休,退休工资能有多少? if all it is is eight letters 中的语法 three words ,eight letters,say it and Iam yours 这3句英文是什么意思呢? 白菜 蟹味菇 香干能一起做菜 吗? 苹果手机发语音听不到声音怎么回事_百度问一问 荣耀支持无线充电的手机有哪些 winxp系统使用打印机提示由于打印机的当前设置有问题,无法打印如何解决 一台水泵的功率是5千瓦,10分钟内它能将多少m的水送上20米的高度?