每天一个小程序——选择排序时的一个小问题!

一开始我的程序如下,一直出现错误,基本上肯定逻辑上没有错误,用C-free编译运行时排序根本就没用,后来改成后面的才有用!

(一),有问题的程序

#include<stdio.h>
//#define LEN 10
void Sort(int arry[]);
int Select_min(int arry[]);
int main()
{
 int a[10],num=0;

for(num=0;num<10;num++) /*输入10个数字*/
 {
  scanf("%d",&a[num]);
 }
 //printf("%d\n",sizeof(a)/sizeof(int));
 //printf("%d\n",Select_min(a));
    Sort(a,sizeof(a)/4);
    for(num=0;num<10;num++)
    {
     printf("%d ",a[num]);
    }
    printf("\n");
   return 0; 
}

void Sort(int  arry[])
{
 int i=0,j=0,min=0;
 int temp;
 //arry_size=sizeof(arry)/4;
 //for(i=j+1;sizeof(arry)/4;i++)
 for(j=0;j<sizeof(arry)/4;j++)
 { 
  min=j;
  for(i=j+1;i<sizeof(arry)/4;i++)/*这个for循环就是找到每一趟中最小的值,找到之后下一躺就少一个*/
  {
   if(arry[min]>arry[i])  
       min=i;/*记录最小值*/ 
  }

if(min!=j)  /*把第一次最小的放在数组的最前面*/
  {
   temp=arry[min];
      arry[min]=arry[j];
      arry[j]=temp;
  
  }
  
 }
}

int Select_min(int arry[])/*求数组中最小值*/
{
 int m,MIN=0;
 MIN=arry[0];
 for(m=1;m<sizeof(arry)/sizeof(int);m++)
 {
  if(MIN>arry[m])
       MIN=arry[m];
 }
 return MIN;
}

(二)、修改后正确代码!

#include<stdio.h>
//#define LEN 10
void Sort(int arry[],int);
int Select_min(int arry[]);
int main()
{
 int a[10],num=0;

for(num=0;num<10;num++) /*输入10个数字*/
 {
  scanf("%d",&a[num]);
 }
 //printf("%d\n",sizeof(a)/sizeof(int));
 //printf("%d\n",Select_min(a));
    Sort(a,sizeof(a)/4);
    for(num=0;num<10;num++)
    {
     printf("%d ",a[num]);
    }
    printf("\n");
   return 0; 
}

void Sort(int  arry[],int arry_size)
{
 int i=0,j=0,min=0;
 int temp;
 //arry_size=sizeof(arry)/4;
 //for(i=j+1;sizeof(arry)/4;i++)
 for(j=0;j<arry_size;j++)
 { 
  min=j;
  for(i=j+1;i<arry_size;i++)/*这个for循环就是找到每一趟中最小的值,找到之后下一躺就少一个*/
  {
   if(arry[min]>arry[i])  
       min=i;/*记录最小值*/ 
  }

if(min!=j)  /*把第一次最小的放在数组的最前面*/
  {
   temp=arry[min];
      arry[min]=arry[j];
      arry[j]=temp;
  
  }
  
 }
}

int Select_min(int arry[])/*求数组中最小值*/
{
 int m,MIN=0;
 MIN=arry[0];
 for(m=1;m<sizeof(arry)/sizeof(int);m++)
 {
  if(MIN>arry[m])
       MIN=arry[m];
 }
 return MIN;
}

搜索

时间: 2024-07-31 21:04:46

每天一个小程序——选择排序时的一个小问题!的相关文章

微信小程序---选择图片和调用微信拍照

1.实现点击头像按钮实现选择图片或者拍照,将图片重新设置成头像: //index.js //获取应用实例 var app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, avatarUrl:null }, //事件处理函数 bindViewTap: function() { var that = this // 选择图片和拍照 wx.chooseImage({ count: 1, // 默认9 sizeType: ['o

微信小程序发布新版本时自动提示用户更新

如图,当小程序发布新的版本后,用户如果之前访问过该小程序,通过已打开的小程序进入(未手动删除),则会弹出这个提示,提醒用户更新新的版本.用户点击确定就可以自动重启更新,点击取消则关闭弹窗,不再更新. 官方给的示例代码: const updateManager = wx.getUpdateManager() updateManager.onCheckForUpdate(function (res) { // 请求完新版本信息的回调 console.log(res.hasUpdate) }) upd

三分钟创建一个小程序-每天三分钟玩转小程序 1

点击上方"编程三分钟",马上关注,每周1.3.5定时更新. 好险,还有几分钟,差点没有赶上周五的尾巴.这次带来的是1. 小程序开发前的准备,非常的简单,让我们花三分钟创建一个小程序! 1. 注册账号 访问微信公众平台网站:https://mp.weixin.qq.com 鼠标放到小程序上 发现图案变成了,下面这样,点击[查看详情],进入小程序注册页面. 拉到最下面,出现前往注册 填写一个没有注册过公众号,也没有注册过小程序的邮箱,来注册. . 2. 激活邮箱 这个时候你会收到一封邮件(

第一个微信小程序(实现点击一个按钮弹出toast)

今天根据网上的教程搭建了微信小程序的环境,然后看文档做了一个简单的小应用. 项目的目录是这个样子的: app.js.app.json.app.wxss是全局文件,必不可少的文件.定义在app.wxss中的样式为全局样式,作用于每一个页面.在page的wxss文件中定义的样式为局部样式,只作用在对应的页面,并会覆盖app.wxss中相同的选择器. app.js文件代码: App({ onLaunch: function () { console.log('小程序已启动') }, onShow: f

小程序,会是下一个创业风口吗

小程序,创业者们的狂躁与迷思 记得在16年的9月份,就有消息说微信推出的小程序,一时间大家对于小程序的关注就从来没有减少过.或许是经过15年移动互联网大潮之后,16年互联网一下子寂静了许多的原因,大家对于小程序给予了很高的期望.我也从那时候起开始研究小程序,并且在12月的那次内测中,我也如愿的尝试了一把小程序的开发. 说实话,当时看着小程序的开发文档,惊艳了一下,呀,项目结构如此清晰,逻辑也是相当的清楚,一时间对微信平台架构的大神们膜拜了一下.相比原生的Android.ios开发,确实方便了不少

【小程序源码案例】微信小程序项目开发案例分享

作者:web小二本文标签: 微信小程序 小程序源码案例 小程序项目小程序的开发,并不是适合所有公司,我今天跟大家分享小程序方面的教程,主要是供大家学习使用.学习这种东西,有时候则是单纯的喜欢,没有任何目的,很单纯的为了好玩,记得很早之前学flash,没有想法,就是觉得好玩,纯娱乐爱好而已.到后来玩视频剪辑也是出于同样的原因,不图钱财名利,只是图自己个人爱好娱乐. 但是,学习,有时候则是需要有明确目的,特别是关系到自己吃饭问题的时候,你就需要非常有目的去学习,并且还需要制定好学习的计划与目标,希望

一起脱去小程序的外套和内衣 - 微信小程序架构解析

版权声明:本文由渠宏伟  原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/760767001484042227 来源:腾云阁 https://www.qcloud.com/community 作者介绍: 渠宏伟,腾讯高级工程师,从事Web前端开发5年,先后负责企鹅电竞.腾讯视频VIP.腾讯OA开发框架.腾讯微信HR助手等项目.对Web前端架构..NET架构有丰富的经验. 微信小程序的公测掀起了学习小程序开发的浪潮,天生跨

Python小程序练习二之装饰器小例子

Python小程序练习二之装饰器小例子 装饰器: 装饰器实际上就是为了给某程序增添功能,但该程序已经上线或已经被使用,那么就不能大批量的修改源代码,这样是不科学的也是不现实的,因为就产生了装饰器,使得其满足: 1.不能修改被装饰的函数的源代码 2.不能修改被装饰的函数的调用方式 那么根据需求,同时满足了这两点原则,这才是我们的目的. 装饰器的原则组成: < 函数+实参高阶函数+返回值高阶函数+嵌套函数+语法糖 = 装饰器 > 错误例子: 1.1Decorators.py 1 # The aut

Taro适配小程序和h5的话题发布小案例

内容:完成在小程序和h5的话题发布小案例,主要功能话题发布,按点赞数排序. 框架:taro 遇到的问题: 最好在小程序端开发 把需要的组件都得用import { View, Text, Button } from '@tarojs/components'引进来,否则不能适配h5端 事件的参数名必须以on开头,是为了适配小程序 尽量避免相同的命名,在小程序端因为组件的样式只对本身起作用,外界的样式对自定义组件时不起作用的,h5外界样式会对自定义组件起作用 源码地址:https://github.c