C语言编程题: 输入10个字符串,将其从大到小排序后输出。

Python043

C语言编程题: 输入10个字符串,将其从大到小排序后输出。,第1张

#include<stdio.h>

void swap1(int *p,int n){

int temp

for(int i=0i<n-1i++)

for(int j=i+1j<nj++)

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=0i<n-1i++)

for(int j=i+1j<nj++)

if(p[i]<p[j]){

temp=p[i]

p[i]=p[j]

p[j]=temp

}

}

int main(){

char nint a[15]

while(~scanf("%c",&n)){

for(int i=0i<10i++){

scanf("%d",&a[i])

}

getchar()

if(n=='A') swap1(a,10)

else swap2(a,10)

for(int i=0i<10i++){

if(i==0)printf("%d",a[i])

else printf(" %d",a[i])

}

printf("\n")

}

}

运行效果:

扩展资料:

printf函数使用注意事项

1、域宽

%d:按整型数据的实际长度输出。

如果想输出指定宽度可以指定域宽,%md--&gtm域宽,打印出来以后,在控制台上,显示m位;

如果我们要打印的数的位数如果超过我们设定m则原样输出;

如果我们要打印的数的位数如果小于我们设定的位数,则补空白,具体如下:

如果m为正数,则左对齐(左侧补空白);

如果m为负数,则右对齐(右侧补空白)。

2、转义字符

如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。

如:printf("%f%%",1.0/3)输出结果:0.333333%。

#include <stdio.h>

int main(){

void Total(char st[],int b[])

char st[20]

int b[4]={0,0,0,0}

scanf("%s",st)

Total(st,b)

printf("字符串长度:%d,字母个数:%d,数字个数:%d,其他字符个数:%d\n",b[0],b[1],b[2],b[3])

return 0

}

void Total(char st[],int b[]){

int i

while(st[i]!='\0'){

b[0]++

if((st[i]>='A' &&st[i]<='Z')||(st[i]>='a' &&st[i]<='z')){

b[1]++

}else if(st[i]>='0' &&st[i]<='9'){

b[2]++

}else{

b[3]++

}

i++

}

}

#include <stdio.h>

#include<stdlib.h>

int main()

{

char a[100]

int i=0,j=0

printf("请输入字符串:\n")

gets(a)

while(a[i]!='\0')

i++

i--

for(j<=ii--,j++)

{

if(a[i]!=a[j])

{

break

}

}

if(j<=i)

{

printf("不是回文串\n",a)

}

else

{

printf("是回文串\n",a)

}

system("pause")

return 0

}

运行效果:

扩展资料:

return 0代表程序正常退出。return是C++预定义的语句,它提供了终止函数执行的一种方式。当return语句提供了一个值时,这个值就成为函数的返回值。

return语句用来结束循环,或返回一个函数的值。

1、return 0,说明程序正常退出,返回到主程序继续往下执行。

2、return 1,说明程序异常退出,返回主调函数来处理,继续往下执行。return 0或return 1对程序执行的顺序没有影响,只是大家习惯于使用return(0)退出子程序而已。