zoukankan      html  css  js  c++  java
  • 第九次作业(有好多都彻底不懂了)

    第一个:题目出得很有意思,很好玩。把首尾的表示方法理解了,还将if语句熟练运用,加深了对if语句的了解。

    #include<stdio.h>
    #include<string.h>
    void check(char str[])
    {
        int i,len;
        len=strlen(str);
        for(i=0;i<len;i++)
        {
            if(str[i]!=str[len-1-i])
            {
                printf("输入的%s不是对称的字符串;
    ",str);
                return 0;
            }
        }
        printf("输入的%s是对称的字符串;
    ",str);
    } 
    int main()
    {
        char str[100];
        printf("输入要判断的字符串:");
        scanf("%s",str);
        check(str);
        return 0;
    }

    作业2:就是直接按照老师上课的意思写,上课听懂了,所以就很好理解。唯一难一点的就是将字母变成字符串,还是不是很理解他的写法,用了很长时间去了解。

    #include <stdio.h>
    #include <string.h>
    void bubble_sort_number(int num[],int max)
    {
        int i,j,temp;
        for(i=0;i<max-1;i++)
        {
            for(j=0;j<max-1-i;j++)
            {
                if(num[j]>num[j+1])
                {
                    temp=num[j];
                    num[j]=num[j+1];
                    num[j+1]=temp;
                }
            }
        }
        printf("升序排序结果为:");
        for(i=0;i<max;i++)
            printf("%d ",num[i]);
    }
    void bubble_sort_string(char str[][100],int max)
    {
        int i,j;
        char temp[100];
        for(i=0;i<max-1;i++)
        {
            for(j=0;j<max-1-i;j++)
            {
                if(strcmp(str[j],str[j+1])>0)
                {
                    strcpy(temp,str[j]);
                    strcpy(str[j],str[j+1]);
                    strcpy(str[j+1],temp);
                }
            }
        }
        printf("升序排序结果为:");
        for(i=0;i<max;i++)
            printf("%s ",str[i]);
    }
    
    int main()
    {
        int num[100],select,i,n;
        char str[100][100];
        printf("输入1进行输入若干个数的排序功能,输入2进行输入若干学生姓名的排序功能
    ");
        scanf("%d",&select);
        printf("输入数量:");
        scanf("%d",&n);
        if(select==1)
        {
            printf("依次输入%d个数字,用空格隔开:",n);
            for(i=0;i<n;i++)
                scanf("%d",&num[i]);
            bubble_sort_number(num,n);
        }
        if(select==2)
        {
            printf("依次输入%d个姓名,用空格隔开:",n);
            for(i=0;i<n;i++)
                scanf("%s",str[i]);
            bubble_sort_string(str,n);
        }
        return 0;
    }
    
     

    作业3:上课虽然讲的不多,但是看上去跟冒泡的意思很像。然后我就迷迷瞪瞪的写了一下下,好像还能运行,那就交了吧。

    #include <stdio.h>
    #include <string.h>
    void select_sort_number(int num[],int max)
    {
        int i,j,k,temp;
        for(i=0;i<max-1;i++)
        {
            k=i;
            for(j=i+1;j<max;j++)
            {
                if(num[k]>num[j])
                {
                    temp=num[k];
                    num[k]=num[j];
                    num[j]=temp;
                }
            }
        }
        printf("升序排序结果为:");
        for(i=0;i<max;i++)
            printf("%d ",num[i]);
    }
    void select_sort_string(char str[][100],int max)
    {
        int i,j,k;
        char temp[100];
        for(i=0;i<max-1;i++)
        {
            k=i;
            for(j=i+1;j<max;j++)
            {
                if(strcmp(str[k],str[j])>0)
                {
                    strcpy(temp,str[k]);
                    strcpy(str[k],str[j]);
                    strcpy(str[j],temp);
                }
            }
        }
        printf("升序排序结果为:");
        for(i=0;i<max;i++)
            printf("%s ",str[i]);
    }
    
    int main()
    {
        int num[100],select,i,n;
        char str[100][100];
        printf("输入1进行输入若干个数的排序功能,输入2进行输入若干学生姓名的排序功能
    ");
        scanf("%d",&select);
        printf("输入数量:");
        scanf("%d",&n);
        if(select==1)
        {
            printf("依次输入%d个数字,用空格隔开:",n);
            for(i=0;i<n;i++)
                scanf("%d",&num[i]);
            select_sort_number(num,n);
        }
        if(select==2)
        {
            printf("依次输入%d个姓名,用空格隔开:",n);
            for(i=0;i<n;i++)
                scanf("%s",str[i]);
            select_sort_string(str,n);
        }
        return 0;
    }

    作业4:这个求助了一个大神,表示我还是没有怎么理解。(ps:第五个更不会,跟张照行一样,没看懂百度百科。他也说他讲不明白,无能为力了。)好像运行有问题。我尽力了。。。。

    #include <string.h>
    void insert_sort_number(int num[],int number,int max)
    {
        int i,j;
        for(i=0;i<max;i++)
            if(number<num[i])
                break;
        for(j=max-1;j>=i;j--)
            num[j+1]=num[j];
        num[i]=number;
        printf("升序排序结果为:");
        for(i=0;i<max;i++)
            printf("%d ",num[i]);
    }
    void insert_sort_string(char str[][100],char string[100],int max)
    {
        int i,j;
        for(i=0;i<max;i++)
            if(strcmp(string,str[i])<0)
                break;
        for(j=max-1;j>=i;j--)
            strcpy(str[j+1],str[j]);
        strcpy(str[i],string);
        printf("升序排序结果为:");
        for(i=0;i<max;i++)
            printf("%s ",str[i]);
    }
    int main()
    {
        int num[100],select,i,n,insert_num;
        char str[100][100],insert_str[100];
        printf("输入1进行输入若干个数的排序功能,输入2进行输入若干学生姓名的排序功能
    ");
        scanf("%d",&select);
        printf("输入数量:");
        scanf("%d",&n);
        if(select==1)
        {
            printf("依次按照升序顺序输入%d个数字,用空格隔开:",n);
            for(i=0;i<n;i++)
                scanf("%d",&num[i]);
            printf("输入要插入的数字:");
            scanf("%d",&insert_num);
            insert_sort_number(num,insert_num,n+1);
        }
        if(select==2)
        {
            printf("依次按照升序顺序输入%d个姓名,用空格隔开:",n);
            for(i=0;i<n;i++)
                scanf("%s",str[i]);
            printf("输入要插入的姓名:");
            scanf("%s",insert_str);
            insert_sort_string(str,insert_str,n+1);
        }
        return 0;
    }
  • 相关阅读:
    Java 条件语句
    Java循环
    Java 变量
    Java 数据类型
    nginx+php发布网站
    安装MySQL5.7
    docker-compose参数
    部署
    dockerfile编写
    在VMware中安装CentOS7
  • 原文地址:https://www.cnblogs.com/fqy1998211/p/6099451.html
Copyright © 2011-2022 走看看