哪的错?

efuliang 2003-02-09 06:52:01
//输入5个数,按升序排列,但是结果很吓人
//这是我练习指针与函数,顺便再加上冒泡排序与选择排序的
//请帮我看看是哪出的错,谢谢了
#include <iostream.h>
#define M 5
void maopao(int *p,int n) //形式参数为指针变量,冒泡法
{
int i,j,temp;
for(i=0;i<n;i++)
for(j=n-i;j<n;j++)
if(p[j]>p[j+1])
{
temp=p[i];
p[i]=p[j+1];
p[j+1]=temp;
}
for(i=0;i<n;i++)
cout<<p[i];
cout<<endl;
}
void xuanze(int *p,int n) //形式参数为指针变量,选择法
{
int i,j,temp;
for(i=0;i<n;i++)
for(j=i+1;j<=n;j++)
if(p[i]>p[j])
{
temp=p[i];
p[i]=p[j];
p[j]=temp;
}
for(i=0;i<n;i++)
cout<<p[i];
cout<<endl;
}
void main(void)
{
int i,j;
int shu[5];
int *pp;
cout<<"请输入"<<M<<"个整数,输出按升序排列"<<endl;
for(i=0;i<M;i++)
cin>>shu[i];
pp=shu;
maopao(pp,M);
xuanze(pp,M);
}
...全文
91 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
whoke 2003-02-09
  • 打赏
  • 举报
回复
#include <iostream>

const int M = 5;
void maopao(int *p,int n) //ÐÎʽ²ÎÊýΪָÕë±äÁ¿£¬Ã°ÅÝ·¨
{
for(int i=0; i<n; i++)
for(int j=i+1; j<n; j++)
if(p[i]>p[j])
{
int temp=p[i];
p[i]=p[j];
p[j]=temp;
}
for(int i=0; i<n; i++)
cout<<p[i];
cout<<endl;
}

void xuanze(int *p,int n) //ÐÎʽ²ÎÊýΪָÕë±äÁ¿£¬Ñ¡Ôñ·¨
{
for(int i=0;i<n;i++)
{
int MinPos =i;
for(int j = i+1; j<=n; j++)
{
if(p[MinPos]>p[j])
{
MinPos=j;
}
}
int temp =p[MinPos];
p[MinPos] =p[i];
p[i] = temp;
}
for(int i=0; i<n; i++)
cout<<p[i];
cout<<endl;
}

int main(int argc, char *argv[])
{
int i,j;
int shu[5];
int *pp;
cout<<"ÇëÊäÈë"<<M<<"¸öÕûÊý£¬Êä³ö°´ÉýÐòÅÅÁÐ"<<endl;
for(i=0;i<M;i++)
cin>>shu[i];
pp=shu;
maopao(pp,M);
xuanze(pp,M);
return 0;
}
wxl00wxl 2003-02-09
  • 打赏
  • 举报
回复
j=n-i;并且n=5,i=0

j=???
efuliang 2003-02-09
  • 打赏
  • 举报
回复
j怎么能等于5?
wxl00wxl 2003-02-09
  • 打赏
  • 举报
回复
maopao(pp,M);中for(j=n-i;j<n;j++),
此时i=0,j=5,第一次不进入循环便开始第2次
源码链接: https://pan.quark.cn/s/a4b39357ea24 微信小程序是由腾讯公司设计的一种轻量级应用开发平台,主要面向移动设备,旨在为用户带来无需下载安装即可直接使用的应用服务体验。在微信小程序的开发实践中,"模仿美团菜单 swiper分类菜单"是一项常见的技术应用,其目的是达成与美团外卖应用相似的交互模式,使用户能够轻松地浏览和挑选各种商品或服务。 在微信小程序的技术体系中,`swiper`组件属于轮播图功能模块,通常用于呈现多张图片或卡片式的切换界面,能够达成动态滑动展示不同分类菜单的功能。在模拟美团菜单的应用情境下,`swiper`组件一般与`swiper-item`组件协同工作,每一个`swiper-item`对应一个分类,用户可通过左右滑动来切换不同的分类菜单。 为了达成这样的功能,首先需要在微信小程序的`json`配置文档中引入`swiper`组件,并在`wxml`结构文档中构建相应的布局代码,将每个分类以`swiper-item`的形式进行组织。同时,需要在`wxss`样式文档中定义恰当的样式,保证分类菜单的视觉呈现符合设计规范。 接下来,我们将在`js`逻辑文档中处理`swiper`的切换逻辑,通过监听`bindchange`事件来识别当前选中的分类,并根据这一信息动态获取对应的子菜单信息。为了达成类似美团的层级菜单功能,可能还需要借助`picker`或`navigator`组件来展示二级分类或商品详情。 在开发阶段,需要关注以下关键点: 1. 数据绑定:保证数据与界面之间的双向链接准确无误,以便在选择分类时即时更新显示内容。 2. 动态加载:针对大量数据,可能需要采取异步加载机制,防止一次性加载过多内容引发性能瓶颈...
代码下载地址: https://pan.quark.cn/s/72bd50ecb2fb 《微信飞机大战素材详解》 微信飞机大战作为一款广受欢迎的休闲游戏,凭借其便捷的操作方式和紧张刺激的游戏过程,赢得了众多用户的青睐。本文将系统性地剖析这款游戏的关键素材,旨在帮助开发者全面掌握游戏的设计理念与实现方法。 我们聚焦于游戏的核心构成——"AirplaneResource"。此名称一般指向游戏资源库,其中收纳了游戏中所有的视觉素材、音频资料以及动画元素。在微信飞机大战的语境下,这些资源构成了游戏画面呈现、音效播放和动态效果的基础。 1. **图像素材**:游戏中的飞机造型、敌方单位、弹药以及爆炸效果等视觉元素,均以图像素材的形式进行展示。图像素材通常涵盖PNG或JPG格式的静态图片,也包括GIF或APNG格式的动态图片。开发者需要细致地设计并优化这些图像,确保在各种设备上都能实现流畅的渲染,同时维持视觉表现力。 2. **声音素材**:游戏的背景音乐、射击音效、爆炸声等音频片段,对于构建游戏氛围具有决定性作用。这些音频文件可能以MP3、WAV或OGG格式进行存储,开发者需要权衡音频的压缩程度与音质,以确保在不牺牲游戏体验的前提下,有效控制文件体积。 3. **动画序列**:飞机的飞行轨迹、攻击动作、爆炸过程等动态表现,通常借助序列帧动画技术实现。这些序列帧图片组合而成的动画,通过编程控制播放速率和顺序,为游戏增添生动的动态效果。 4. **物理接触判定**:游戏中飞机与弹药之间的接触判定,是通过算法完成的。开发者可能会采用基础的矩形接触判定或更精密的像素级接触判定,以保证游戏的公平性和挑战性。 5. **游戏规则**:微信飞机大战的得分机制、生命值系统、敌机生成逻辑等...

70,040

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧