十一

一、实验内容      

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

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

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

#include<stdio.h>
#include<string.h>
int main()
{
    char a[]="123456",b[999];
    int i;
    printf("请输入六位密码
");
    i=1;
    scanf("%7s",b);
    while(1)
    {
        if(strcmp(a,b)==0)
        {
            printf("登陆成功
");
            break;
        }
        printf("密码错误请重新输入
");
        if(i>=3)
        {
            printf("账户已被冻结
");
            break;
        }
        scanf("%7s",b); 
        i++;
    }
    return 0;
}

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

#include<stdio.h>
#include<string.h>
#define N 9999


int panduan(char a[N])
{  
    int i,j,n; 
    n=strlen(a)-1;
    for(i=0,j=n-i;i<=j;i++,j--)
    {
        if(a[i]!=a[j])
        {
            return 0;
        }
    }
    if(a[i]==a[j])
    {
        return 1;
    }
}


int main()
{
    int i;
    char a[N];
    printf("请输入一个字符串
");
    gets(a);
    i=panduan(a);
    if(i==1)
    {
        printf("是回文数
");
    }
    else if(i==0)
    {
        printf("不是回文数
");
    }
    return 0;
}

(二)实验总结

1、熟记字符串处理函数,连接函数,拷贝函数,比较函数,长度函数,输入输出函数

2、字符串不能用关系运算符 > < =来比较

(三)课程体会

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

一共写了一千多行代码;要学会进行程序的优化,不能以写出来为目标,应该以写得最好最简便为目标,而且c语言需要多练习,才能熟练掌握每一条语句都是干什么用的

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

不要把每个问题都想的太简单,要利用学过的所有知识来解决问题,遇到问题要积极去请教别人,也可以上网查,然后解决它。

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

我觉得用博客写作业比用纸写作业要好,博客可以及时反映问题,然后有问题也可以马上就能提问。

原文地址:https://www.cnblogs.com/accelerator123/p/6185285.html