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

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

    #include<stdio.h>
    #define N 100
    int main()
    {
        char ch[N];
        int x=0,y=0,z=0,n=0,m=0,i;
        printf("输入一串字符");
        gets(ch);
        for(i=0;ch[i]!='';i++)
        {
            if(ch[i]>='A'&&ch[i]<='Z')
            {
                x=x+1;
            }
            else if(ch[i]>='a'&&ch[i]<='z')
            {
                y=y+1;
            }
            else if(ch[i]>='0'&&ch[i]<='9')
            {
                z=z+1;
            }
            else if(ch[i]==' ')
            {
                n=n+1;
            }
            else
            {
                m=m+1;
            }
        }
        printf("一共输出%d个大写字母,输出%d个小写字母,输出%d个数字,输出%d个空格,输出%d个其他字符",x,y,z,n,m);
        return 0;
    }
         

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

    #include<stdio.h> #include<string.h> int main() { char password[6]="nicai",ch[6]; int i; printf("输入密码 "); for(i=0;i<3;i++) { gets(ch); if(strcmp(password,ch)==0) { printf("登陆成功 "); break; } else { printf("登陆失败,请重新输入 "); } } return 0; }

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

    #include<stdio.h>
    #include<string.h>
    int putNum(char num[]);
    int main()
    {
    char num[7];
    printf("输入一串字符 ");
    scanf("%s",num);
    if(putNum(num)==1)
    {
    printf("是回文数 ");
    }
    else
    {
    printf("不是回文数 ");
    }
    return 0;
    }
    int putNum(char num[])
    {
    int a,i,j,c;
    c=strlen(num)-1;
    for(j=c,i=0;i<=j;i++,j--)
    {
    if(num[i]!=num[j])
    {
    return 0;
    }
    }
    return 1;

    }

    二、实验总结
    1、用char定义字符串时,scanf里不用加&。
    2、字符串以来结束。
    3、第三题for语句条件里若有多个表达式可以用,分开。
    4、第二题字符串不能用运算符直接比较,而因该写成strcmp(str2,str1)==0来比较。
    5、第一题要输出空格的话要用gets来输入。

    三、课程体会

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

      写了大约1700行左右,刚开始都不知道C语言是干啥的,随着后来的学习了解了C语言是用来编程的。

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

      在for语句中的表达式一定要用;分开,注意一定要把{}对齐,不然出错时不好找,除了char定义的字符串中scanf里不用加&,其他的scanf里都要加。

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

      我觉得在博客园里交作业对我很有帮助,可以通过别人对我程序的评论找出自己的不足,也可以看看别人的程序对自己有没有启发,看看别人出的错自己是不是也会犯。

      我会给他们推荐的

  • 相关阅读:
    [Groovy] List里的Inject方法
    [Groovy]你意想不到的用法
    buildr学习笔记(1): buildr的安装
    [Groovy]如何在Groovy里得到命令行的返回值
    underscore.js
    [Groovy] *符号在Groovy里的一种特殊用法
    [Groovy]如何定义和使用一个Java里的Enum类型
    [Ruby]$: 是什么意思?
    Optional Parameter/Default Values
    如何在Rake 的Task里加入多个输入参数
  • 原文地址:https://www.cnblogs.com/1998li/p/6187560.html
Copyright © 2011-2022 走看看