C语言 输出结果

来源:百度知道 编辑:UC知道 时间:2024/05/21 17:13:01
#include<stdio.h>
main()
char a,b,c,t;
print("input 3 char:\n")
scanf("%C%C%C",&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;}
print("output 3 char:%c %c %c",a,b,c);
}

scanf("%C%C%C",&a,&b,%c); 错误改为scanf("%c%c%c",&a,&b,&c);

别处没有问题,结果是将3个字符按他们的ASCLL码从小到大排列。
如若a=='z',b=='y',c=='x',则输出结果为:output 3 char: x y z

#include<stdio.h>
#include<string.h>
main()
{
char a;
char b;
char c;
char t;
printf("input 3 char:\n");
scanf("%c%c%c",&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("output 3 char:%c %c %c",a,b,c);
}
输入三个字符后 对他们从小到大排序

上面正解,“这个语法的算法是对输入的三个字符按ASCII值升序排列,并输出排序后的结果。 “

语法错误连篇,会输出错误信息。

这个语法的算法是对输入的三个字符按ASCII值升序排列,并输出排序后的结果。

修正后的程序:

#include<stdio.h>
main()
{
char a,b,c,t;
printf("input 3 char:\n");
scanf("%c%c%c",&a,&b,&c);
if(a>b)
{
t=a;
a=b;
b=t;
}