#include<stdio.h>
void swap1(int *p,int n){
int temp;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(p[i]>p[j]){
temp=p[i];
p[i]=p[j];
p[j]=temp;
}
}
void swap2(int *p,int n){
int temp;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(p[i]<p[j]){
temp=p[i];
p[i]=p[j];
p[j]=temp;
}
}
int main(){
char n;int a[15];
while(~scanf("%c",&n)){
for(int i=0;i<10;i++){
scanf("%d",&a[i]);
}
getchar();
if(n=='A') swap1(a,10);
else swap2(a,10);
for(int i=0;i<10;i++){
if(i==0)printf("%d",a[i]);
else printf(" %d",a[i]);
}
printf("\n");
}
}
运行效果:
printf函数使用注意事项
1、域宽
%d:按整型数据的实际长度输出。
如果想输出指定宽度可以指定域宽,%md-->m域宽,打印出来以后,在控制台上,显示m位;
如果我们要打印的数的位数如果超过我们设定m则原样输出;
如果我们要打印的数的位数如果小于我们设定的位数,则补空白,具体如下:
如果m为正数,则左对齐(左侧补空白);
如果m为负数,则右对齐(右侧补空白)。
2、转义字符
如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。
如:printf("%f%%",1.0/3);输出结果:0.333333%。
太赞了!perfect!不过,请问int main 和void main 在这里会不会出现问题
追答如果用int main ,后面就要renturn 0;如果用void main 就不用,加油
本回答被提问者采纳