#include <stdio.h>

#define sum 3+4//宏定义是原封不动的使用used for test4

#include <time.h>//used for test8~9

#include <stdlib.h>//used for test8~9

void test(){//数组输出

//int a[5]={1,2,3,4,5};

printf("array output,look,please...\n");

int a[10];

int i;//for(int i=0;i<10;i++)

printf("a[10]={");

for (i=0; i<10; i++){

a[i]=i;

printf("%d,",a[i]);

}

printf("}");

}

void test1(){//输入数组

int a[5];

printf("\narray input(just the number in the brackets),look please...\n");

scanf("%d %d %d %d %d",&a[0],&a[1],&a[2],&a[3],&a[4]);//可以无限输入但是只录入前五个,后面的作为一个整体。忽视掉。

for (int j=0; j<5; j++) {

printf("%d,",a[j]);

}

}

void test2(){//冒泡排序法

printf("\n冒泡排序法:\n");

int a[4]={34,45,12,53};

for (int k=0;k<4; k++) {

for (int l=k+1;l<4; l++) {

if (a[k]<a[l]) {

int temp=a[l];

a[l]=a[k];

a[k]=temp;

}

}printf("%d,",a[k]);

}

}

void test3(){//沉底排序法

printf("\n沉底排序法:\n");

int a[4]={34,45,12,53};

for (int k=0;k<4; k++) {

for (int l=k+1;l<4; l++) {

if (a[k]>a[l]) {

int temp=a[l];

a[l]=a[k];

a[k]=temp;

}

}printf("%d,",a[k]);

}

}

void test4(){

printf("\n宏定义使用:\n");

int b=3;

printf("%d\n",b*sum);

}

void test5(){//二维数组输出

printf("二维数组输出,look here,please...\n");

int a[2][5]={0,1,2,3,4,5,6,7,8,9};

// int c[2][5]={{0,1,2,3,4},{5,6,7,8,9}};

for (int i=0; i<2; i++) {

for (int j=0;j<5;j++) {

printf("a[%d][%d]=%d  ",i,j,a[i][j]);

}printf("\n");

}

}

void test6(){

printf("二维数组一维输出\n");

int a[4][4]={{32,3,454,56},{65,67,565,45},{423,343,34,27},{4,5,6,56}};

int i,j = 0;//在for内部定义的话,在外部不能用。

for ( i=0; i<4; i++) {

for ( j=0;j<4;j++) {

printf("a[%d]=%d  ",i*4+j,a[i][j]);

}

}

printf("\na[%d]={",i*j);

for (int i=0; i<4; i++) {

for (int j=0;j<4;j++) {

if (i==3 && j==3) {//判断去除最后的逗号

printf("%d",a[i][j]);

}

else

printf("%d,",a[i][j]);//输出附带相邻逗号;

}

}

printf("\b ");

printf("}\n");

}

void test7(){//输出字母列长度;

char a[]="hello";

printf("%s\n",a);

printf("%d\n",(int)sizeof(a));

char b='A';

printf("%d\n",(int)sizeof(b));

}

void test8(){//已知一个数组int a[100],存放的数是1~99的数,里面有一个重复的数字,找出这个数字。

int a[10]={1,2,3,4,5,6,5,7,8,9};

for (int i; i<10; i++) {

for (int j=i+1; j<10; j++) {

if (a[i]==a[j]) {

printf("重复的数字为:%d\n",a[i]);

}

}

}

}

void test9(){//输入一个数字判断是不是重复过。

int a[10]={1,2,3,4,2,4,5,3,3,9};

int b;

while (1) {

printf("Insert the number you want to check,please...\n");

scanf("%d",&b);

int j=0;

for (int i=0; i<10; i++) {

if(a[i]==b){

j=j+1;

}

}

if (j>=2) {

printf("%d重复过,重复次数为%d\n",b,j);

}

else if (j==1)printf("%d只出现了一次\n",b);

else printf("%d一次都没出现过,亲",b);

}

}

void test10(){//随机产生100个数输出其中任何一对相同的数。

srand((unsigned int)time(0));

int a[100],i,j;

for(int i = 0; i < 100; i++){

a[i] = rand()%100 + 1;

printf("a[%d]=%d\n",i, a[i]);

}

printf("out over.\n");

for (i=0; i<100; i++) {

for (j=i+1; j<100; j++) {

if (a[i]==a[j]) {

printf("a[%d]=a[%d]=%d",i,j,a[i]);

}

}printf("\n");

}

}

int main(int argc, const char * argv[]) {

printf("Hello, World!\n");

test();

test1();

test2();

test3();

test4();

test5();

test6();

test7();

test8();

test9();

test10();

return 0;

}

C语言 数组输出,冒泡排序法,沉底排序法,二维数组输出,输出字母列长度,从随机数组中找重复数的更多相关文章

  1. php排序介绍_冒泡排序_选择排序法_插入排序法_快速排序法

    这里我们介绍一些常用的排序方法,排序是一个程序员的基本功,所谓排序就是对一组数据,按照某个顺序排列的过程. 充效率看 冒泡排序法<选择排序法<插入排序法 排序分两大类: 内部排序法 交换式 ...

  2. python练习 - 系统基本信息获取(sys标准库)+ 二维数据表格输出(tabulate库)

    系统基本信息获取 描述 获取系统的递归深度.当前执行文件路径.系统最大UNICODE编码值等3个信息,并打印输出.‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮ ...

  3. C语言实现冒泡排序法和选择排序法代码参考

    为了易用,我编写排序函数,这和直接在主调函数中用是差不多的. 我认为选择排序法更好理解!请注意 i 和 j ,在写代码时别弄错了,不然很难找到错误! 冒泡排序法 void sort(int * ar, ...

  4. java12-6 冒泡排序法和选择排序法

    1.冒泡排序法 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处 分析: 第一次比较排序的结果:会把其中最大的数据排到最大的索引处 第二次比较排序后的结果:因为第一次已经把最大的一个 ...

  5. Java 快速排序法 冒泡排序法 选择排序法 插入排序法

    1.快速排序的原理: 选择一个关键值作为基准值.比基准值小的都在左边序列(一般是无序的),比基准值大的都在右边(一般是无序的). 从后往前比较,用基准值和最后一个值比较,如果比基准值小的交换位置,如果 ...

  6. python中对列表元素大小排序(冒泡排序法和选择排序法)

    前言:排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列.本文主要讲述python中经常用的两种排序算法,选择排序法 ...

  7. Go语言实现:【剑指offer】二维数组中的查找

    该题目来源于牛客网<剑指offer>专题. 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一 ...

  8. 计算机二级-C语言-程序设计题-190119记录-求出一个二维数组每一列的最小值。

    //编写一个函数:tt指向一个M行N列的二维数组,求出二维数组每列中最小的元素,并依次放入pp所指的一维数组中.二维数组中的数在主函数中赋予. //重难点:求出的是每一列的最小值,这里要注意,学会简化 ...

  9. PHP二维数据排序,二维数据模糊查询

    一.因为项目中的一个报表需要合并三个表的数据,所以分表查询再合并数据,利用PHP数组函数进行排序,搜索.三表合并后的数组结构如下: Array ( [0] => Array ( [history ...

随机推荐

  1. mysql优化之连接优化(open-files-limit与table_open_cache)

    MySQL打开的文件描述符限制 Can't open file: '.\test\mytable.frm' (errno: 24) OS error code : Too many open file ...

  2. Django添加模型无法数据迁移解决方法

    用Django开发一款博客,按照教程一步步写下来,发现当我创建一个模型blogpost的时候,使用数据迁移 python manage.py migrate 提示 Operations to perf ...

  3. 深入理解Redis中的主键失效及其实现机制

    参考:http://blog.sina.com.cn/s/articlelist_1221155353_0_1.html 作为一种定期清理无效数据的重要机制,主键失效存在于大多数缓存系统中,Reids ...

  4. 构建高性能服务(三)Java高性能缓冲设计 vs Disruptor vs LinkedBlockingQueue--转载

    原文地址:http://maoyidao.iteye.com/blog/1663193 一个仅仅部署在4台服务器上的服务,每秒向Database写入数据超过100万行数据,每分钟产生超过1G的数据.而 ...

  5. GNU的ar,ranlib和nm

    转:http://blog.csdn.net/yuntongsf/article/details/6284517 RANLIB 的作用: CC = CC=/usr/local/ndk/toolchai ...

  6. jQuery显示和隐藏 常用的状态判断方法

    显示:show()  display:block; 隐藏:hide()   display:none; 当显示和隐藏切换的时候,需要判断此刻是显示还是隐藏,那判断条件常用以下几种方法: 1.if(th ...

  7. Python笔记(二)

    在昨天学习Python之后,感觉它的的确确挺简洁,也挺容易学习.在昨天的学习中我们了解到了Python中while循环语句以及if...else语句的使用,while语句的使用格式是这样的:while ...

  8. nodejs 实现 http proxy 透明转发

    这两天需要安装一个Linux虚拟机,接下来要通过 yum 来安装需要的软件. 因单位的网络需要通过代理才能访问外网,公司代理服务器:proxy.xxxx.com,给yum增加了proxy设置: # v ...

  9. 【python,threading】python多线程

    使用多线程的方式 1.  函数式:使用threading模块threading.Thread(e.g target name parameters) import time,threading def ...

  10. Kinect For Windows V2开发日志七:照片合成与背景消除

    上一篇里讲到了Kinect可以从环境中区分出人体来.因此可以利用这个功能,来把摄像头前的人合成进照片里,和利用Photoshop不同的是,这样合成进去的人是动态且实时的. 简单的思路 BodyInde ...