我初学C,我现在学到了数组,我可以将一个数组先定义好它的个数与每个数的值,然后让它返回另一个函数中去让这个数组中的每个值逆序输出,我是这么写的,大家看对吗
#include <stdio.h>
void change(int array[],int n){
int i;
for (i=n-1;i>=0;i--){
printf("%3d",array[i]);
}
}
void main(){
int array[3]={1,2,3},j;
for (j=0;j<3;j++){
}
change(array,j);
}
我上面的这个可以实现,我想问大家的就是这个格式是否正确,还有就是如果我想从键盘输入数组中的许多数,也就是不确定数组的个数,而由你键盘上输入的个数来决定数组的个数,先定义为n,还有一个就是我的那个chang(array,j)就应该放在循环的外面吗,我有点疑惑,请高手具体讲讲,多谢了!
----------------解决方案--------------------------------------------------------
void main()
{
int array[3]={1,2,3};
change(array, 3);
}
试试看?
----------------解决方案--------------------------------------------------------
for (j=0;j<3;j++){
}
怎么不直接把J赋为3个,这个循环什么都不做,你调用的函数本来就在循环外了。
你实现你说那个可以这样:
void main(){
int array[100],j,n;
printf("你想输入好多个数?\n");
scanf("%d",&n);
for (j=0;j<n;j++){
scanf("%d",&array[j]);
}
change(array,j);
}
----------------解决方案--------------------------------------------------------
这样是先考虑好要输入几个数字,在进行输入,
能不能先不考虑要输入几个数字,在进行输入时,想到哪停就哪停,
自己不去计算输入的个数.而是让计算机来记数.
----------------解决方案--------------------------------------------------------
哦,我有点理解了谢谢上面这几位大哥
----------------解决方案--------------------------------------------------------
理解什么了,
[此贴子已经被作者于2006-8-17 10:00:44编辑过]
----------------解决方案--------------------------------------------------------
上面这位大哥,我觉得你虽然一开始不能确定要输入多少个数,但是你在定义数组的时候完全可以将它定义的足够大啊,定义的范围尽量大于你想象的范围,呵呵!这是我个人的想法,不过,我觉得要是能定义时候直接定义成array[n]就好了,是吧?
----------------解决方案--------------------------------------------------------
输入的数组不确定,可以无限大??用链表可能可以。
----------------解决方案--------------------------------------------------------
用链表是可以的,
----------------解决方案--------------------------------------------------------
各位大哥,不好意思,我刚学到数组,至于你们说的什么链表是什么东西啊,能先给我讲讲 吗,多谢了!
----------------解决方案--------------------------------------------------------