• 实验十一


    一、实验内容      

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

    #include<stdio.h>
    #include<string.h>
    #define N 20
    int main()
    {
        char str[N+1];
        int i=0,j=0,k=0,m=0,n=0,z,a;
        printf("请输入一个字符串");
        gets(str);
        a=strlen(str);
        for(z=0;z<a;z++)
        {
            if(str[z]>'A'&&str[z]<'Z')
            {
                i++;
            }
            else if(str[z]>'a'&&str[z]<'z')
            {
                j++;
            }
            else if(str[z]==' ')
            {
                k++;
            }
            else if(str[z]>'0'&&str[z]<'9')
            {
                m++;
            }
            else
            {
                n++;
            }
        }
        printf("大写字母有%d个,小写字母有%d个,空格有%d个,数字有%d个,其他有%d个
    ",i,j,k,m,n);
        return 0;
    }

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

    #include<stdio.h>
    #include<string.h>
    #define N 10
    int main()
    {
        char str[]={"secret"},str1[N+1];
        int i;
        for(i=1;i<4;i++)
        {
            printf("请输入密码");
            scanf("%7s",str1);
            if(strcmp(str,str1)==0)
            {
                printf("密码正确,登陆成功
    ");
                break;
            }
            else
            {
                printf("密码错误,登录失败
    ");
            }
        }
        return 0;
    }

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

    #include<stdio.h>
    #include<string.h>
    #define N 80
    int huwen(char str[N+1]);
    int main()
    {
        char str[N+1];
        int a;
        printf("请输入一个字符串
    ");
        gets(str);
        a=huwen(str);
        if(a==0)
        {
            printf("这个字符串不回文");
        }
        else
        {
            printf("这个字符串回文");
        }
        return 0;
    }
    int huwen(char str[N+1])
    {
        int i,j,num;
        num=strlen(str);
        for(i=0,j=num-1;i<j;i++,j--)
        {
            if(str[i]==str[j])
            {
                continue;
            }
            else 
            {
                return 0;
            }
        }
        return 1;
    }

     二、实验总结

    1、字符型数据要加单引号

    2、数组开始要定义大小

    3、在回文数程序中:(1)自定义函数中不用定义数组的长度数sum(2)在自定义函数中continue那不能用return代替,否则只能执行第一个与最后一个相等不能循环

        (3)在自定义函数中要只用一个循环,可以将两个变量写在一起(4)注意数组的长度是从一开始的,数组下标是从零开始的,在倒数时注意应该减一

    三、课程体会

    1、经过这一个学期的学习我对C语言有了进一步的认识,开始只是对编程有一个大概的了解,不知道该怎样写代码,只是知道有哪些有语言而已。在这一个学期中写了许多次代码,一次又一次的修改,使我填补了自己的知识漏洞。

    2、在学习C语言时我认为大家要学会用自己方式理解与分析知识点,学会做笔记。只是听老师讲是不够的,学生要学会用自己的思维来理解课堂上的知识点。在写代码时可以尝试使用多种途径。多做练习。

    3、我认为采用博客方式交作业的方式很好,老师有充足的时间看每一个学生写的代码,提出不足,让学生改正。可以实现课下的充分交流。在我的学习过程中这种方式给我提供很大的交流平台。

    4、助教可以再多一些减轻学长的负担。

  • 相关阅读:
    ARC 117 D
    Maven依赖踩坑记录
    MobaXterm连接本地CentOS7
    Git在IDEA下的常用操作
    mq消息中间件
    nginx的作用
    Git的使用
    docker
    redis
    导出excel
  • 原文地址:https://www.cnblogs.com/lr97/p/6171946.html
Copyright © 2020-2023  润新知