m0_60931488 2022-06-15 16:25 采纳率: 100%
浏览 24
已结题

关于一维数组与二维数组的输入输出问题

关于一维数组与二维数组的输入输出问题
写了一个排序的代码但我发现了一个问题

#include <bits/stdc++.h>
using namespace std;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main() {
int maxn[100];
int n;
int c=0;
int a[100];
scanf("%d", &n);
for(int i=1;i<=n;i++){
scanf("%d", &a[i]);
}
for(int i=1;i<=n;i++){
maxn[i]=i;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n-1;j++){
if(a[maxn[j]]<a[maxn[j+1]]){
c=maxn[j];
maxn[j]=maxn[j+1];
maxn[j+1]=c;
}
for(int q=1;q<=n;q++){
cout<<a[maxn[q]]<<' ';
}
cout<<endl;
}
}
return 0;
}

上面的代码能正常输出但把啊a[x]换成a[1][x]后就输出不了

#include <bits/stdc++.h>
using namespace std;

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main() {
int maxn[100];
int n;
int c=0;
int a[1][100];
scanf("%d", &n);
for(int i=1;i<=n;i++){
scanf("%d", &a[1][i]);
}
for(int i=1;i<=n;i++){
maxn[i]=i;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n-1;j++){
if(a[1][maxn[j]]<a[1][maxn[j+1]]){
c=maxn[j];
maxn[j]=maxn[j+1];
maxn[j+1]=c;
}
for(int q=1;q<=n;q++){
cout<<a[1][maxn[q]]<<' ';
}
cout<<endl;
}
}
return 0;
}

  • 写回答

3条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 6月23日
      • 已采纳回答 6月15日
      • 创建了问题 6月15日

      悬赏问题

      • ¥20 51单片机实训实验报告
      • ¥15 C# 循环读写数据中途突然变慢
      • ¥15 用Java实现双端队列
      • ¥150 ID3决策树实现分类
      • ¥15 multisim10安装后,找不到NI License Manager的程序来安装许可证
      • ¥15 C++银行卡系统 Help!
      • ¥15 R语言数据分析的相关问题
      • ¥15 模型导入SP后贴图纹理只有一个,拆了四张UV的,怎么解决?
      • ¥15 检索带order by 非常慢
      • ¥20 python 爬虫 token 加密方式