C语言 数组输出,冒泡排序法,沉底排序法,二维数组输出,输出字母列长度,从随机数组中找重复数
#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语言 数组输出,冒泡排序法,沉底排序法,二维数组输出,输出字母列长度,从随机数组中找重复数的更多相关文章
- php排序介绍_冒泡排序_选择排序法_插入排序法_快速排序法
这里我们介绍一些常用的排序方法,排序是一个程序员的基本功,所谓排序就是对一组数据,按照某个顺序排列的过程. 充效率看 冒泡排序法<选择排序法<插入排序法 排序分两大类: 内部排序法 交换式 ...
- python练习 - 系统基本信息获取(sys标准库)+ 二维数据表格输出(tabulate库)
系统基本信息获取 描述 获取系统的递归深度.当前执行文件路径.系统最大UNICODE编码值等3个信息,并打印输出. ...
- C语言实现冒泡排序法和选择排序法代码参考
为了易用,我编写排序函数,这和直接在主调函数中用是差不多的. 我认为选择排序法更好理解!请注意 i 和 j ,在写代码时别弄错了,不然很难找到错误! 冒泡排序法 void sort(int * ar, ...
- java12-6 冒泡排序法和选择排序法
1.冒泡排序法 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处 分析: 第一次比较排序的结果:会把其中最大的数据排到最大的索引处 第二次比较排序后的结果:因为第一次已经把最大的一个 ...
- Java 快速排序法 冒泡排序法 选择排序法 插入排序法
1.快速排序的原理: 选择一个关键值作为基准值.比基准值小的都在左边序列(一般是无序的),比基准值大的都在右边(一般是无序的). 从后往前比较,用基准值和最后一个值比较,如果比基准值小的交换位置,如果 ...
- python中对列表元素大小排序(冒泡排序法和选择排序法)
前言:排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列.本文主要讲述python中经常用的两种排序算法,选择排序法 ...
- Go语言实现:【剑指offer】二维数组中的查找
该题目来源于牛客网<剑指offer>专题. 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一 ...
- 计算机二级-C语言-程序设计题-190119记录-求出一个二维数组每一列的最小值。
//编写一个函数:tt指向一个M行N列的二维数组,求出二维数组每列中最小的元素,并依次放入pp所指的一维数组中.二维数组中的数在主函数中赋予. //重难点:求出的是每一列的最小值,这里要注意,学会简化 ...
- PHP二维数据排序,二维数据模糊查询
一.因为项目中的一个报表需要合并三个表的数据,所以分表查询再合并数据,利用PHP数组函数进行排序,搜索.三表合并后的数组结构如下: Array ( [0] => Array ( [history ...
随机推荐
- 标准库 - fmt/scan.go 解读
// Copyright 2010 The Go Authors. All rights reserved. // Use of this source code is governed by a B ...
- The Socket API, Part 4: Datagrams
转:http://www.linuxforu.com/2011/11/socket-api-part-4-datagrams/ By Pankaj Tanwar on November 1, 2011 ...
- java中的包有那些 ???
java.util工具包java.sql数据库包java.io输入输出流包java.net网络包java.lang基础包这些是基本的包,还有一些其他的例如集合,反射等的工具包,你可以去查一下java ...
- 算法总结—深度优先搜索DFS
深度优先搜索(DFS) 往往利用递归函数实现(隐式地使用栈). 深度优先从最开始的状态出发,遍历所有可以到达的状态.由此可以对所有的状态进行操作,或列举出所有的状态. 1.poj2386 Lake C ...
- 适配iOS9遇到的一些问题_Scheme白名单_ Bitcode及解决办法
升级Xcode7 运行项目发现报错如下: 1.Scheme白名单问题 -canOpenURL: failed for URL: “weixin://app/wxdaae92a9cfe5d54c/” - ...
- 经典的iptables shell脚本
PS:这个iptables脚本不错,很实用,根据实际应用改一下就可以自己用.分享出来,供大家来参考.原作者佚名.源代码如下: #!/bin/sh modprobe ipt_MASQUERADE mod ...
- linux环境中 对tomcat配置java环境
JAVA_OPTS="$JAVA_OPTS -Xms1024m -Xmx2048m -XX:MaxPermSize=512m" JAVA_HOME="/weblogic1 ...
- IOS 开发中判断NSString是否为空字符
//当 请求网络 或者获取其他返回数据 首先 要做一次判断 数据是否为空 防止程序崩溃 程序崩溃 好比拿刀扎在程序员的心啊- if(为空) { 做提示对话框等操作 } else { 正常执行 } - ...
- 【阿里云产品公测】阿里云ACE配置全程图解,详细到不行!
作者:阿里云用户sofia 看过阿里云社区的其他技术大姥们的评测教程,感觉还是不够详细,对于一个第一次接触ace.新浪sae这类的应用来说还是比较陌生的.我最喜欢写教程了,不过我有我的风格,那就是简单 ...
- 【Shell脚本学习4】几种常见的Shell
上面提到过,Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把它们称作一种Shell.我们常说 ...