#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. linux 内核调试方法

    http://my.oschina.net/fgq611/blog/113249 http://my.oschina.net/fgq611/blog/112929

  2. OpenResty(nginx扩展)实现防cc攻击

    OpenResty(nginx扩展)实现防cc攻击 导读 OpenResty 通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强 ...

  3. n-1位数

    描述 已知w是一个大于10但不大于1000000的无符号整数,若w是n(n≥2)位的整数,则求出w的后n-1位的数.   输入 第一行为M,表示测试数据组数.接下来M行,每行包含一个测试数据. 输出 ...

  4. Ajax的工作原理

    Ajax的核心是JavaScript对象XmlHttpRequest.该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术.简而言之,XmlHttpRequest使您可 ...

  5. 用javascript获取屏幕高度和宽度等信息

    网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: document.body.offsetWi ...

  6. Scoket

    1.Socket 几个常用的名词 IPC—>Inter Process Communication,进程间通信 socket —> 套接字 TCP—>Transmission Con ...

  7. Java Script基础(七) HTML DOM模型

    一.HTML DOM. HTML DOM的特性和方法是专门针对HTML的,HTML中的每个节点都是一个对象,通过访问属性和方法的方式,让一些DOM操作更加简便,在HTML DOM中有专门用来处理白哦个 ...

  8. 一路踩过的坑 php

    1.数据表唯一索引  (两列字段,组合索引) 遇到的情形:项目搭建新测试环境(其实就是所谓的灰度 与线上一致的一个环境):从线上拉回来代码搭建的,数据也是来自于线上数据,但是由于线上数据有部分为机密数 ...

  9. springmvc(2)--参数绑定

    一.以实例来看springmvc各种参数绑定方式   先定义个dto类: public class RestInDto implements Serializable { private static ...

  10. 多线程的练习----妖,等待唤醒,代码重构,lock到condition

    × 目录 [1]需求 [2]妖的出现和解决 [3]等待唤醒 [4]代码重构 [5]改成Lock Condition ------------------------------------- 1,需求 ...