2016-12-17

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

#include <stdio.h>
#define N 100
int main()
{
    int i,a=0,b=0,c=0,d=0,e=0;
    char arr[N];
    printf("请输入字符\n");
    gets(arr);
    for(i=0;arr[i]!=‘\0‘;i++)
    {
        if(arr[i]>=‘A‘&&arr[i]<=‘Z‘)
        {
            a++;
        }
        else if(arr[i]>=‘a‘&&arr[i]<=‘z‘)
        {
            b++;
        }
        else if(arr[i]>=‘0‘&&arr[i]<=‘9‘)
        {
            c++;
        }
        else if(arr[i]==‘ ‘)
        {
            d++;
        }
        else
        {
            e++;
        }
    }
    printf("大写字母有%d\n小写字母有%d\n数字有%d\n空格有%d\n其他字符有%d\n",a,b,c,d,e);
    printf("\n");
    return 0;
}

总结:要将N 定义的足够大,不要忘记赋初始值

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

#include <stdio.h>
#include <string.h>
int main()
{
    int m=3;
    char mima[]="xar",daan[7];
    printf("请输入密码\n");
    while(m>0)
    {
        gets(daan);
        if(strcmp(mima,daan)==0)
        {
            printf("YES\n");
            break;
        }
        else
        {
            if(m==0)
            {
                printf("NO\n");
                break;
            }
            else
            {
                printf("Error  你还有%d次机会\n",m-1);
            }
            m--;
        }
    }
    return 0;
}

总结:注意m的取值   还有循环结束的条件

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

#include<stdio.h>
#include<string.h>
#define N 100
int zimu(char arr[]);
int main()
{
    char brr[N];
    printf("请输入字母\n");
    gets(brr);
    if(zimu(brr))
    {
        printf("YES\n");
    }
    else
    {
        printf("NO\n");
    }
    return 0;
}
int zimu(char arr[])
{
    int i,j;
    j=strlen(arr)-1;
    for(i=0;i<j;i++,j--)
    {
        if(arr[i]!=arr[j])
        {
            return 0;
        }
    }
    return 1;
}

总结:注意j--放的位置,要要确定数组的长度

课程体会:

1.开学到现在大概写了2000行代码左右,感觉和刚开学相比对于c语言总算是开窍了,算是入门了吧。

2.在写代码的时候总是忘记加初始值,不细心,二维数组学的还是不太好,下来会好好的再把二维数组看看。

3.感觉用博客园交作业挺好的,便于以后的复习,也便于大家的交流学习,没有啥需要改进的,下一届也用这种形式吧,给他们点压力

4.老师和助教都特好,尤其是崧哥特别认真长得又帅还是个学霸,我们宝哥哥也是学霸可有耐心了,老师总是不厌其烦的给我们讲题,特别亲切,就是可惜下个学期不教我们了,下个学期我们会继续努力的学习C语言的。

时间: 2024-10-04 17:36:32

2016-12-17的相关文章

【读书笔记】2016.12.10 《构建高性能Web站点》

本文地址 分享提纲: 1. 概述 2. 知识点 3. 待整理点 4. 参考文档 1. 概述 1.1)[该书信息] <构建高性能Web站点>: -- 百度百科 -- 本书目录: 第1章 绪论 1.1 等待的真相 1.2 瓶颈在哪里 1.3 增加带宽 1.4 减少网页中的HTTP请求 1.5 加快服务器脚本计算速度 1.6 使用动态内容缓存 1.7 使用数据缓存 1.8 将动态内容静态化 1.9 更换Web服务器软件 1.10 页面组件分离 1.11 合理部署服务器 1.12 使用负载均衡 1.1

关于2016.12.12——T1的反思:凸包的意义与应用

2016.12.12 T1 给n个圆,保证圆圆相离,求将圆围起来的最小周长.n<=100 就像上图.考场上,我就想用切线的角度来做凸包.以圆心x,y排序,像点凸包一样,不过用两圆之间的下切线角度来判断. 这就是下切线(我自己瞎编的名字): 好像是对的啊: 然后我就保证必AC的希望,用这种写法交了,然后就只得了N=2的暴力分... 自以为是正解,却落得如此下场... 为什么?这样不对吗?借用学长的力量,果然被Hack掉了: 这种情况,圆心排序后,检测的顺序并不是圆上的切点的顺序,自然就会挂. 蓝瘦

12.17 Nginx负载均衡;12.18 ssl原理;12.19 生产ssl密钥对;12.20 Nginx配置ssl

扩展: 针对请求的uri来代理 http://ask.apelearn.com/question/1049 根据访问的目录来区分后端web http://ask.apelearn.com/question/920 12.17 Nginx负载均衡 1. 安装dig命令: [[email protected] ~]# yum install -y bind-utils 2. 用dig获取qq.com的ip地址: [[email protected] ~]# dig qq.com 3. 创建ld.co

mysql练习题-2016.12.16

>>>>>>>>>> 练习时间:2016.12.16 编辑时间:2016-12-20-->22:12:08 题: 涉及:多表查询.exists.count().group by.order by 1.1 关系模式 学生student:   SNO:学号:   SNAME:姓名:   AGE:年龄 :   SEX:性别 课程course:CNO:课程代码,CNAME:课程名称,TEACHER:教师 学生成绩SC:SNO:学号,CNO:课程代码

rhel 7.0 配置centos yum源(2016/12/8),成功!

1.首先查看redhat 7.0系统本身所安装的那些yum 软件包: rpm -qa | grep yum #列出所有已安装的yum包 2.删除这些包: rpm -e *.rpm --nodeps #删除所有以前的yum包 3.下载新的yum rpm包:(2016/12/8 最新版本rpm,如果404 NOT FOUND错误,自己进去网址,换成最新的rpm包的名字) wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3

第一小组作业 2016.12.8

Sprint计划会议 会议时间:2016/12/8  14:00 会议地点:操场 会议进程: l 首先我们讨论排球计分程序功能最后的制定. l 然后我们讨论实现基本功能的各项工作. l 之后我们讨论各项工作的分工和认领. l 最后每个人对自己的任务进行必要的估算. 团队的Backlog 初期目标:完成程序前期的一切准备,并编写出核心代码的基本雏形. 任务 认领人 估计完成时间 代码编写 胡腾启 20h(>=2h/天) 代码复审 李永威 15h(>=2h/天) 发表博客,组织会议 宋彤彤 15h

Oracle中把一个DateTime的字符串转化成date类型。to_date(&#39;2016/12/8 18:55:43&#39;,&#39;yyyy/MM/dd hh24:mi:ss&#39;),

Oracle中把一个DateTime或者该形态字符串转化成date类型. to_date('2016/12/8 18:55:43','yyyy/MM/dd hh24:mi:ss'), 或者: select to_date('2010-10-20 13:23:44','yyyy-mm-dd hh24:mi:ss')  from dual; 是用" /"还是" -"取决于字符串是什么结构的. date类型转换成char类型, 例子to_char(' ','yyyymmd

centos 6.5 升级内核 linux 3.12.17

环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Linux centos 2.6.32-431.el6.x86_64(Centos-6.5-x86_64-minimal.iso ) 升级内核版本:longterm:3.12.17 升级步骤: 1.虚拟系统安装 要求mininal方式安装(205个包),具体步骤省略. 2.查看原有系统内核版本,升级更新包 2.1更新包 [[email protected] ~]# yum update [[email pr

12.17 Nginx负载均衡;12.18 ssl原理;12.19 生产ssl密钥对;12.20 N

12.17 Nginx负载均衡:12.18 ssl原理:12.19 生产ssl密钥对:12.20 Nginx配置ssl 扩展: 针对请求的uri来代理 : http://ask.apelearn.com/question/1049 根据访问的目录来区分后端的web : http://ask.apelearn.com/question/920 nginx长连接 : http://www.apelearn.com/bbs/thread-6545-1-1.html nginx算法分析 : http:/

12.17 Nginx负载均衡 12.18 ssl原理 12.19 生成ssl密钥对 12.20 N

12.17 Nginx负载均衡 [[email protected] ~]# yum install -y bind-utils[[email protected] ~]# dig www.qq.comANSWER SECTION:www.qq.com. 73 IN A 59.37.96.63www.qq.com. 73 IN A 14.17.42.40www.qq.com. 73 IN A 14.17.32.211[[email protected] ~]# curl -x127.0.0.1: