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

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

    #include<stdio.h>
    #define N 100 
    int main()
    {
        char a[N];
        int i,b=0,c=0,d=0,e=0,f=0;
        printf("请输入一组字符串,以回车结束
    ");
        gets(a);
        for(i=0;i<N;i++)
        {
            if(a[i]<97&&a[i]>=65)
            {
                b++;
            }
            else if(a[i]<123&&a[i]>=97)
            {
                c++;
            }
            else if(a[i]==' ')
            {
                d++;
            }
            else if(a[i]<'9'&&a[i]>'0')
            {
                e++;
            }
            else
                f++;
        } 
        printf("共有%d个大写字母,%d个小写字母,%d个空格,%d个数字,%d个其他字符
    ",b,c,d,e,f);
        return 0;
    }
     

    实验总结,数字0的ASCII值是48,‘0’的是0,应当注意。

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

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        char a[]="secret",b[8];
        int i,c;
        printf("请输入密码
    ");
        scanf("%7s",b);
        for(i=0;i<3;i++)
        {
            if(strcmp(a,b)==0)
            {
                printf("登陆成功
    ");
            }
            else if(i==2&&strcmp(a,b)!=0)
            {
                printf("登录失败");
                break; 
            }
            else 
            {
                printf("密码错误,你还可以再输入%d次
    ",2-i);
                scanf("%7s",b);
                
            }    
        }
        return 0;
    }

    实验总结:strcmp(a,b)比较字符串的特定函数。

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

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

    实验总结:char a 表示字符,char a【】表示字符串。在程序错误时,应当分开进行测试,这样可以清晰地看出是哪一步发上了错误,好进行修改。

    课程体会

    1,我一共写了一千多代码,虽然没有达到两千,但也不算太少。刚开始我以为编程需要很高的英语水平,但就目前来说,那些程序都是固定的一些语法,只要记住,其他的有的还可以用中文进行替换。所以对我这个英语门外汉来说难度还不是很大。

    2,上课一定要认真的听老师讲,不会的要积极问老师。在实验课前争取把作业写一遍,不会的一定要及时的问老师,还有尽量用英文来写程序。

    3,我觉得博客提交作业这个形式很好,他可以督促我进行学习。而且这样还便于进行比较,容易找出自己和他人的差距。我认为应该加大鼓励措施。,我推荐下一届还用这个形式。

  • 相关阅读:
    httpRuntime 元素(ASP.NET 设置架构)
    Mac OS X Lion下配置Tomcat7
    MyEclipse集成SVN插件subclipse
    Mac OS X 窗口操作快捷键
    Ubuntu的个人使用总结
    ubuntu10.04下audacious2.4源码编译过程(解决2.3cue的bug)
    XAMPP和Mysql共存的方法
    wine qq2010面板上的邮箱和空间问题
    VS2010以及vs10sp1安装问题
    css之盒模型
  • 原文地址:https://www.cnblogs.com/web5217/p/6171484.html
Copyright © 2011-2022 走看看