张照行 的第九次作业

1.果然第七次作业好难啊,做完之后增加了好多知识,现在用到一点都不费力啊,很方便就写出来了

#include <stdio.h>
#include <string.h>
void aaa()
{
    char a[100];
    int length,time=0,i;
    printf("请输入字符串:");
    scanf("%s",a);
    length=strlen(a);
    for(i=0;i<length/2;i++)
    {
        if(a[i] != a[length-1-i])
            time++;
    }
    if(time == 0)
        printf("该字符串是对称的\n");
    else
        printf("该字符串不是对称的\n");
}
int main()
{
    aaa();
    return 0;
}

2.冒泡排序法,从最后一个开始与前一个依次对比

#include <stdio.h>
#include <string.h>
void aaa()
{
    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()
{
    aaa();
    return 0;
}

3.

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

4.插入排序法。。。老师课上没讲欸,百度之后知道是将一个数目插入该占据的位置,但是代码也就是从第二个开始与左边的对比然后交换,然后敲出来的代码也就和冒泡排序法差不太多,就是循环的条件变了变,不过应该就是这样的吧

#include <stdio.h>
#include <string.h>
void aaa()
{
    char a[100];
    int length,j,i,temp;
    printf("请输入:");
    scanf("%s",a);
    length=strlen(a);
    for(j=0;j<length;j++)
    {
        for(i=1;i<length;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()
{
    aaa();
    return 0;
}

5.希尔排序法。。。说是选做,但是我不写估计又要说我了,然后我就百度,天啊,真的是,我差点以为我连百度百科都看不懂了,弄了好久才弄懂,真的是,好古怪的排序方法,还循环了三次,纠结好半天的说

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

心得:唉,果然这种东西还是应该留到星期四来做,要不然做了会纠结,就必须做完才能停,像今天就做到大晚上的,明天还要考试,唉。还不错,相对来说不是太难(我果然是对第七次作业产生阴影了),而且很清楚的讲过,只是那个插入排序法没讲过,然后查了做出阿来后感觉跟冒泡排序法太像了,有点奇怪,但应该也没问题。还有那个希尔排序法,才看的时候一脸蒙蔽啊,还在想要定义多少数组啊,还好事实上不用,三重循环的话想的有点麻烦,循环的条件也麻烦,但是还好,也算是写出来了。大家一起加油吧!

时间: 2024-08-24 11:12:11

张照行 的第九次作业的相关文章

基于案例SQL优化第九课作业分享

默认统计信息收集: 1. 11g默认启动了统计信息收集的任务,默认运行时间是周一到周五晚上10点和周6,周天的早上6点 2. 你也可以关闭自动统计新收集任务,选择手工收集的方式,但是一般不建议这样操作. 动态统计信息: 1. 统计信息默认情况下是每天晚上10点半后收集,如果新建对象还没来得级收集统计信息,就采用动态采样的方式. 2. 具体在set autotrace 跟踪的执行计划中,可以看到类似:- dynamic sampling used for this statement (level

第九次作业(有好多都彻底不懂了)

第一个:题目出得很有意思,很好玩.把首尾的表示方法理解了,还将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不是对称的字符串;\n",str); return

Week09《java程序设计》第九次作业总结

Week09<java程序设计>第九次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题集题目) 1.1 实验总结.并回答:列举至少2种在List中删除元素的方法. 答: 实验总结:在public static List 删除元素的方法: 1. 从list的后面开始删除 for (int i =list.size()-1 ; i >-1; i--) { if(lis

2017-2018-2 20179205《网络攻防技术与实践》第九周作业

<网络攻防技术与实践>第九周作业 视频学习总结 一.KaliSecurity压力测试工具 ??压力测试通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能够提供的最大的服务级别的测试.通俗地讲,压力测试是为了测试应用程序的性能会变得不可接受. ??Kali下压力测试工具包含VoIP压力测试.Web压力测试.网络压力测试及无线压力测试. 1.Voip压力测试工具 包括iaxflood和inviteflood 2.web压力测试工具:THC-SSL-DOS ??借助THC-SSL-DOS攻击工

机电传动控制第九周作业(一)

<机电传动控制>第九周作业(一) 1单相桥式晶闸管整流电路仿真 搭建的模型图: 当触发角为pi/4时,仿真结果为: 当触发角为pi/2时:仿真结果为: 触发角为pi/2,电感值为0.01时,仿真结果: 触发角为pi/2,电感值为1时,仿真结果为: 触发角为pi/2,电感值为0.5时,仿真结果: 触发角为pi/4,电感值为0.5时,仿真结果: 2三相六脉波桥式晶闸管整流电路仿真 搭建的电路图: 触发角为0,仿真结果: 触发角为pi/4,仿真结果: 触发角为pi/2,仿真结果: 触发角为0,电感为

机电传动控制作业第九周作业补充

机电传动控制作业第九周作业补充: 手绘波形图: 3. 直流电机开环调压调速系统模型搭建 搭建的电路图: 仿真结果之一: 问题: 我按照上图所示的电路进行仿真时,在调节电源电压的大小和触发角时,发现很难调节到使电机转速刚好在额定转速下运行,尤其在引入电感后,更加难以调节.所以我想问下老师我这个电路图搭建的有没有问题?我需要从何处改进呢?

2017-2018-1 20179205《Linux内核原理与设计》第九周作业

<Linux内核原理与设计>第九周作业 视频学习及代码分析 一.进程调度时机与进程的切换 不同类型的进程有不同的调度需求,第一种分类:I/O-bound 会频繁的进程I/O,通常会花费很多时间等待I/O操作的完成:CPU-bound 是计算密集型,需要大量的CPU时间进行运算,使得其他交互式进程反应迟钝,因此需要不同的算法来使系统的运行更高效,以及CPU的资源最大限度的得到使用.第二种分类包括批处理进程(batch process):实时进程(real-time process)以及交互式进程

张照行 的第三次作业

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

张照行 的第七次作业

1.第一题就放大招,难以招架啊,实在是难,而且课外知识涉及的也不少,偏偏放在第一题上,这是让我们知难而进吗,纠结了两天不是盖的,请教了同学也查了资料,最后总算是弄出来了,不容易啊,为了表示真的好难,就展示三个版本好了 #include <stdio.h> int main() { int a[26]={0}; char zzh[13]={ 'z','h','a','n','g','z','h','a','o','h','a','n','g' }; int i; for(i=0;i<13;