永发信息网

C语言中使用大数组

答案:3  悬赏:30  手机版
解决时间 2021-01-04 01:05
  • 提问者网友:难遇难求
  • 2021-01-03 11:30
程序需要定义一个24Kbyte的数组,需要进行什么设置吗?
最佳答案
  • 五星知识达人网友:忘川信使
  • 2021-01-22 05:18
如果你要定义的是全局变量 那么不需要
全部回答
  • 1楼网友:由着我着迷
  • 2021-01-22 07:21
端 ma——a的最大容量,必须大于na n=12——求n的阶 p——求阶乘时的当前乘数 */ #include #define Ma 10000 int pa; int p=2; int memory_over=0; union data { unsigned long int b; struct {unsigned l:16; unsigned h:16; }m; }a[Ma]; unsigned int cashe; unsigned int carry; void main() { unsigned int n; void facto(unsigned int n); printf("Input n:"); scanf("%u",&n); a[0].b=1; facto(n); if(memory_over==0) {printf("the result include %dNO:\n",pa+1); printf("%u",a[pa--].m.l); for(;pa>=0;pa--) printf("%04u",a[pa].m.l); printf("\n"); } getch(); } } +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ void facto(unsigned int n) {void multiple(); pa=0; while(pa0) a[++pa].b=carry; }
  • 2楼网友:雪起风沙痕
  • 2021-01-22 06:22

数组a是二维字符型数组,在内存中的存放顺序是: [0,0][0,1][0,2][0,3][1,0][1,1][1,2][1,3],执行拷贝语句strcpy(a,"are")后,a[0,0] = 'a',a[0,1] = 'r',a[0,2] = 'e',该命令自动在a[0,3]中放入字符串结束符'\0'。同理,执行拷贝语句strcpy(a[1],"you")后,a[1,0] = 'y',a[1,1] = 'o',a[1,2] = 'u',该命令自动在a[1,3]中放入字符串结束符'\0'。执行语句a[0][3]='&'后,使原来两个字符串合并为一个,所以答应输出的结果是: are&you。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯