fork download
  1. #include <stdio.h>
  2. #define DATAMAX 10
  3.  
  4. int main(void) {
  5. int n; /* 入力されたデータの数 */
  6. int number; /* 入力されたデータ */
  7. int data[DATAMAX]; /* 入力されたデータを格納する配列 */
  8. int *p;/* データ配列の先頭を指すポインタ */
  9. int i;
  10.  
  11. p=data;
  12.  
  13. /* n 個のデータを入力してもら、data[]に格納 */
  14. printf("好きな正の整数をいくつか入力してください。\n ");
  15. printf("終了するときはゼロを入力してください\n ");
  16. n = 0;
  17. scanf("%d",&number);
  18. while(number!=0) {
  19. *(p+n)=number;
  20. n++;
  21. if (n==DATAMAX){
  22. printf("データ数の上限%d を越えました。\n",DATAMAX);
  23. break;
  24. }
  25. scanf("%d",&number);
  26. }
  27. for ( i= n-1; i>=0; i--) {
  28. printf("%d ",*(p+i));
  29. }
  30. printf("\n 終了します。\n");
  31. return 0;
  32. }
Success #stdin #stdout 0s 5288KB
stdin
11
12
13
14
15
16
17
0
stdout
好きな正の整数をいくつか入力してください。
 終了するときはゼロを入力してください
 17 16 15 14 13 12 11 
 終了します。