如题所述
é¦å
ä¸¥æ ¼æ¥è¯´ ä¸å¯è½åºç°ä»»æé¿åº¦ã å
åæ¯æéç è¶
åºä¸å®é¿åº¦åï¼ä¸å¯è½åçä¸ï¼è½ç¶è¿ä¸ªå¼å¯è½æ¯è¶
级大çï¼ä½æ»æé度ã
å ¶æ¬¡ï¼æè°çä»»æé¿åº¦ï¼å ¶å®å°±æ¯å¯åé¿æ°ç»ã
é£ä¹ï¼å¨äºå ä¸ç¥éæ°ç»è§æ¨¡ä¸ï¼å°±è¦é è¾å ¥ï¼æ¥ç¡®å®æ°ç»å¤§å°äºã
éç¹å¨äºï¼è¦å¼è¾å¤å¤§çæ°ç»æ¥å
ä¸è¬æè¿ä¹å ç§æ åµ
1 ç´æ¥å¼ä¸ä¸ªè¶³å¤å¤§çã æ¯å¦ è½ç¶ä¸ç¥éæå¤å¤§ï¼ä½æ大ä¸è¶ è¿1000个ï¼é£å°±å¯ä»¥ç´æ¥å¼ä¸ª1000å ç´ çæ°ç»ã
2 å¨æåé ï¼ ä½¿ç¨mallocå¨æåé å åã
å½åºç°å¯è½çä¸å¤æ åµï¼ç¨reallocéæ°åé ã
å ¶æ¬¡ï¼æè°çä»»æé¿åº¦ï¼å ¶å®å°±æ¯å¯åé¿æ°ç»ã
é£ä¹ï¼å¨äºå ä¸ç¥éæ°ç»è§æ¨¡ä¸ï¼å°±è¦é è¾å ¥ï¼æ¥ç¡®å®æ°ç»å¤§å°äºã
éç¹å¨äºï¼è¦å¼è¾å¤å¤§çæ°ç»æ¥å
ä¸è¬æè¿ä¹å ç§æ åµ
1 ç´æ¥å¼ä¸ä¸ªè¶³å¤å¤§çã æ¯å¦ è½ç¶ä¸ç¥éæå¤å¤§ï¼ä½æ大ä¸è¶ è¿1000个ï¼é£å°±å¯ä»¥ç´æ¥å¼ä¸ª1000å ç´ çæ°ç»ã
2 å¨æåé ï¼ ä½¿ç¨mallocå¨æåé å åã
å½åºç°å¯è½çä¸å¤æ åµï¼ç¨reallocéæ°åé ã
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-03-02
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i=0,n=1;
int *a;
a=malloc(n*sizeof(int));
do
{
scanf("%d",&a[i++]);
realloc(a,++n*sizeof(int));
}while(getchar(a[i-1])!='\n');
for (i=0;i<n-1;i++)
printf("%d ",a[i]);
printf("\n");
}
#include<stdlib.h>
int main()
{
int i=0,n=1;
int *a;
a=malloc(n*sizeof(int));
do
{
scanf("%d",&a[i++]);
realloc(a,++n*sizeof(int));
}while(getchar(a[i-1])!='\n');
for (i=0;i<n-1;i++)
printf("%d ",a[i]);
printf("\n");
}
第2个回答 2016-12-12
办法不少,正宗的是用链表。