C++ 排序、查找的应用
// order.cpp : 定义控制台应用程序的入口点。
// #include "stdafx.h"
#include "string.h"
#include <iostream> #define length 26
using namespace std;
/*********选择排序*********/
void order(char *a,int n)
{
int i = ,j = ;
char temp;
for(i = ; i < n; i++)
for(j = i+; j < n; j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
} }
}
/**********查找函数*************/
void seek(char *a,int n ,char c)
{
int i = ,flag = ;
for(i = ; i < n; i++)
{
if(a[i] == c)
{
flag = ;
}
}
if(flag == )
{
cout << "找到所要找的字母"<< endl;
}
else
cout << "没有找到所要找的字母" << endl;
} int main()
{
char a[length];
char find;
int b;
cout << "请输入"<< length <<"个字母" <<endl;
for(int i = ;i < length; i++)
{
cin >> a[i];
} for(int j = ;j < length; j++)
{
cout << a[j]<<" ";
}
cout << endl; order(a,length);
cout <<"输出有序数组:"<<endl;
for(int j = ;j < length; j++)
cout << a[j]<<" ";
cout << endl; cout << "请输入需要查找的字母" <<endl;
cin >> find;
cout << endl; seek(a,length,find);
cin >> b;
return ;
}
实验名称:排序、查找的应用
实验目的:学会如何应用排序算法和查找算法实现排序、查找。
实验要求:先从键盘上输入26个字母生成无序数组,对数组进行排序,再从键盘输入一个字符进行查找。
实验步骤及内容:
1、从键盘输入26个字母并输出。
cout << "请输入"<< length <<"个字母" <<endl;
for(int i = 0;i < length; i++)
{
cin >> a[i];
}
for(int j = 0;j < length; j++)
{
cout << a[j]<<" ";
}
cout << endl;
2、 对字符数组进行排序。这里用了选择排序来对数组进行排序。
void order(char *a,int n)
{
int i = 0,j = 0;
char temp;
for(i = 0; i < n; i++)
for(j = i+1; j < n; j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
3、 查找函数,若找到则提示已经找到,否则提示没有找到。
void seek(char *a,int n ,char c)
{
int i = 0,flag = 0;
for(i = 0; i < n; i++)
{
if(a[i] == c)
{
flag = 1;
}
}
if(flag == 1)
{
cout << "找到所要找的字母"<< endl;
}
else
cout << "没有找到所要找的字母" << endl;
}
实验总结:
在弄选择排序的时候,把j = i + 1,写成了j = i,然后老是错,最后终于找到错误的根源。
C++ 排序、查找的应用的更多相关文章
- Sublime文本排序&查找重复行&删除重复行
排序 按F9或者选择菜单:Edit > Sort Lines,对每行文本进行排序 查找重复行 排序好后,按Ctrl+F,调出查找面板 查找字符串: ^(.+)$[\r\n](^\1$[\r\n] ...
- Java进阶(三十九)Java集合类的排序,查找,替换操作
Java进阶(三十九)Java集合类的排序,查找,替换操作 前言 在Java方向校招过程中,经常会遇到将输入转换为数组的情况,而我们通常使用ArrayList来表示动态数组.获取到ArrayList对 ...
- 猪八戒吃西瓜(wmelon)-排序-查找
问题 A: 猪八戒吃西瓜(wmelon) 时间限制: 1 Sec 内存限制: 64 MB提交: 30 解决: 14[提交][状态][讨论版] 题目描述 有一天,贪吃的猪八戒来到了一个大果园,果园里 ...
- C/C++ 排序&&查找算法(面试)
一.排序 1.冒泡排序 void BubbleSort(int array[],int n) { ; ; ; ; ;i<n - ;i++) /*外循环控制排序的总趟数*/ { flag = ; ...
- javascript排序 查找算法大全
在pptv的实习结束了, 忙着找工作的事,顺便把数据结构的那本书重新复习了一遍.为了加深印象,特意把里面的常用的排序.查找算法用js写了一遍 具体的实例在我的github上,大家可以访问的: http ...
- 深入JDK源码之Arrays类中的排序查找算法(转)
原文出处: 陶邦仁 binarySearch()方法 二分法查找算法,算法思想:当数据量很大适宜采用该方法.采用二分法查找时,数据需是排好序的. 基本思想:假设数据是按升序排序的,对于给定值x,从序列 ...
- [Day7]循环、数组方法、排序查找
1. ASCII(American Standard Code for Information Interchange) (1)数字0-9对应ASCII编码十进制为48-57, 字母a-z对应ASCI ...
- Java常用的排序查找算法
public static void main(String[] args) { // bubbleSort(); // int[] a = {20,2,10,8,12,17,4,25,11 ...
- python排序查找
无序表查找 def seq_search(lst, key): found = False pos = 0 while pos < len(lst) and not found: if lst[ ...
- mysql 实现经纬度排序查找功能
需求如下: 商品有多个门店,用户使用App时需要查找附近门店的商品,商品要进行去重分页. 思路: 1.确认mysql自带经纬度查询函数可以使用. 2.该需求需要利用分组排序,取每个商品最近门店的商品i ...
随机推荐
- IOS异常日志记录与展现功能
在平常的APP开发过程中经常碰到程序遇到异常闪退的问题,通过日志可以把相关的详细错误信息进行记录,本实例要记录不管在哪个页面出错都要进行记录,这边使用到的日志记录插件CocoaLumberjack,以 ...
- 【原】自定义UINavigationItem的两种方法以及相应的隐藏方法
第一种: UIImage *searchimage=[UIImage imageNamed:@"search.png"]; UIBarButtonItem *barbtn=[[[U ...
- Web应用程序系统的多用户权限控制设计及实现-首页模块【5】
首页模块就是展示不同权限的最终结果了,在阅读这章之前若有些不明白,可看看后续的单独的权限模块,用户模块,目录模块后从整体上再看首页模块. 阅读该模块需要一定或者是比较熟练的js知识,EasyUI Ta ...
- Swift控制流
本文简单的介绍swift一些基本语法的使用,在本文中不会做更深的剖析,只提及一些语法的简单的使用,快速学会编写swift程序.高手请绕路走嘿嘿 常量与变量: swift中定义所有的变量使用var,定义 ...
- 27个提升效率的iOS开源库推荐
DZNEmptyDataSet(UI,空表格视图解算器) PDTSimpleCalendar(UI,drop-in日历组件) MagicalRecord(实施活跃记录模式的Core Data助手) C ...
- (转)为什么大公司青睐Java
转自 http://www.zhihu.com/question/25908953/answer/32119971 因为这是一个商业问题,不是技术问题. 我在面试时探讨过这个问题,对方创业期,问我如果 ...
- Effective Java 26 Favor generic types
Use generic types to replace the object declaration Add one or more type parameters to its declarati ...
- 关于Javascript中的复制
在做项目时有一个需求,是需要复制内容到剪切板,因为有众多浏览器,所以要兼容性很重要 1.最简单的copy,只能在IE下使用 使用clipboardData方法 <script type=&quo ...
- HTTP Session原理
深入理解HTTP Session session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的 ...
- 虚拟机ping不通主机,但是主机可以ping通虚拟机(转载)
我在Windows7系统安装了虚拟机,通过虚拟机安装了Ubuntu13.04,我设置的主机与虚拟机的连接方式是桥接,安装好后,发现虚拟机ping不通主机,但是主机可以ping通虚拟机. 我的操作是:关 ...