zoukankan      html  css  js  c++  java
  • 第十一次作业

    (一)实验内容 

      1.输入一个字符串,统计大写字母、小写字母、空格、数字和其他字符的个数。(要求用字符数组)

    #include<stdio.h>
    #define n 100
    int main()
    {
        char a[n];
        int i,a1=0,b=0,c=0,d=0,e=0;
        printf("请输入字符串
    ");
        gets(a);
        for(i=0;a[i]!='';i++)
        {
            if(a[i]>='A'&&a[i]<='Z')
            {
                a1++;
            }
            else if(a[i]>='a'&&a[i]<='z')
            {
                b++;
            }
            else if(a[i]>='0'&&a[i]<='9')
            {
                c++;
            }
            else if(a[i]==' ')
            {
                d++;
            }
            else
            {
                e++;
            }
        }
        printf("大写字母有%d个,小写字母有%d个,数字有%d个,空格有%d个,其他有%d个
    ",a1,b,c,d,e);
        return 0;
    }

    2.利用字符数组进行密码的验证,如果密码正确则登陆成功,否则登录失败。密码允许输入三次。

    #include<stdio.h>
    #include<string.h>
    #define N 100
    int main()
    {
        char a[N],b[N];
        int i,c,d=3;
        printf("设置一个密码
    ");
        gets(a);
        printf("请输入你的密码,你有三次机会
    ");
        for(i=0;i<3;i++)
        {
            gets(b);
            if(strcmp(a,b)==0)
            {
                printf("密码正确
    ");
                break;
            }
            else if(d!=1)
            {
                printf("输入错误,剩余%d次
    ",d-1);
                d--;
            }
            else
            {
                printf("密码错误,没机会了
    ");
                break;
            }
        }
        return 0;
    }

    3.编写一个函数,判断一个字符串是否是回文。若是回文函数返回值为1;否则返回值为0。回文是顺读和倒读都一样。如“level”“abba”等是回文,但“abcd”不是回文。在主函数中调用回文函数对输入的字符串进行判断。

    #include<stdio.h>
    #define N 100
    int hui(char a[]);
    int main()
    {
        int i,j;
        char a[N];
        printf("请输入一个字符串
    ");
        gets(a);
        if(hui(a))
        {
            printf("是回文数
    ");
        }
        else
        {
            printf("不是回文数
    ");
        }
    }
    int hui(char a[])
    {
        int j=-1,i;
        for(i=0;a[i]!='';i++)
        {
            j++;
        }
        for(i=0;i<j;i++,j--)
        {
            if(a[i]!=a[j])
            {
                return 0;
            }
        }
        return 1;
    }

    (二)实验总结(实验中遇到的问题及解决方法)

    1.gets(字符数组)

    把()打成了[]

    2.把 if(strcmp(a,b)==0)打成了 if(strcmp(a,b)=0)  这是字符串的比较

    还要注意的是字符串不能用关系运算符直接比较大小

    (三)课程体会

    1. 经过一个学期的学习,你统计过一共写了多少行代码吗?与开学初相比,你对C语言或者程序设计有了哪些认识和理解?

    这学期大约写了1500行代码,刚开学时觉得写代码是一件伟大而艰巨的事业,好难,啥意思,我为什么要写代码,哈哈,过了一小段时间就觉得写代码很有趣,每次写出来一个代码都会特别特别开心。现在呢,可以用一个平和的心情面对写代码这件事,有信心把这门课程学好。

    2. 在C语言的学习过程中,你有什么经验和教训分享给大家?

    我认为写代码最重要的是把思路理清,写之前把循环嵌套各种思路可以在纸上大致写一遍。如果刚开始真的一点思路都没有,也可以看一下别人的程序,学习别的同学好的思路,但这并不代表把人家的程序直接复制,一定要自己不看别人的程序再自己写一遍。等自己的思维模式逐渐形成,那么c语言一定就会有很大的进步了。因为自己感觉接触c语言比较晚,了解的东西也特别少,学习上也会有一些吃力,同我一样的同学也不要着急,只要我们有一个正确的态度,相信自己,并付诸于行动,我相信我们大家都会学号这门课程,^~^我爱c语言。

    3. 对于采用技术博客提交作业这种形式,你有什么看法,对你有帮助的地方在哪里?你觉得还可以做哪些改进?,如果下一届的学弟学妹们入学了,你会给他们推荐这种教学形式吗?

    博客提交作业这种形式我认为特别好,特别有新意,紧跟时代潮流。首先它可以起到一个督促作用。如果不写博客,听完课也就听完了,一部分同学也许做不到自觉完成作业。其次他可以帮助同学们复习。写完一个程序不是就代表你真的就写完了,通过不断的学习,你的知识储备量会不断增加,你的代码可以不断的去完善,把以前写的代码真正的吃透,再进行优化。改进嘛可以找一些有趣的代码,让大家写写,调动学生的积极性,还有就是可以把作业提交时间改成中午12点,可以避免晚上熬夜写代码,提交时才发现是11点01分,哈哈哈哈哈。下一届学弟学妹入学,我会推荐这种教学形式,便于他们进一步的学习和巩固。

    4. 对于这门课程,对于老师和助教的工作,你有什么好的建议或者意见,都可以提出来,我们一起改进。

    以前以为上了大学老师就不管我们了,然而并不是这样的。每一次作业老师都会认真的看,给我们评论每一次作业的优点缺点和错误,有时候写代码找不出错误,都大半夜了,实在着急的不行,问老师,老师特别耐心的给我找错误,>.<特别感动。助教哥哥们也特别好,每次上机操作都陪着我们,给我们一些建议,帮我们改程序。

  • 相关阅读:
    中国首届React开发者大会 8月18日 广州举行
    事件循环:Flutter 中代码是如何执行和运行的
    大前端趋势所向:这么多跨端技术,为什么选择 Flutter?
    通往大前端的一把关键钥匙 Flutter
    如何选一部好的手机?性价比高的智能手机推荐,2020智能手机排行榜!
    智能手机边充电边玩对电池有什么损害吗?
    你的智能手机究竟能用多久?
    新型添加技术
    智能手机
    姐姐不愧是姐姐,快看《乘风破浪的姐姐》
  • 原文地址:https://www.cnblogs.com/-lyf/p/6173190.html
Copyright © 2011-2022 走看看