輸入描述:
第一行輸入一個整數(0≤N≤50)。
第二行輸入N個升序排列的整數,輸入用空格分隔的N個整數。
第三行輸入想要進行插入的一個整數。
輸出描述:
輸出為一行,N+1個有序排列的整數。
#include <stdio.h>
int main()
{
int N;
int num[N];
int a;
int i,m,n;
int * ptr_n = &N;
scanf("%d",&N);
for(i = 0; i < N; i++)
{
scanf("%d",&num[i]);
}
scanf("%d",&a);
*ptr_n = N + 1;
for(i = 0; i < (N + 1); i++)
{
if(a > num[i] && a < num[i + 1])
{
m = i + 1;
break;
}
}
for(i = (N + 1); i > m; i--)
{
n = num[i];
num[i] = num[i - 1];
num[i - 1] = n;
}
num[m] = a;
for(i = 0; i < (N + 1); i ++)
{
printf("%d\t",*(ptr_num + i));
}
return 0;
}
思路比較混亂,幫忙看看有哪些問題
如果不用指標又該怎么寫?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/253620.html
標籤:C語言
上一篇:回文數(題目沒給結束回圈的標志,在PTA運行超時,怎么辦???)
下一篇:float與double
