C语言实验报告二
实验一:第11次实验作业报告
题目:方阵循环右移
实验要求:将给定n×n方阵中的每个元素循环向右移m个位置,即将第0、1、⋯、n−1列变换为第n−m、n−m+1、⋯、n−1、0、1、⋯、n−m−1列。
实验代码:

设计思路:
(1):定义一个新的数组来存放右移后的数列。
(2):本题关键在于如何让末尾的列移动到前面,单纯的b[i]=a[i+m]是无法达到预期效果的。
(3):想把后面的列移动到前面,容易想到能够利用除余或达到n之后用减法来达到指定效果,而如果用减法会使程序显繁琐,故采用除余算法。
本题调试过程碰到问题及解决办法:
•一开始定义数组时没有注意长度,导致过小,从而造成错误。
实验二:第十二次实验
题目:字符串字母大小写转换
实验要求:对一个以“#”结束的字符串,将其小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其他字符不变输出。
实验代码:

设计思路:
(1)定义一个字符数组,读入键盘输入的字符串。
(2)查找字符数组中的小写字母和大写字母。
(3)查找编码,小写字母转换成大写需减32,大写字母转换成小写字母需加32.
本题调试过程碰到问题及解决办法:
一开始写的读入数组有问题,提示段错误,请教同学,换成gets()读入,问题得以解决。
实验三:第十三次实验
题目:判断回文字符串
实验要求:本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。
实验代码:

设计思路:
(1):定义数组读入字符。
(2):while循环,直到数组长度的一半,若其中存在*s!=*p,则返回false,即可达到实验要求。
本题调试过程碰到问题及解决办法:
一开始没有写如果到数组长度一半,若存在*s!=*p,则程序即可结束,反而从头到尾查找数组,代码不简洁。
实验四:第十四次实验
题目:指定位置输出字符串
实验要求:对给定的一个字符串和两个字符,打印出给定字符串中从与第一个字符匹配的位置开始到与第二个字符匹配的位置之间的所有字符。
实验代码:

设计思路:
( 1 )分别定义两个while循环,分别查找两个指定字符。
(2)输出两个指定字符之间的字符,并按要求输出第2个指定字符的地址。
本题调试过程碰到问题及解决办法:
处理地址输出时出现很大问题,做不出来,后来再看了几遍书,理解地址概念,问题得以解决。
实验五:第十五次实验
题目:针对输入的N个字符串,输出其中最长的字符串。
实验要求:输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。
实验代码:

设计思路:
(1)读入n个字符串
(2)采用strlen函数获得每个字符串的长度
(3)进行比较并获得最长的字符串并输出
本题调试过程碰到问题及解决办法:
一开始没有采用strlen函数,导致函数冗长,查阅课本,使得函数程序简洁
C语言实验报告二的更多相关文章
- 20145221 《Java程序设计》实验报告二:Java面向对象程序设计
20145221 <Java程序设计>实验报告二:Java面向对象程序设计 实验要求 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O. ...
- Java实验报告二:Java面向对象程序设计
Java实验报告二:Java面向对象程序设计 ...
- 20145203盖泽双:Java实验报告二
Java实验报告二:Java面向对象程序设计 实验要求: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验内容 ...
- 第四周总结&实验报告二
第四周总结&实验报告二 课程总结 这周我们学习了string类,以及很多string类的很多操作方法,同时string也是一个对象,在用到它时我们首字母需要大写,这周我们还加深了对函数构造的理 ...
- 20145118 《Java程序设计》 实验报告二
实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.没有Lin ...
- java实验报告二
一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计模式 二.实验步骤 (一)单元 ...
- 20135337朱荟潼Java实验报告二
20135337朱荟潼 实验二 Java面向对象程序设计 一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L ...
- Python程序设计实验报告二:顺序结构程序设计(验证性实验)
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 崔攀 学号3190505136 成绩 日期 2020.3.22 指导老师 修宇 [实验 ...
- wyx20162314实验报告二
北京电子科技学院BESTI实验报告 课程:程序设计与数据结构 班级: 1623 姓名: 王译潇 学号:20162310 指导教师:娄佳鹏老师.王志强老师 实验日期:2017年3月26号 实验密级: 非 ...
随机推荐
- 个人对spring的IOC+DI的封装
暂时支持8种基本数据类型,String类型,引用类型,List的注入. 核心代码 package day01; import java.lang.reflect.Field;import java.l ...
- Repeat a string repeat a string-freecodecamp算法题目
Repeat a string repeat a string(重复输出字符串) 要求 重复一个指定的字符串 num次 如果num是一个负数则返回一个空字符串. 思路 将给定的字符串赋给定义的变量te ...
- ubuntu系统普通用户密码忘记之重置
当我们在使用ubuntu系统忘记普通用户登录密码的时候,会被系统在登录界面拒之门外而不得入,这时候只好需要我们去重新设置密码,具体做法如下: 系统重启,在GRUB模式下选择Advanced Optio ...
- python列表之append与extend方法比较
append和extend是列表的两种添加元素方式,但这两种方式却又有些不同之处.那么不同之处在哪里呢,我们通过对二者的定义和实例来看一看. list.append() 1.定义:L.append(o ...
- golang 函数的特殊用法
1.可以复用一些写法.经常在单元测试过程中需要new一些对象可以new的操作抽离出来 package main import "fmt" type S struct { } fun ...
- Hessian知识学习总结(二)——Hessian的helloworld
一.下载Hessian 可在hessian官网http://hessian.caucho.com/ 或者http://download.csdn.net/detail/wodediqizhang/95 ...
- Java-basic-7-面向对象
继承 在Java中,每个子类只能有一个父类,但可以继承多个接口. 子类继承父类,类定义的时候用extends. 继承接口,用implements. 重写 声明为final的方法不能被重写. 声明为st ...
- leetcode-16-greedyAlgorithm
455. Assign Cookies 解题思路: 先将两个数组按升序排序,然后从后往前遍历,当s[j] >= g[i]的时候,就把s[j]分给g[i],i,j都向前移动,count+1;否则向 ...
- 纯虚函数(pure virtual function )和抽象类(abstract base class)
函数体=0的虚函数称为“纯虚函数”.包含纯虚函数的类称为“抽象类” #include <string> class Animal // This Animal is an abstract ...
- Spring MVC+Mybatis 多数据源配置及发现的几个问题
1.CustomerContextHolder 数据源管理类,负责管理当前的多个数据源,基于ThreadLocal实现,对每个线程设置不同的目标数据源 public class CustomerCon ...