钟国晨160809323 (作业9)

#include<stdio.h>//判断字符串是否对称
#include <string.h>
int main()
{
    char a[100];
    int length,i,j;
    printf("请输入字符串:\n");
    scanf("%s",a);
     length=strlen(a);
    for(i=0,j=length-1;i<=j;j--,i++)
    {
        if(a[i]!=a[j])
        {
            break;
        }
    }
    if(i>j)
    {
        printf("对称");
    }
    else
    {
        printf("不对称");
    }
    printf("\n");
    return 0;
}
#include<stdio.h>
void bubbleSort(int a[])//冒号排序
{
    int i,j;
    for(i=0;i<10;i++)
    {
        for(j=9;j>0;j--)
        {
            if(a[j]<a[j-1])
            {
                int temp=a[j];
                a[j]=a[j-1];
                a[j-1]=temp;
            }
        }

    }
}
void display(int a[])
{
    int i;
    for(i=0;i<10;i++)
    {
        printf("%d    ",a[i]);
    }
}
int main()
{
    int a[10]={0,9,6,1,3,2,5,4,8,7};
    bubbleSort(a);
    display(a);
    return 0;
}
#include<stdio.h>//选择排序法
void selectsort(int a[])
{
    int i,j,min,temp;
    for(j=0;j<10;j++)
    {
        min=j;
        for(i=min+1;i<10;i++)
        {
            if(a[i]<a[min])
            min=i;
        }
        temp=a[j];
        a[j]=a[min];
        a[min]=temp;
    }
}
void display(int a[])
{
    int i;
    for(i=0;i<10;i++)
    {
        printf("%d    ",a[i]);
    }
}
int main()
{
      int a[10]={0,9,6,1,3,2,5,4,8,7};
    selectsort(a);
    display(a);
    return 0;
}
#include<stdio.h>
void insertSort(int a[])//插入排序
{
    int i,j;
    for(i=0;i<10;i++)
    {
        for(j=1;j<10;j++)
        {
            if(a[j]<a[j-1])
            {
                int temp=a[j];
                a[j]=a[j-1];
                a[j-1]=temp;
            }
        }

    }
}
void display(int a[])
{
    int i;
    for(i=0;i<10;i++)
    {
        printf("%d    ",a[i]);
    }
}
int main()
{
    int a[10]={0,9,6,1,3,2,5,4,8,7};
    insertSort(a);
    display(a);
    return 0;
}

好想写出最后一题,可惜才疏学浅,一直搞不懂希尔排序法,暂时没有思路,如果想出来的话会补交到评论里的

时间: 2024-12-20 18:35:40

钟国晨160809323 (作业9)的相关文章

钟国晨160809323作业8

#include<stdio.h>//关于x轴旋转的乘法表 int main() { int b[10][10]; int i,j; for(i=8;i>-1;i--) { for(j=8;j>-1;j--) { b[i][j]=(i+1)*(j+1); } } for(i=8;i>-1;i--) { for(j=8;j>-1;j--) { printf("%d ",b[i][j]); } printf("\n"); } retu

钟国晨160809323(作业5)

#include<stdio.h>//输入三个数有小到大排序 int main() { int x; int y; int z; printf("输入三个整数:"); scanf("%d %d %d",&x,&y,&z); if(x<y && x<z) { if(y<z) printf("按从小到大排序为:%d %d %d\n",x, y, z); if(y>z) pri

钟国晨160809323(作业7)

#include<stdio.h>// 编写递归函数将某个整数按反序方式输出 int main() { int i,n,a[5]; printf("输入n的值:\n"); scanf("%d",&n); printf("整数的每个数字间用空格隔开,输入的由n个数字组成的整数为:\n",n); for(i=0; i<n; i++) { scanf("%d",&a[i]); } printf(&q

钟国晨160809323(作业11)

#include<stdio.h>//指数数组求和 void sum(int *p) { int a[5]; int i,sum=0; printf("请输入5个整数"); for(i=0;i<5;i++) { scanf("%d",&a[i]); } p=&a[0]; for(p=a;p<(a+5);p++) { sum=sum+*p; } printf("%d",sum); } int main() {

钟国晨160809323(作业4)

#include<stdio.h>//猜数字游戏 #include<stdlib.h> #include<time.h> int main() { int a; int b; int i =0; srand(time(NULL)); a=rand()%100+1; while(a) { printf("请猜一个数:"); scanf("%d",&b); i++; if(b<0) { printf("Game

钟国晨 160809323(作业2)

钟国晨 160809323(作业3)

#include<stdio.h> int main() { printf(" * * * * * * * * * *\n"); printf(" * * * * * * * * *\n"); printf(" * * * * * * * *\n"); printf(" * * * * * * *\n"); printf(" * * * * * *\n"); printf(" * *

钟国晨160809323

#include<stdio.h>//x的n次方 int mypow(int x, int n) { int i,c=1; for(i=1;i<=n;i++) c=c*x; return c; } int main() { int x,n; printf("请分别输入x,n的值:\n"); scanf("%d %d",&x,&n); printf("%d",mypow(x,n)); return 0; } #in

C语言作业11

1.定义函数void sum(int *p)实现对给定数组a中所有元素求和并打印输出求和结果. #include<stdio.h> void sum(int *p) { int a[10]; int i,sum=0; printf("请输入10个整数:"); for(i=0;i<10;i++) { scanf("%d",&a[i]); } p=&a[0]; for(p=a;p<(a+10);p++) { sum=sum+*p;