zoukankan      html  css  js  c++  java
  • C语言第9次作业

    1.编写函数判断用户输入的字符是否是对称的字符串(即顺读和倒读都一样的字符串)。例如“XYZYX”和“xyzzyx”都是对称的。

    #include<stdio.h>
    int main()
    {
          char str[100];
          int i=0,a,b,j,k;
          gets(str);
          while(str[i]!='')
                 i++;              
          if(i%2==0)
          {
                a=i/2-1;b=i/2;        
          }
          else
          {
                a=i/2-1;b=i/2+1;
          }
          for(j=a,k=b;j>=0,k<=i;j--,k++) 
          {
                if(str[j]!=str[k])
                break;
          }
          if(k==i+1)
                printf("Yes
    ");
          else
                printf("No.
    ");
    } 

    2. 编写函数用冒泡排序法将用户输入的若干个数(或学生姓名)按升序排序。

    #include <stdio.h>
    #include <string.h>
    void f1()
    {
        char a[100];
        int length,j,i,temp;
        printf("请输入:");
        scanf("%s",a);
        length=strlen(a);
        for(j=0;j<length;j++)
        {
            for(i=length-1;i>0;i--)
            {
                if(a[i]<a[i-1])
                {
                    temp=a[i];
                    a[i]=a[i-1];
                    a[i-1]=temp;
                }
            }
        }
        printf("将其升序排序为:");
        for(i=0;i<length;i++)
            printf("%c",a[i]);    
    }
    int main()
    {
        f1();
        return 0;
    }

    3. 编写函数用选择排序法将用户输入的若干个数(或学生姓名)按升序排序。

    #include<stdio.h>
    int max(int a[])
    {
        int i,j,t;
        for(i=0;i<10;i++)
        for(j=i+1;j<10;j++)
        if (a[i]>a[j])   
        {
            t=a[i];   
            a[i]=a[j];   
            a[j]=t;  
        }
    }
    int main()
    {
    
         int a[10],i;
         printf("输入十个数字:");       
         for(i=0;i<10;i++)
              scanf("%d",&a[i]);
         max(a);
         for(i=0;i<10;i++)      
         printf("%d  ",a[i]);
         return 0; 
    }

    4. 编写函数用插入排序法将用户输入的若干个数(或学生姓名)按升序排序。

    #include<stdio.h>
    int main()
    {
        int a[100];
        int i,temp,j;
        printf("请输入:");
        scanf("%d",a);
        for(i=1;i<100;i++)
        {
            temp=a[i];
            j=i-1;
            while(j>=0&&temp<a[j])
            {
                a[j*1]=a[j];
                j--;
            }
            a[j*1]=temp    
        } 
        printf("升序排序为:")
    }

    我尽力了,真的。

  • 相关阅读:
    3-05. 寻求倒数第二链线性表K项目(15)(STL list应用 ZJU_PAT)
    springbatch操作CSV文件
    oracle 数据库技术支持生命周期表
    调试经验--硬盘U菜
    hdu149850 years, 50 colors (多个最小顶点覆盖)
    POJ3213(矩阵乘法)
    Cocos2d-x 2.3.3版本 FlappyBird
    POJ 2114 Boatherds 划分树
    jQuery 添加 删除 改动select option
    STL容器存储的内容动态分配情况下的内存管理
  • 原文地址:https://www.cnblogs.com/lizi-shaoxiaoye/p/6099908.html
Copyright © 2011-2022 走看看