C语言编程:输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符。

输入数据有多组,每组占一行,有三个字符组成,之间无空格。
例如输入 qwe
asd
zxc
输出 e q w
a d s
c x z

ASCII码从小到大的顺序输出这三个字符的源代码如下:

#include<

stdio.h>

void main()
{

char a,s,c;

char max,min; 

printf("Please input three numbers:");

scanf("%c,%c,%c",&a,&b,&c);

max=a;

if(max<b) max=b;

if(max<c) max=c;

printf("max=%c\n",max);

min=a;

if(min>b) min=b;

if(min>c) min=c;

printf("min=%d\n",min);

}

扩展资料

找出并打印ASCII码最大的字符的源代码如下

#include <stdio.h>

void main()

{

char a,b,c,max;

scanf("%c%c%c",&a,&b,&c);//读入三个字符如abc

max=a;//初始化最大为第一个

if(b>max) max=b;//和第二个比较如果第二个大于max,b赋值给max

if(c>max) max=c;//同上

printf("%c",max);

}

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-10-10

此题的正确答案如下:

#include<stdio.h>

main()

chara,d,c,b;

inti;

scanf("%d",&i);

getchar();

while(i--)

scanf("%c%c%c",&a,&b,&c);

getchar();

if(a>b){d=c;a=c;b=d;}

if(a>c){d=n;a=n;c=d;}

if(b>c){d=n;b=n;c=d;}

printf("%c%c%c\n",a,b,c);

输入程序

<参考运行结果>

扩展资料:

Scanf()的用法

输出值只是空格前的字符,因为scanf函数的输入格式不正确。您需要在输入参数的变量前添加&。

Scanf(“%s”,s);更改为scanf(“%s”,&s);

scanf的用法是:scanf(“格式控制字符串”,输入参数一,输入参数二);

格式控制字符串包含:格式控制说明,普通字符。

注意:

1、格式控制字符串指示输入的格式(int类型为%d,float为%f,double为%lf)

2、普通字符:输出数据时,按原样输出字符,例如:“ fahr =%d,celsius =%d \ n”中的fahr =,celsius =。

3、输入参数是变量的地址,因此在变量前面添加&。

本回答被网友采纳
第2个回答  2019-06-04

#include<stdio.h>

main()

chara,b,c,d;

inti;

scanf("%d",&i);

getchar();

while(i--)

scanf("%c%c%c",&a,&b,&c);

getchar();

if(a>b){d=a;a=b;b=d;}

if(a>c){d=a;a=c;c=d;}

if(b>c){d=b;b=c;c=d;}

printf("%c%c%c\n",a,b,c);

运行结果:

扩展资料:

scanf()用法:

输出的值只是空格前面的字符是因为scanf函数的输入格式错误,输入参数的变量前需要加&。

scanf("%s",s);改为scanf("%s",&s);

scanf的用法是:scanf("格式控制字符串",输入参数一,输入参数二);

格式控制字符串包含:格式控制说明,普通字符。

1、格式控制字符串表示输入的格式,(int型用%d,float用%f,double型用%lf)

2、普通字符:在输出数据的时候,按照原样输出的字符,如:"fahr=%d,celsius=%d\n"中的fahr=,celsius=。

3、输入的参数是变量的地址,所以要在变量前面加&。

本回答被网友采纳
第3个回答  推荐于2017-11-24
//这道题关键是把输入3个字符后的回车过滤掉,不然回车就会成为下一组的第一个字符。有两种方法:

//第一种:
#include <stdio.h>

int main()
{
char a,b,c,tmp;
while((a=getchar())!=EOF)
{
b=getchar();
c=getchar();
getchar(); //在录入c后用getchar()滤掉回车
if(a>b)
{
tmp=a;
a=b;
b=tmp;
}
if(a>c)
{
tmp=a;
a=c;
c=tmp;
}
if(b>c)
{
tmp=b;
b=c;
c=tmp;
}
printf("%c %c %c\n",a,b,c);
}
return 0;
}

//第二种:
#include <stdio.h>

int main()
{
char a,b,c,tmp;
while(scanf("%c%c%c%*c",&a,&b,&c)!=EOF) //用"%*c"(空字符,不存储字符的字符)滤掉回车
{
if(a>b) tmp=a,a=b,b=tmp; //逗号表达式,简洁
if(a>c) tmp=a,a=c,c=tmp;
if(b>c) tmp=b,b=c,c=tmp;
printf("%c %c %c\n",a,b,c);
}
return 0;
}本回答被提问者采纳
第4个回答  2016-10-10
public static void main(String []args) {
    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入要排序的字符串,以分号(;)隔开,例如:a;c;b;e;d");
    String inString = scanner.next();

    String []chars = inString.split(";");
    Arrays.sort(chars);

    System.out.print("排序后的结果为:");
    for (String item : chars) {
        System.out.print(item + " ");
    }
}

C语言编程:输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三...
void main(){ char a,s,c;char max,min;printf("Please input three numbers:");scanf("%c,%c,%c",&a,&b,&c);max=a;if(max<b) max=b;if(max<c) max=c;printf("max=%c\\n",max);min=a;if(min>b) min=b;if(min>c) min=c;printf("min=%d\\n",min);} ...

C语言编程:输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三...
b,c,tmp; while(scanf(

C语言输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符...
scanf("%c%c%c%c",&a,&b,&c,&d)!=EOF 你输入的是4个字符啊,输出却只有3个字符

...\/按各字符的ASCII码从小到大的顺序输出这三个字符
if(p>s){t=a;a=c;c=t;}if(q>s){t=b;b=c;c=t;}printf("%c%c%c\\n",a,b,c);}

c语言此题为何错 输入三个字符后,按各字符的ASCII码从小到大的顺序输出...
错误2:在每次输入之后用getchar消除回车带来的影响:include<stdio.h>int main(){char e, f, g, i = 0, b, c, d;\/\/\/charwhile (scanf("%c%c%c", &e, &f, &g) != EOF){getchar();\/\/消除回车if (e>f) {if (f>g)b = e, c = f, d = g;else {if (e>g)b =...

(c语言)输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符...
c1,c2,c3,c4,c5,c6,c7;printf("Pleaseinputnum:\n");scanf("%c%c%c",&c0,&c1,&c2);c3=max(c0,c1);c4=max(c3,c2);c5=min(c0,c1);c6=min(c5,c2);c7=c0+c1+c2-c4-c6;printf("%c%c%c\n",c4,c7,c6);return0;} ...

C语言\/输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符...
直接输入3个字符,然后比较排序就可以了,LZ是不会呢还是懒得去想,就是为了交作业?还是杭电的,C语言哪个老师教的,吴鹏,还是楼永坚还是夏一行啊?

...输入3个字母,要求按ACSII从小到大的顺序输出这3个字母.
include<stdio.h>int main(){ char a, b, c, tmp; scanf("%c %c %c", &a, &b, &c);\/\/---if(!((a >= 'a' && a <= 'z') || (a >= 'A' && a <= 'Z'))) { printf("ERROR!\\n"); return 1; }if(!((b >= 'a' && b <= 'z') || (...

c语言。输入三个字符,输出三个字符对应ascii码的大小,从大到小排
void main(){ char a[3];int i,j;scanf("%c %c %c",&a[0],&a[1],&a[2]);for(i=0;i<3;i++){ for(j=i;j<3;j++){ if (a[i]<a[j]){ char temp=a[i];a[i]=a[j];a[j]=temp;} } } for(i=0;i<3;i++)printf("%d ",a[i]);} 用冒泡法来做。如果...

...按字符的ASCII码从小到大的顺序输出这三个字符。C语言,在线等_百度...
回车也是一个字符,需要在最好把回车从输入流里面取出来。include <stdio.h> int main (){ char a,b,c;while(scanf("%c%c%c",&a,&b,&c)!=EOF){ if (a<c&&a<b&&b<c)printf("%c %c %c\\n",a,b,c);else if(a<b&&a<c&&c<b)printf("%c %c %c\\n",a,c,b);else ...

相似回答