1.“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon” 等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。
#include<stdio.h>
#include<string.h>
char c[10000];
int i,f,l;
int main()
{
while(scanf("%s",&c)!=EOF)
{
getchar();
l=strlen(c);
f=0;
for(i=0;i<l/2;i++)
{
if(c[i]!=c[l-i-1])
{
printf("NO!\n");
f=1;
break;
}
}
if(!f)
printf("YES!\n");
}
}
2.输入 n 个数,按从小到大进行排序并输出。
#include<stdio.h>
int a[100000],i,j,n;
void swap(int *m,int *n)
{
int temp;
temp=*m;
*m=*n;
*n=temp;
}
void bubblesort(int *k,int l)
{
for(i=0;i<l;i++)
for(j=0;j<l-i-1;j++)
if(a[j+1]<a[j])
swap(&a[j],&a[j+1]);
}
void main()
{
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
scanf("%d",&a[i]);
bubblesort(&a,n);
for(i=0;i<n-1;i++)
printf("%d ",a[i]);
printf("%d\n",a[n-1]);
}
}
用了冒泡排序,因为写起来比较简单。