用C语言描述对于输入的任意三个整数,将它们按从小到大的顺序输出? C语言编程题,从键盘输入任意3个数,按从小到大的顺序输出
C\u8bed\u8a00:::::.\u5bf9\u4e8e\u8f93\u5165\u7684\u4efb\u610f\u4e09\u4e2a\u6574\u6570\uff0c\u5c06\u5b83\u4eec\u6309\u4ece\u5c0f\u5230\u5927\u7684\u987a\u5e8f\u8f93\u51fa\u30021
\u8bfb\u5165\u4e09\u4e2a\u6570\u3002
2
\u5faa\u73af\u6bd4\u8f83\u5927\u5c0f\uff0c\u4ee4\u4e09\u4e2a\u6570\u4ece\u5c0f\u5230\u5927\u6392\u5e8f\u3002
3
\u8f93\u51fa\u7ed3\u679c\u3002
\u4ee3\u7801\uff1a
#include
int main()
{
int a,b,c,t;
#define swap(m,n){t = m; m = n; n = t;}//\u4ea4\u6362\u503c\u5b8f\u3002
scanf("%d%d%d",&a,&b,&c);//\u8f93\u5165\u4e09\u4e2a\u6570\u3002
if(a>b) swap(a,b);
if(a>c)swap(a,c);//\u7ecf\u8fc7\u4ee5\u4e0a\u4e24\u6b65\uff0ca\u4e3a\u6700\u5c0f\u503c\u3002
if(b>c)swap(b,c);//b\u6bd4c\u5c0f\u3002
printf("%d %d %d\n", a,b,c);//\u8f93\u51fa\u7ed3\u679c\u3002
return 0;
}
\u4ee3\u78011.
// \u8f93\u51653\u4e2a\u6570\uff0c\u8981\u6c42\u6309\u4ece\u5c0f\u5230\u5927\u987a\u5e8f\u8f93\u51fa #include int main() { int a,b,c,t; printf("\u8bf7\u8f93\u5165\u4e09\u4e2a\u6570\uff1a"); scanf("%d%d%d",&a,&b,&c); if(a > b) { t = a; a = b; b = t; } if(a > c) { t = a; a = c; c = t; } if(b > c) { t = b; b = c; c = t; } printf("\u4ece\u5c0f\u5230\u5927\u7684\u987a\u5e8f\u662f\uff1a%d %d %d\n",a,b,c); return 0; }\u4ee3\u78012.
\u8f93\u51653\u4e2a\u5b57\u7b26\u4e32\uff0c\u6309\u4ece\u5c0f\u5230\u5927\u987a\u5e8f\u8f93\u51fa\u3002 //\u5148\u7528\u7a0b\u5e8f\u5bf9\u4e09\u4e2a\u6570\u8fdb\u884c\u4ece\u5c0f\u5230\u5927\u6392\u5e8f\uff0c\u7136\u540e\u4fee\u6539\u7a0b\u5e8f#include#includeint main(){void swap(char *pt1,char *pt2); char a[20],b[20],c[20]; char *p1,*p2,*p3; printf("\u8bf7\u8f93\u5165\u4e09\u4e2a\u5b57\u7b26\u4e32:"); gets(a); gets(b); gets(c); //\u6216\u7528scanf("%s,%s,%s",a,b,c); p1=&a[0];p2=&b[0];p3=&c[0];//\u4e09\u4e2a\u6307\u9488\u5206\u522b\u6307\u5411\u4e09\u4e2a\u5b57\u7b26\u6570\u7ec4 if(strcmp(*p1,*p2)>0)swap(p1,p2);//if(strcmp(a,b)>0)swap(a,b); //\u6bd4\u8f83\u4e24\u4e2a\u5b57\u7b26\u4e32\u7684\u5927\u5c0f\uff0c\u4e3a\u4ec0\u4e48\u7528\u524d\u4e00\u53e5\u7684\u65f6\u5019\u4f1a\u51fa\u73b0\u8b66\u544a\u5462 if(strcmp(a,c)>0)swap(a,c);//if(strcmp(*p1,*p3)>0)swap(*p1,*p3); if(strcmp(b,c)>0)swap(b,c);// if(strcmp(*p2,*p3)>0)swap(*p2,*p3); printf("\u7531\u5c0f\u5230\u5927\u6392\u5217\uff1a%s\n%s\n%s\n",a,b,c); return 0;}void swap(char *pt1,char *pt2){ char t[20]; strcpy(t,pt1); strcpy(pt1,pt2); strcpy(pt2,t);//t=*pt1;*pt1=*pt2;*pt2=t;}\u4ee3\u78013.
#include #include #define SIZE 3 #define LEN 50 int main(void) { char str[SIZE][LEN]; char (*pst)[LEN]=str; char temp[LEN]; int i,j; printf("Please enter 3 string.\n"); for(i=0;i<SIZE;i++) { fgets(*(pst+i),LEN,stdin); } printf("Befor sort:\n"); for(i=0;i<SIZE;i++) { fputs(*(pst+i),stdout); } for(i=0;i<SIZE-1;i++) for(j=i+1;j<SIZE;j++) { if(strcmp(*(pst+i),*(pst+j)) == 1) { strcpy(temp,*(pst+i)); strcpy(*(pst+i),*(pst+j)); strcpy(*(pst+j),temp); } } printf("After sort:\n"); for(i=0;i<SIZE;i++) { fputs(*(pst+i),stdout); } }
1、输入三个整数x,y,z,请把这三个数由小到大输出。
2、所需要的开头代码,#include "stdio.h"#include "conio.h",预处理命令,表示程序包含conio.h库文件conio.h库文件定义了通过控制台进行数据输入和数据输出的函数。
3、下面这个代码是关键
int x,y,z,t; scanf("%d%d%d",&x,&y,&z); if (x>y)
4、然后下一步
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的值*/
这一步的目的是交换各自的数值,使x的数值最小。
5、接下来就是输出和结尾
printf("small to big: %d %d %d
",x,y,z); getch(); }。
6、总之就是这样,全部的代码就是输入
#include "stdio.h"#include "conio.h"main(){ int x,y,z,t; 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
",x,y,z); getch(); }即可。
输入三个整数x,y,z,请把这三个数由小到大输出。
所需要的开头代码,#include"stdio。h"#include"conio。h",预处理命令,表示程序包含conio。h库文件conio。h库文件定义了通过控制台进行数据输入和数据输出的函数。
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的值*/这一步的目的是交换各自的数值,使x的数值最小。
算法稳定性
冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,是不会再交换的;如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相邻起来,这时候也不会交换,所以相同元素的前后顺序并没有改变,所以冒泡排序是一种稳定排序算法。
以上内容参考:百度百科-冒泡排序
1 读入三个数。
2 循环比较大小,令三个数从小到大排序。
3 输出结果。
代码:
#include <stdio.h>
int main()
{
int a,b,c,t;
#define swap(m,n){t = m; m = n; n = t;}//交换值宏。
scanf("%d%d%d",&a,&b,&c);//输入三个数。
if(a>b) swap(a,b);
if(a>c)swap(a,c);//经过以上两步,a为最小值。
if(b>c)swap(b,c);//b比c小。
printf("%d %d %d
", a,b,c);//输出结果。
return 0;
}
sw(int *p1,int *p2)
{int x;
x=*p1;
*p1=*p2;
*p2=x;
}
ss(int *q1,int *q2,int *q3)
{if(*q1>*q2) sw(q1,q2);
if(*q1>*q3) sw(q1,q3);
if(*q2>*q3) sw(q2,q3);
}
main()
{int a,b,c;
int *i,*j,*k;
scanf("%d,%d,%d",&a,&b,&c);
i=&a;j=&b;k=&c;
ss(i,j,k);
printf("%d,%d,%d\n",a,b,c);
}
veyfur 5 2 f k · С С ia
cry
qmhsco
uydp
ydqnepk
绛旓細include<stdio.h> void main(){int i,j,k,s[3];printf("璇疯緭鍏0~9涓鐨勪换鎰忎笁涓鏁:\n");for(i=0;i<3;i++){scanf("%d",&s[i]);};printf("浣杈撳叆鐨鏁颁负\n%d\t%d\t%d\t\n",s[0],s[1],s[2]);printf("缁撴灉涓:\n");for(i=0;i<3;i++){for(j=0;j<3;j++){...
绛旓細include"stdio.h"main(){ float a[3];float max;printf("杈撳叆3涓鏁:");scanf("%f%f%f",&a[0],&a[1],&a[3]);int max=a[0];for(int i=0;i<3;i++){ if(a[i]>max)max=a[i];} printf("max=%f\n",max);} 閬囧埌杩欑棰樺簲璇ユ兂鍒版暟缁勶紝鍥犱负褰撲笉鏄3涓暟鐨勬椂鍊欙紝涓涓釜鎸ㄧ潃...
绛旓細include<stdio.h> int main(){ int a,b,c;scanf("%d %d %d",&a,&b,&c);if(a>=b&&b>=c)printf("%8d%8d%8d\n",c,b,a);else if(b>=c&&c>=a)printf("%8d%8d%8d\n",a,c,b);else if(a>=c&&c>=b)printf("%8d%8d%8d\n",b,c,a);else if(b>=a&&a>=c)...
绛旓細scanf("%d,%d,%d",&num1,&num2,&num3);//杈撳叆涓変釜鏁板瓧 if(num1>num2){temp=num1,num1=num2,num2=temp}//浜ゆ崲鏁板瓧椤哄簭 if(num2>num3){temp=num2,num2=num3,num3=temp}//浜ゆ崲鏁板瓧椤哄簭 if(num1>num3){temp=num1,num1=num3,num3=temp}//浜ゆ崲鏁板瓧椤哄簭 printf("three numbers ...
绛旓細include鈥渟tdio.h"void main(){ int a,b,c,sum;float ave;scanf("%d %d %d",&a,&b,&c);sum=a+b+c;ave=(a+b+c)/3.0;printf("涓変釜鏁扮殑鍜屼负锛 %d\n",sum);printf("涓変釜鏁扮殑骞冲潎鍊间负锛 %f\n",ave);}
绛旓細include<stdio.h> int main(void){ int a;int m[6]={0};int *p;p=&m[0];int max;for(int n=0;n<3;n++){ printf("璇杈撳叆绗%d涓暟瀛",n+1);scanf("%d",&a);(p+n)=a;} for (int i=0; i<3; i++) { int j=i+1;if (*(p+i)<*(p+j)) { max=*(p+j);...
绛旓細main(){ int a,b,c,max;printf("璇浠绘剰杈撳叆涓変釜鏁帮細\n"); /*杩欓噷绫诲瀷璇存槑涓篿nt鏁村瀷锛屽彲鑷杩涜淇敼*/ scanf("%d%d%d",&a,&b,&c);max=a>b?a:b;max=max>c?max:c;printf("The max number is %d.",max);} 杩欓噷鎺㈣涓涓嬫ゼ涓婄殑鍥炵瓟锛岄鍏堥潪甯歌偗瀹氳繖浣嶅厔鍙颁娇鐢ㄦ潯浠惰〃杈惧紡鐨勪笁鐩...
绛旓細鎴戠殑鎬濊矾鏄細璁句竴涓狹ax鍙橀噺锛岀敤浜庡瓨鏀炬渶鍒板硷紝鍏堟瘮杈僡鍜宐锛岃皝澶у氨鎶婅皝瀛樻斁鍒癿ax涓紝鐒跺悗鍐嶆嬁max鍜c姣旇緝锛岃鏄痗灏忥紝鍒欒緭鍑簃ax锛岃鏄痗澶э紝鍒欐妸c瀛樻斁鍒癿ax涓苟杈撳嚭锛乿oid main(){ int a,b,c,Max;printf("璇杈撳叆鏁版嵁:\n");scanf("%d%d%d",&a,&b,&c);Max=(a>b)?a:b;Max=(Max>c...
绛旓細2銆亄 int a,b,c; scanf("%d%d%d",&a,&b,&c);3銆 int sum = a+b+c;4銆 printf("鍜岋細 %d",sum);5銆乸rintf("骞冲潎鍊硷細%f",sum/3.0);6銆乺eturn 0 璁茶В锛1銆佸厛瀹氫箟鍥涗釜鏁村舰銆2銆佷竴涓诞鐐瑰瀷淇濆瓨骞冲潎鍊笺3銆佺劧鍚庡湪鎺у埗鍙扮瓑寰呰緭鍏ャ4銆佸皢杈撳叆鐨勪笁涓鏁存暟鍔犺捣鏉ヨ祴鍊肩粰sum...
绛旓細C璇█绋嬪簭濡備笅锛歩nclude<stdio.h> intmain(){ inta,b,c,t;printf("璇杈撳叆涓変釜鏁帮細");scanf("%d%d%d",&a,&b,&c);if(a>b){ t=a;a=b;b=t;} if(a>c){ t=a;a=c;c=t;} if(b>c){ t=b;b=c;c=t;} printf("浠庡皬鍒板ぇ鐨勯『搴忔槸锛%d %d %d\n",a,b,c);return0;} ...