c语言输出一个数组
① 急急!!!如何用c语言输入和输出一个二维数组
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[2][2];
int i,j;
for (i=0;i<2;i++)
{
for (j=0;j<2;j++)
{
scanf("%d ",&a[i][j]);
}
}
for(i=0;i<2;i++)
for(j=0;j<2;j++)
printf("%d",a[i][j]);
return 0;
}
运行成功
② C语言,输出一个数组
#include
<stdio.h>
#include
<stdlib.h>
int
main()
{
int
r;
int
c;
int
**array;
int
i,
j;
scanf("%d%d",
&r,
&c);
/*分配内存*/
for(i
=
0;
i
<
r;
i++)
{
array[i]
=
(int*)malloc(c);
}
/*输入数组*/
for(i
=
0;
i
<
r;
i++)
{
for(j
=
0;
j
<
c;
j++)
{
scanf("%d",
&array[i][j]);
}
}
/*输出数组*/
for(i
=
0;
i
<
r;
i++)
{
for(j
=
0;
j
<
c;
j++)
{
printf("%d
",
array[i][j]);
}
printf("\n");
}
getchar();
return
0;
}
③ c语言怎么输出一个我定义的数组
提供两个办法:
1.在主调函数中建立数组,将数组指针传给自定义的函数,处理后主调函数中的数组值也就变化了。
void fun(int a[],int n){
........
}//其中a[]就是要输入的数组,n是这个数组的长度。
void main(void){
int arry[10]={1,2,3,4,5,6,7,8,9,0};
fun(arry,10);
......
}
2.可以在主调函数中建立数组并把首地址和长度传给函数,在函数中创建一个动态数组,处理完后把动态数组的首地址返回主调函数,最后在主调函数中释放动态申请的内存。
int *fun(int a[],int n){
int *p=(int *)malloc(n*sizeof(int));//申请内存.
if(!p){//判断是否申请成功.
printf("failure..骇笭粪蝗荼豪讽通釜坤.");
exit(0);
}
memcpy(p,a,n*sizeof(int));//把主调函数的数组拷贝过来.
......
return p;
}
void main(void){
int arry[10]={1,2,3,4,5,6,7,8,9,0},*ptmp;
ptmp=fun(arry,10);
......
free(ptmp);//释放申请的空间.
}
数组的内容是不能一一传给函数的……
④ c语言,用printf输出一维数组的语句是什么
c语言,用printf输出一维数组的语句是printf ("%s", a),具体输出一维数组的操作步骤如下:
1、首先我们打开Visual Studio 2010软件,新建一个项目。
⑤ c语言中能不能用printf函数直接输出数组如printf("%d",a[3][3]);
限制在C语言中,利用printf直接输出数组是不可以的。
但是你的做法是可以的。只是问题出在你数组使用越界了。
解释一下:
printf不能直接用来输出数组。
例如:
#include<stdio.h>
intmain(){
inta[3]={1,2,3};
inti;
for(i=0;i<3;i++)
printf("%d",a);
}
是错误的
所以要是输出数组的话,必须要借助其他的语句输出,要一个一个地输出,例如for语句的循环输出。
例如:
#include<stdio.h>
intmain(){
inta[3]={1,2,3};
inti;
for(i=0;i<3;i++)
printf("%d",a[i]);
}
但是你这样的做法是可以:
因为你写的a[3][3]实际上已经指定了这个数字在这个二维数组中的横坐标和纵坐标,相当于一个int型的数据。但是不过你数组越界了。
额外引申一下:直接用scanf输入一个数组的量可以么?
#include<stdio.h>
int main(){
char a[3];
scanf("%c",&a);
int i;
for(i=0;i<3;i++)
printf("%c",a[i]);
}
这样输入3个字符,只能把输入的第一个字符放进a数组里面。因为a就是这个数组的地址,同时也表示这个数组的第一个。&a可以给数组的第一个放进一个字符,但是后面的就无能为力的。
代码均在Devc++测试。
⑥ c语言数组输出
/*
参数说明
arr:必需的。要输出的数组指针。
arrsize:必需的。要输出的数组大小。该数字必须为偶数,否则无法输出。
*/
#include<stdio.h>
voidprintintarr(int*arr,intarrsize)
{
inti;
if(arrsize%2==0)
for(i=0;i<arrsize;i+=2)
{
printf("(%d,%d)",arr[i],arr[i+1]);
if(i!=arrsize-2)
printf(",");
}
}
⑦ C语言如何输出数组最简单的
for(i=0;i<n;i++)
printf("%d",a[i])
⑧ C语言中如何直接输出一个二维数组
c语言中直接输出一个二维数组是用数组来访问输出的,例子:
#include<stdio.h>
#defineM4
#defineN3
voidmain()
{
inta[M][N],i,j;
for(i=0;i<M;i++)
for(j=0;j<N;j++)
a[i][j]=3*i+j;
for(i=0;i<M;i++)
{ for(j=0;j<N;j++)
printf("%d ",a[i][j]);//直接用数组来访问
printf(" ");
}
}
除了可以直接访问,也可以用指针来访问,用指针指向该数组,便可进行对数组的读写操作。
运行结果图:
⑨ c语言如何一次性输出整个数组
对于字符数组可以一次性输出整个数组中的字符,但是对于数值类型的数组,只能利用循环进行逐个输出了。
下面举例说明如下:
chara[]="abcd";//定义一个字符类型的数组,并进行初始化
intb[]={2,3,4,1,9}//定义一个int型的数组,并进行初始化;
inti;
printf("%s",a);//一次性输出整个字符数组中的所有字符
for(i=0;i<5;i++)//利用for循环对int数组中的数字进行逐个输出
printf("%d",b[i]);
⑩ C语言如何用printf打印数组问题
#include<stdio.h>//增加头文件printf()用到
intmain()
{
inta[5]={1,2,3,8,9};
//printf("%d",a[5]);//a[5]表示数组a的第六个元素,越界了
//整型数组,不能一下子简单输出出来,必须用循环
inti;
for(i=0;i<5;i++)
printf("%d",a[i]);
printf(" ");
getch();
return0;
}
(10)c语言输出一个数组扩展阅读
包含需要输出的数据,可以是常量(字符常量、数字常量、字符串常量),变量,以及运算式。此处的数据应当与前面的format中的格式控制符一一对应(如果不对应会产生错误)。 例如:
inta=1;
floatb=1.0;charstr[12]="HelloWorld";
printf("Thisisanexampleofprintf: ");printf("ais%d,bis%f,anda+b=%f",a,b,a+b);
printf("Iwanttosay,%s",str);