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

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

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

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

    #include<stdio.h>
    int main()
    {
        int i,a=3;
        char result[]={"taoxu"},answer[7];
        do
        {
            printf("请输入答案:
    ");
            fgets(answer,7,stdin);
            answer[5]='';   /*在你答案是的位置,直接进行赋值。 */
            if(strcmp(answer,result)==0)
            {
                printf("welcome!
    ");
                break;
            }
            else
            {
                if(a==1)
                {
                    printf("输入错误,没有机会了。");
                    break;
                }
                else
                    printf("输入错误,请重新输入,你还有%d次机会。",--a);
            }
        }while(a!=0);
        return 0;
    }

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

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

    实验总结:使用除gets和puts以外的字符串处理函数时要记得使用头文件string.h。

         scanf函数输入字符串里不能包含空格,需要使用gets函数。

         gets函数: 等不会读入数组,会转化为,会将其从缓冲区读走。

         用循环输出字符串时,判断应为str[]不等于;

         测出字符串实际长度后应减一,应为数组下标是从0开始的。

         gets函数不安全,使用fgets函数。

           字符串结束标志也占一个字符长度,注意不要越界!

    (三)课程体会(请回答以下问题)

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

    答:作业加上平时练习和帮同学改的代码,应该超过四千行了吧;现在感觉c语言没那么神秘了,理解后觉得挺容易掌握的。

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

    我认为码代码一定要冷静,静能生慧,只有头脑保持冷静才能减少错误的发生,尤其是发现错误时,一定要保持冷静,逐条去分析,或者采用一些技巧去调试;有不懂的问题一定要及时解决,等问题越攒越多,就像多米诺骨牌,以后再想跟上进度就难了;基础不好一定要课前预习,课后复习,并且多练,在老师讲之前,一定要抽时间去预习课本或者看网课,大概了解老师下一节课所讲的内容是什么,提前做好准备,课上把老师讲的重点记下来,课后做作业前复习下老师在群里发布的课件,有不懂的代码,不要光看,自己照猫画虎去码,多码几遍,分析分析就会明白的。

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

    我觉得这种形式特别好,可以把自己的学习记录,知识点以及所犯的错误都记录下来,回头去看自己一步步走过的脚步,心里满满的成就感,也方便自己复习所学过的知识,通过班级博客,也可以知道其他同学的学习情况,他们有好的思路,自己可以很方便的学习。

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

    老师和几位学长都很认真负责,自己能在大学遇到,很幸运,印象很深刻的是,有时就算是晚上十二点问老师问题,老师都能帮助我解决;宝清哥跟崧哥也是,什么时候问问题,都会不厌其烦的讲解,不光是C语言上的问题,其他科和学校生活上也总是告诉我们很多经验,谢谢你们!

  • 相关阅读:
    C#使用cookie记住密码 逆水行舟
    Datable快速转换为List集合 逆水行舟
    C# EF 使用 (CodeFirst模式) 逆水行舟
    第一道用结构体解决的问题
    特殊回文数字
    简单贪心题(看最多的电视节目)
    Where is the Marble? (寻找大理石上的数字)
    关于Application Designer的概述
    怎样学习Peoplesoft byl vhonglei
    group by的使用说明
  • 原文地址:https://www.cnblogs.com/TX980502/p/6172227.html
Copyright © 2011-2022 走看看