c输入十个数字根据个数打出不同数目的星星

来源:百度知道 编辑:UC知道 时间:2024/06/04 07:15:17
高手看下下面哪里有问题。。谢谢(能不能在打星星的时候加个function)
#include<stdio.h>
int main(int argc, char * argv[]){
int array[10];
int n,i;
for(i=0;i<10;i++){
scanf("%d",&array[i]);
}
for(i=0;i<10;i++){
array[i]=n;
for(i=0;i<n;i++){
printf("*");
}
printf("\n");
}
}

#include<stdio.h>
int main(int argc, char * argv[]){
int array[10];
int n,i,j;//多声明一个变量j
for(i=0;i<10;i++){
scanf("%d",&array[i]);
}
for(i=0;i<10;i++){
n=array[i];//这里是你原来失误的地方
for(j=0;j<n;j++){//修改i为j,要不然你的程序会有问题的
printf("*");
}
printf("\n");
}
}

以下是加入function后的程序:

#include<stdio.h>
int main(int argc, char * argv[])
{
void function(int *array);//声明函数
int array[5];
int i;
for(i=0;i<5;i++)
scanf("%d",&array[i]);
function(array);

}
void function(int *arr)
{
int i,j,n;
for(i=0;i<5;i++){
n=*(arr+i);
for(j=0;j<n;j++){
printf("*");
}
printf("\n");
}
}

运行效果:
10
2
5
6
8
**********
**
*****
******
********
请按任意键继续.