• 第九次作业补


    复制代码
    #include<stdio.h>
    #include<string.h>
    void z()//判断字符串对称 
    {
        int i,l;
        char a[100];
        printf("请输入字符串:");
        scanf("%s",a);
        l=strlen(a);
        i=0;
        while(i<l)
        {
            if(a[i]!=a[l-1])
                  break;
            else
            {
                i++;
                l--;
            } 
        }
        if(i>=l)
             printf("这是一个对称的字符串");
        else
             printf("这不是一个对称的字符串");          
    }
    int main()
    {
        z();
    return 0;
    }
    复制代码

    2.

    复制代码
    #include <stdio.h>
    #include <string.h>
    void z()//冒泡排序法 
    {
        char a[100];
        int i,j,l,t;
        printf("请输入字符串:");
        scanf("%s",a);
        l=strlen(a);
        for(i=0;i<l;i++)
        {
            for(j=l-1;j>0;j--)
            {
                if(a[j]<a[j-1])
                {
                    t=a[j];
                    a[j]=a[j-1];
                    a[j-1]=t;
                }
            }
        }
        printf("升序排序为:");
        for(j=0;j<l;j++)
             printf("%c",a[j]); 
    }
    int main()
    {
        z();
    return 0;    
    }
    复制代码

    3.

    复制代码
    #include<stdio.h>
    #include<string.h>
    void z()//选择排序法 
    {
        int i,j,l,t,min;
        char a[100];
        printf("请输入字符串:");
        scanf("%s",a);
        l=strlen(a);
        for(i=0;i<l;i++)
        {
            min=i;
            for(j=min+1;j<l;j++)
            {
                if(a[j]<a[min])
                min=j;
            }
            t=a[min];
            a[min]=a[i];
            a[i]=t;
        }
        printf("升序排序为:");
        printf("%s",a);
    }
    int main()
    {
        z();
    return 0;
    }
    复制代码

    4.

    复制代码
    #include<stdio.h>
    #include<string.h>
    void z()//插入排序法
    {
        char a[100];
        int i,j,l,t,k;
        printf("请输入字符串:");
        scanf("%s",a);
        l=strlen(a);
        for(i=1;i<l;i++)
        {
            t=a[i];
            for(j=0;j<i;j++)
            {
                if(a[i]<a[j])
                {
                    for(k=i;k>j;k--)
                         a[k]=a[k-1];
                         break; 
                }
            }
            a[j]=t;
        } 
        printf("升序排序为:");
            printf("%s    ",a);
    } 
    int main()
    {
        z();
    return 0;    
    }
  • 相关阅读:
    [leetCode]剑指 Offer 36. 二叉搜索树与双向链表
    [leetCode]剑指 Offer 35. 复杂链表的复制
    剑指 Offer 34. 二叉树中和为某一值的路径
    剑指 Offer 33. 二叉搜索树的后序遍历序列
    剑指 Offer 32
    [leetCode]剑指 Offer 31. 栈的压入、弹出序列
    POJ
    POJ
    POJ
    POJ
  • 原文地址:https://www.cnblogs.com/crh971230/p/6143435.html
Copyright © 2020-2023  润新知