新聞中心
請(qǐng)編寫函數(shù)實(shí)現(xiàn)將一個(gè)數(shù)值插入到數(shù)組中適當(dāng)?shù)奈恢?,使新?shù)組按降序排列,并將插入的位置輸出到屏幕上。 說明:1)原數(shù)組大小和數(shù)值由鍵盤輸入,動(dòng)態(tài)創(chuàng)建數(shù)組; 2)插入的數(shù)值由鍵盤輸入。3)如果插入數(shù)據(jù)與原數(shù)組中某數(shù)據(jù)相同,則插在該數(shù)據(jù)之前。
10 1 4 5 2 3 6 7 8 10 9
11
輸出樣例1
在C或C++里,有時(shí)候我們要定義的數(shù)組的長度是不定的,所以要?jiǎng)討B(tài)地創(chuàng)建數(shù)組,也就是在運(yùn)行的時(shí)候動(dòng)態(tài)分配內(nèi)存。
對(duì)于一維數(shù)組p[n]的動(dòng)態(tài)創(chuàng)建:
char *p=new char[n];
int main()
{
? int n; cin >>n;
? int* a = new int[n];
}
釋放動(dòng)態(tài)內(nèi)存
delete[]p;
如何動(dòng)態(tài)創(chuàng)建數(shù)組
C++動(dòng)態(tài)數(shù)組創(chuàng)建
自己探索
去除*后正常
錯(cuò)誤代碼;沒考慮輸入的數(shù)值為最小值的情況
#include#include#include
using namespace std;
bool cmp(int a, int b) {
return a >b;
}
int main() {
int n;
cin >>n;
int* a = new int[n];
for (int i = 0; i< n; ++i) {
cin >>a[i];
}
sort(a, a + n, cmp);
int x;
cin >>x;
for (int i = 0; i< n; ++i) {
if (x == a[i]||x>a[i]) {
cout<< i;
break;
}
}
}
正確代碼
#include#include#include
using namespace std;
bool cmp(int a, int b) {
return a >b;
}
int main() {
int n;
cin >>n;
int* a = new int[n];
for (int i = 0; i< n; ++i) {
cin >>a[i];
}
sort(a, a + n, cmp);
int x;
int v = 0;
cin >>x;
for (int i = 0; i< n; ++i) {
if (x == a[i]||x>a[i]) {
cout<< i+1;
++v;
break;
}
}
if (v == 0) {
cout<< n + 1;
}
}
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前題目:動(dòng)態(tài)創(chuàng)建數(shù)組-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://fisionsoft.com.cn/article/ghhdh.html