// 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++ 排序、查找的应用的更多相关文章

  1. Sublime文本排序&查找重复行&删除重复行

    排序 按F9或者选择菜单:Edit > Sort Lines,对每行文本进行排序 查找重复行 排序好后,按Ctrl+F,调出查找面板 查找字符串: ^(.+)$[\r\n](^\1$[\r\n] ...

  2. Java进阶(三十九)Java集合类的排序,查找,替换操作

    Java进阶(三十九)Java集合类的排序,查找,替换操作 前言 在Java方向校招过程中,经常会遇到将输入转换为数组的情况,而我们通常使用ArrayList来表示动态数组.获取到ArrayList对 ...

  3. 猪八戒吃西瓜(wmelon)-排序-查找

    问题 A: 猪八戒吃西瓜(wmelon) 时间限制: 1 Sec  内存限制: 64 MB提交: 30  解决: 14[提交][状态][讨论版] 题目描述 有一天,贪吃的猪八戒来到了一个大果园,果园里 ...

  4. C/C++ 排序&&查找算法(面试)

    一.排序 1.冒泡排序 void BubbleSort(int array[],int n) { ; ; ; ; ;i<n - ;i++) /*外循环控制排序的总趟数*/ { flag = ; ...

  5. javascript排序 查找算法大全

    在pptv的实习结束了, 忙着找工作的事,顺便把数据结构的那本书重新复习了一遍.为了加深印象,特意把里面的常用的排序.查找算法用js写了一遍 具体的实例在我的github上,大家可以访问的: http ...

  6. 深入JDK源码之Arrays类中的排序查找算法(转)

    原文出处: 陶邦仁 binarySearch()方法 二分法查找算法,算法思想:当数据量很大适宜采用该方法.采用二分法查找时,数据需是排好序的. 基本思想:假设数据是按升序排序的,对于给定值x,从序列 ...

  7. [Day7]循环、数组方法、排序查找

    1. ASCII(American Standard Code for Information Interchange) (1)数字0-9对应ASCII编码十进制为48-57, 字母a-z对应ASCI ...

  8. Java常用的排序查找算法

    public static void main(String[] args) {      // bubbleSort(); // int[] a = {20,2,10,8,12,17,4,25,11 ...

  9. python排序查找

    无序表查找 def seq_search(lst, key): found = False pos = 0 while pos < len(lst) and not found: if lst[ ...

  10. mysql 实现经纬度排序查找功能

    需求如下: 商品有多个门店,用户使用App时需要查找附近门店的商品,商品要进行去重分页. 思路: 1.确认mysql自带经纬度查询函数可以使用. 2.该需求需要利用分组排序,取每个商品最近门店的商品i ...

随机推荐

  1. c语言 拼接字符串

    #include<stdio.h> #include<stdlib.h> void main() { ] = "ca"; ] = "lc" ...

  2. IOS之UI -- UITableView -- 1 -- 相关初识

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  3. C语言错误之--初始值(低级错误)

    今天犯了一个低级错误,虽然低级,但是也不能忽视,一个低级错误以后可能小则浪费时间和精力,大则酿成整个app的项目bug.    

  4. 推些C语言与算法书籍

    c语言系统学习与进阶: 1. C primer plus C primer plus 作为一本被人推崇备至的 c 入门经典,C primer plus 绝非浪得虚名.应该 算得上 C 教材里最好的入门 ...

  5. SAM4E单片机之旅——14、LCD之SMC的配置

    在上个例子中,已经在ASF添加了ILI93xx模块,并做好了相关的声明.这次就做好SMC的配置,然后使用ASF提供的API在屏幕上打印出”Hello World!”字样. 一. 电路图 开发板的LCD ...

  6. 【log4net】配置

    第一步在 AssemblyInfo  添加如下代码 第二步:在web.config添加如下代码: <log4net> <root> <level value=" ...

  7. 用shell脚本批量修改文件后缀名

    早上本想将一些照片上传到相册中,但是由于所有照片的扩展名都是JPG而不是小写的jpg,因此造成了“格式不正确”而不能上传照片.此刻就产生了这样一个问题:使用shell脚本如何批量将所有文件的扩展名JP ...

  8. loop指令

    loop系列的指令有:loop,loope/loopz,loopne/loopnz,它们都是借助于ECX寄存器作为计数来实现循环,每轮循环先ecx自动减1,再来判断ecx值,ecx的自减不会影响OF和 ...

  9. [转载] vim带你装逼带你飞(一)

    前言:逃离windows有很长时间了,特别是当今android盛行的时代,我们没有理由不选择ubuntu作为编译开发android之首选.其实操作系统只是我们使用的一个工具, windows也好lin ...

  10. SSIS ETL BEST PRACTICE

    PackageRunLog(ExecutionGuid,PackageName,SourceTableName,DestinationTableName,StartTimeUTC,EndTimeUTC ...