| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1608 人关注过本帖
标题:难道n没有得到NUM的值吗?
取消只看楼主 加入收藏
wxz11191975
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2011-6-20
结帖率:85.29%
收藏
已结贴  问题点数:8 回复次数:1 
难道n没有得到NUM的值吗?
#include <stdio.h>
#include <stdlib.h>
 
#define NUM 10

void arrout( int w[],int m)
{int k;
 for (k=0;k<m;k++)printf("%d  ",w[k]);
 printf("\n");
}

int getindex(int n)
{int i;
 do{
     printf("\nEnter the index[0<=i<%d]:",n);
     scanf("%d",&i);}
     while(i<0||i>n-1);
 return i;
}

int arrdel(int *w,int n,int k)
{int i;
 for (i=k;i<n-1;i++)w[i]=w[i+1];
 n--;return n;
}

main()
{int n=NUM,d;
 int a[NUM]={23,55,76,545,5767,4242,45445,464,232};
  printf("output primary data:\n");
 arrout(a,n);
 d=getindex(n);
 n=arrdel(a,n,d);
 printf("output the data after delete:\n");
 arrout(a,n);
 system("PAUSE");   
  return 0;
}
这样子程序是可以运行出要的结果来。可是,若是把main函数里的第二行改成int a[n]={23,55,76,545,5767,4242,45445,464,232};
机器就显示出错信息。为什么呢,我前面不是把NUM的值赋给了n了吗?n 为什么没有得到NUM的值的呢?

搜索更多相关主题的帖子: include return include return 
2011-07-01 22:56
wxz11191975
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2011-6-20
收藏
得分:0 
谢谢各位指点
2011-07-03 07:41
快速回复:难道n没有得到NUM的值吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017593 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved