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

    一、实验内容      

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

    #include<stdio.h>
    int main()
    {
    	char c[100];
    	int i,m,n,d,s,o;
    	gets(c);
    	m=0;
    	n=0;
    	d=0;
    	s=0;
    	o=0;
        for(i=0;c[i];i++)
    	{
    		if(c[i]>='A'&&c[i]<='Z')
    		{
    			m++;
    		}
    		else if(c[i]>='a'&&c[i]<='z')
    		{
    			n++;
    		}
    		else if(c[i]>='0'&&c[i]<='9')
    		{
    			d++;
    		}
    		else if(c[i]==' ')
    		{
    			s++;
    		}
    		else
    			o++;
    	}
    	printf("%d %d %d %d %d
    ",m,n,d,s,o);
    }
    

      

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

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        char c[10]="LXN527mlj";
    	char h[11];
    	int i;
        for(i=0;i<3;i++)
    	{
    		printf("请输入密码:
    ");
    		scanf("%9s",h);
    		if(strcmp(c,h)==0)
    		{
    			printf("登陆成功!
    ");
    			break;
    		}
    		else
    		{
    			printf("登录失败!
    ");
    		}
    	}
    	return 0;
    }
    

      

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

    # include <stdio.h>
    # include <string.h>
    # define N 100
    int find(char c[N]);
    int main()
    {
        int i;
        char c[N];
        i=find(c);
        if(i==0)
        {
            printf("不回文
    ");
        }
        else
        {
            printf("回文
    ");
        } 
    return 0;    
    } 
    int find(char c[N])
    {
        int i,j=-1,x=1;
        gets(c);
        for(i=0;c[i]!='';i++)
        {
            j++;
        }
        for(i=0;i<=j;i++,j--)
        {
            if(c[i]!=c[j])
            {
                x=0;
                break; 
            }
        }
        if(x==0)
        {
            return 0;
        }
        else
        {
            return 1;
        }
    }
    

      

    二、实验总结(实验中遇到的问题及解决方法)

    1.第一道题没大问题,编程思路基本为:首先要输入整个字符串,用gets函数,然后分别用变量表示大写字母、小写字母、空格、数字和其他字符的个数,用循环语句,在最后输出个数。

    2.第二道题遇到的问题是printf("请输入密码: ");scanf("%9s",h);

    这两条语句在for循环外,导致在输入密码的时候,若第一次输错,就会连续出现三次输入错误,而不能输入三次 。

    3.第三道题判断字符串是否回文,由主调函数和被调函数,判断是否符合回文条件。

    三.课程体会

    1.并没有统计过写了多少代码,开学刚接触这门课程觉得挺好玩,现在虽然复杂的程序编起来还是会出错,但对C语言编程,有很用心在学,当自己写出一个代码并能运行成功的时候最开心。

    2.还是要多练,写程序不怕出错,能将一个个的错误解决就是一种经验。

    3.博客提交的方式挺好,可以在实验课之余再写一次代码,熟练度有所帮助,对我个人来说,有些程序思路不会,可以问其他同学的编程思路,纠正小错误,反正收获不少。

    4.对于老师和助教的工作,首先要跟你们说谢谢,经常遇到编程出错的时候就会问老师,老师总能及时帮助,还有上实验课的时候,帮我们纠错,辛苦了。

  • 相关阅读:
    webkit 技术内幕 笔记 二
    webkit 技术内幕 笔记 一
    javascript 权威指南1
    正则
    react-virtualized
    移动端字体
    vue 学习3
    vue 学习2
    vue 学习1
    移动端display:flex
  • 原文地址:https://www.cnblogs.com/mlj527/p/6185097.html
Copyright © 2011-2022 走看看