史航第12次作业&总结
作业1:找出最长的字符串
#include <stdio.h>
#include <string.h>
int main()
{
char string[],strings[][];
int i,n,max,temp=;
printf("输入五个字符串:\n");
scanf("%s",strings[]);
string[]=strings[][];
max=strlen(strings[]);
for(i=;i<;i++)
{
scanf("%s",strings[i]);
string[i]=strings[i][];
n=strlen(strings[i]);
if(max<n)
{
max=n;
temp=i;
}
}
printf("输出最长字符串:%s\n",strings[temp]);
return ;
}
测试:
作业2:分类统计字符个数
#include <stdio.h>
int main()
{
char s[];
int i=,dx=,xx=,kg=,sz=,others=;
printf("请输入一行文字:\n");
gets(s);
for(i=;s[i];i++)
{
if(s[i]>='A'&&s[i]<='Z')
dx++;
else if(s[i]>='a'&&s[i]<='z')
xx++;
else if(s[i]==' ')
kg++;
else if(s[i]>=''&&s[i]<='')
sz++;
else
others++;
}
printf("dx=%d\n xx=%d\n kg=%d\n sz=%d\n other=%d\n",dx,xx,kg,sz,others);
}
测试:
知识点总结:
1.字符串常量:“array” “point”
2.用一对双引号括起来的字符序列,被看做一个特殊的一维字符数组,在内存中连续存放,实质上是一个指向该字符串首字符的指针常量
例如:char sa[ ]="array" char *sp="point"
3.数组名sa、指针sp和字符串"string"的值都是地址
4.字符数组与字符指针的重要区别:
①如果要改变数组sa所代表的字符串,只能改变数组元素的内容;
②如果要改变指针sp所代表的字符串,通常直接改变指针的值,让它指向心得字符串;
5.输入字符串:scanf( )或gets( );scanf("%s",str)字符数组名不加地址符,遇回车或空格输入借书,并自动将输入的一串字符和'\0'送入数组中
6.输出字符串:printf( )或puts( );printf("%s",str)
7.字符串的复制:strcpy(str1,str2);字符串的链接:strcat(str1,str2);字符串的比较:strcmp(str1,str2);求字符串长度:strlen(str)
问题:定义字符指针后,如果对他没有赋值,指针的值是不确定的,所以不要引用未赋值的指针
计算字符串的有效长度,不包括'\0'
作业三搞不明白什么叫输出输入学生信息,如果按姓名查找学生信息,我会写很久吧
心得:
最后一次作业不多,用到了之前学的比如像&&一些东西,下次课开始复习了,给自己这一个学习的学习C语言生活画上一个圆满的句号。不知道以后学数字媒体要不要学习这么繁琐的C语言。
史航第12次作业&总结的更多相关文章
- C 语言学习 第12次作业总结
作业总结 本次课堂的内容为字符串相关的几个函数还有结构体. 字符串相关函数 在此之前的课程中,输入主要都是使用scanf这个函数.而在这节课上,冯老师讲解了字符串获取函数gets.在不需要控制符的情况 ...
- day 12 课后作业
# -*- coding: utf-8 -*-# @Time : 2019/1/4 20:49# @Author : Endless-cloud# @Site : # @File : day 12 课 ...
- Week12《java程序设计》第12次作业总结
Week12<java程序设计>第12次作业总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 面向系统综合设计-图书馆管理系统或购物车 ...
- C语言程序设计第12次作业
一.本次课主要内容: 本章主要介绍指针相关的基础知识,本节课的主要如下 (1)通过示例"电码加密"引入字符指针与字符串处理.首先重点介绍字符指针和字符串的关联和区别,然后对常用字符 ...
- 201621123062《java程序设计》第12周作业总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 思维导图: 2. 面向系统综合设计-图书馆管理系统或购物车 使用流与文件改造你的图书馆管理系统或购物车. 2. ...
- 史航416第十次作业&总结
作业1: 计算两数的和与差.要求自定义一个函数 #include <stdio.h> void sum_diff(float op1,float op2,float *psum , flo ...
- 史航416第九次作业&总结
一.知识点总结: 1.二维数组定义的形式:类型名 数组名[行长度] [列长度] 例如:int a[3][2]:定义一个二维数组a,3行2列,6个元素: 2.二维数组引用的形式:类型名 数组名[行下标] ...
- SQL Server代理(7/12):作业活动监视器
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 在这个系列的前几篇文章里,你创建配置了SQ ...
- SQL Server代理(6/12):作业里的工作流——深入作业步骤
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这里系列的前几篇文章所见,SQL ...
随机推荐
- Python基础语法,基本数据类型及相关操作
---恢复内容开始--- python文件 文件开头要有 #!/usr/bin/ python --在linux中是告诉系统phthon的路径是在/usr/bin/ python目录下 ...
- 【转载】Delphi7从子线程中发送消息到主线程触发事件执行
在对数据库的操作时,有时要用一个子线程来进行后台的数据操作.比如说数据备份,转档什么的.在主窗口还能同是进行其它操作.而有时后台每处理一个数据文件,要向主窗口发送消息,让主窗口实时显示处理进度在窗口上 ...
- vc6.0运用mysql数据库中的编码所导致的乱码问题(接收和输出的编码必须要一致)
[编译中遇见的问题] ①在用vc 6.0去调用MySQL中的数据时,出现中文乱码 ②不明白mysql中的码制 [开始解决问题] ①打开mysql控制台 ...
- vi/vim 的使用
vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是一般模式.编辑模式与指令列命令模式. 这三种模式的作用分别是: 一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式) ...
- artTemplate 自动化编译之tmod
一.背景 前端小白的成长历程,一般都会经历html模板的一些问题,jquery template/artTemplate/yayaTemplate等常见的模板使用,这里就不作介绍了. 先谈谈我们为什么 ...
- uva11292 Dragon of Loowater
水题,排序遍历即可 #include<iostream> #include<cstdio> #include<algorithm> using namespace ...
- css absolute和float,relative,z-index的同异
大神占楼: 简书作者:张歆琳 http://www.jianshu.com/p/a3da5e27d22b http://www.cnblogs.com/lxblog/p/3152897.html 摘录 ...
- Ubuntu更改鼠标灵敏度
需要命令:xinput 清自行用 man xinput 查询 xinput 帮助文档 1.插入鼠标,打开终端,输入命令:xinput 查询当前已挂在设备 2.拔出鼠标,打开终端,再输入命令:xinpu ...
- java 分布式锁方案
第一步,自身的业务场景: 在我日常做的项目中,目前涉及了以下这些业务场景: 场景一: 比如分配任务场景.在这个场景中,由于是公司的业务后台系统,主要是用于审核人员的审核工作,并发量并不是很高,而且任务 ...
- spring代理模式 service远程调用,插件执行
最近,研究了一下平台远程调用的过程,和service层插件执行的原理,记录一下. 1.远程service调用过程 首先看一下类的继承结构 封装调用处理过程 封装service调用接口 封装servic ...