#include<stdio.h>
int main()
{
int a, b, c;
int s[100], p[100], q[100];
scanf_s("%d %d %d", &a, &b, &c);
for (int i = 0; i < a; i++)
{
scanf_s("%d", &s[i]);
int max1 = s[0];
for (int i = 0; i < a; i++)
{
for (int t = 0; t < a - i&&i+1<a; t++)
{
if (s[i] <= s[i + 1])
max1= s[i + 1];
s[i + 1] = s[i];
s[i] = max1;
}
}
}
for (int i = 0; i < a; i++)
{
printf("%d", s[i]);
}
return 0;
}
uj5u.com熱心網友回復:
樓主要實作什么?并且樓主的i在兩個回圈里,并且第二層回圈還在第一層回圈里。
#include<stdio.h>
int main()
{
int a, b, c;
int s[100], p[100], q[100];
scanf_s("%d %d %d", &a, &b, &c);
if (a > 100)
a = 100;
for (int i = 0; i < a; i++)
{
scanf_s("%d", &s[i]);
}
int max1 = s[0];
for (int i = 0; i < a; i++)
{
for (int t = 0; t < a - i&&i+1<a; t++)
{
if (s[i] <= s[i + 1])
max1= s[i + 1];
s[i + 1] = s[i];
s[i] = max1;
}
}
for (int i = 0; i < a; i++)
{
printf("%d", s[i]);
}
return 0;
}
供參考~
uj5u.com熱心網友回復:
目的是實作由大到小排序
uj5u.com熱心網友回復:
#include<stdio.h>
int main()
{
int a, b, c;
int s[100], p[100], q[100];
scanf_s("%d %d %d", &a, &b, &c);
if (a > 100)
a = 100;
for (int i = 0; i < a; i++)
{
scanf_s("%d", &s[i]);
}
int max1;
for (int i = 0; i < a; i++)
{
max1 = i;
//for (int t = i; t < a - i&&i+1<a; t++)
for (int t = i; t < a; t++)
{
if (s[max1] <= s[t])
max1 = t;
}
if (max1 != i) {
int tmp = s[i];
s[i] = s[max1];
s[max1] = tmp;
}
}
for (int i = 0; i < a; i++)
{
printf("%d", s[i]);
}
return 0;
}
#include<stdio.h>
int main()
{
int a, b, c;
int s[100], p[100], q[100];
scanf_s("%d %d %d", &a, &b, &c);
if (a > 100)
a = 100;
for (int i = 0; i < a; i++)
{
scanf_s("%d", &s[i]);
}
int max1;
for (int i = 0; i < a; i++)
{
max1 = i;
//for (int t = i; t < a - i&&i+1<a; t++)
for (int t = i; t < a; t++)
{
if (s[max1] <= s[t])
max1 = t;
}
if (max1 != i) {
int tmp = s[i];
s[i] = s[max1];
s[max1] = tmp;
}
}
for (int i = 0; i < a; i++)
{
printf("%d", s[i]);
}
return 0;
}
#include<stdio.h>
int main()
{
int a, b, c;
int s[100], p[100], q[100];
scanf_s("%d %d %d", &a, &b, &c);
if (a > 100)
a = 100;
for (int i = 0; i < a; i++)
{
scanf_s("%d", &s[i]);
}
int max1;
for (int i = 0; i < a; i++)
{
max1 = i;
//for (int t = i; t < a - i&&i+1<a; t++)
for (int t = i; t < a; t++)
{
if (s[max1] <= s[t])
max1 = t;
}
if (max1 != i) {
int tmp = s[i];
s[i] = s[max1];
s[max1] = tmp;
}
}
for (int i = 0; i < a; i++)
{
printf("%d", s[i]);
}
return 0;
}
眾所周知,C ++的學習曲線陡峭,但是花時間學習這種語言將為您的職業帶來奇跡,并使您與其他開發人員區分開。您會更輕松地學習新語言,形成真正的解決問題的技能,并在編程的基礎上打下堅實的基礎。 C ++將幫助您養成良好的編程習慣(即清晰一致的編碼風格,在撰寫代碼時注釋代碼,并限制類內部的可見性),并且由 ......
值傳遞不會改變本身,參考傳遞(如果傳遞的值需要實體化到堆里)如果發生修改了會改變本身。 1.基本資料型別都是值傳遞 package com.example.basic; public class Test { public static void main(String[] args) { int ......