#include<stdio.h> #include<string.h> #include<malloc.h> int main(){ int n; int status=scanf("%d", &n); int*p = (int*)malloc(sizeof(int) * n); if(p != NULL){//可读大小为 sizeof(int)*n个字节,但可能读了8个字节. 用的是p[k] 编译器误认为n可能取0 for(int k = 0; k < n; k++){ *(p+k) = k+1;//打印看到的仅仅是p的地址 /*printf("%d", *(p + k));*/ } int count =0; int cycle_j = 0; while(1){ for(int t = 0;t<n;t++){ if( *(p + t) != 0){ cycle_j++; if(cycle_j % 3 == 0){ *(p + t) = 0; cycle_j = 0; count++; } } } if(count == n - 1) break; } } if(p != NULL){ for(int k = 0; k < n; k++){ if(*(p + k) != 0) printf("%d", *(p + k));//可读大小为 sizeof(int)*n个字节,但可能读了8个字节. } free(p); p = NULL; } return 0; }
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:724 |
C语言训练-尼科彻斯定理 (C语言代码)浏览:509 |
淘淘的名单 (C语言代码)浏览:1167 |
【偶数求和】 (C语言代码)浏览:588 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:866 |
Tom数 (C语言代码)浏览:758 |
1048题解(读入回车问题)浏览:628 |
简单的a+b (C语言代码)浏览:691 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:599 |
删除数组中的0元素 (C语言代码)浏览:2145 |