键盘输入6个整数存到二维数组a[2][3]中,要输出它们,请填空:数组
int main()函数
{spa
int a[2][3], i, j;3d
_____________; //定义一个指向变量的指针变量p1并赋初值指针
_____________; //定义一个指向一维数组的指针变量p2并赋初值ip
for(i=0;i<=1;i++)io
for(j=0;j<=2;j++)class
scanf("%d", &a[i][j]);后台
for(i=0;i<=1;i++)变量
for(j=0;j<=2;j++)
_____________________; //利用p1输出每一个整数
printf("\n");
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
_____________________; //利用p2输出每一个整数
printf("\n");
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
_____________________; //利用数组名a输出每一个整数,用指针法,不要用下标法
printf("\n");
return 0;
}
输入6个整数
按要求输出数据,每一个数据占3位
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[2][3], i, j;
int *p1=a[0]; //定义一个指向变量的指针变量p1并赋初值
int (*p2)[3]=a; //定义一个指向一维数组的指针变量p2并赋初值
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
scanf("%d", &a[i][j]);
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
printf("%3d",*(p1+3*i+j)); //利用p1输出每一个整数
printf("\n");
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
printf("%3d",*(*p2+3*i+j)); //利用p2输出每一个整数
printf("\n");
for(i=0;i<=1;i++)
for(j=0;j<=2;j++)
printf("%3d",a[i][j]); //利用数组名a输出每一个整数,用指针法,不要用下标法
printf("\n");
return 0;
}
设有以下主函数:
int main()
{ int a[2][3];
__________; //定义指针变量并赋初值
__________ ; //输入a[0][0]的值,利用数组名表示a[0][0] (用下标法)
__________ ; //输入a[0][1]的值,利用数组名表示a[0][1] (用指针法)
__________ ; //输入a[0][2]的值,利用指针变量表示a[0][2] (用下标法), 此处的指针变量是指向变量的
__________ ; //输入a[1][0]的值,利用指针变量表示a[1][0] (用指针法), 此处的指针变量是指向变量的
__________ ; //输入a[1][1]的值,利用指针变量表示a[1][1] (用下标法), 此处的指针变量指向一维数组
__________ ; //输入a[1][2]的值,利用指针变量表示a[1][2] (用指针法), 此处的指针变量指向一维数组
__________; //调用sub函数,使每一个数据翻番
for( ___________) //输出全部数据,要求用最快的方法
____________________;
return 0;
}
请完善主函数,并写出sub函数的定义。
共输入6个整数
输出通过被调函数处理后的数据
#include <stdio.h>
#include <stdlib.h>
void sub(int *p)
{
int i;
for(i=0;i<6;i++)
{
*p=*p*2;
p++;
}
}
int main()
{ int a[2][3];
int *p=a[0]; //定义指针变量并赋初值
int i;
scanf("%d",&a[0][0]); //输入a[0][0]的值,利用数组名表示a[0][0] (用下标法)
scanf("%d",&a[0][1]) ; //输入a[0][1]的值,利用数组名表示a[0][1] (用指针法)
scanf("%d",&a[0][2]); //输入a[0][2]的值,利用指针变量表示a[0][2] (用下标法), 此处的指针变量是指向变量的
scanf("%d",&a[1][0]); //输入a[1][0]的值,利用指针变量表示a[1][0] (用指针法), 此处的指针变量是指向变量的
scanf("%d",&a[1][1]); //输入a[1][1]的值,利用指针变量表示a[1][1] (用下标法), 此处的指针变量指向一维数组
scanf("%d",&a[1][2]); //输入a[1][2]的值,利用指针变量表示a[1][2] (用指针法), 此处的指针变量指向一维数组
sub(*a); //调用sub函数,使每一个数据翻番
for( i=0;i<6;i++) //输出全部数据,要求用最快的方法
printf("%d ",*(p+i));
return 0;
}
主函数代码以下:
int main()
{
int i,s[2][3];
for(i=0;i<=5;i++)
scanf("%d",*s+i);
sub(s);
for(i=0;i<=5;i++)
printf("%d ",*(*s+i));
return 0;
}
其中sub()函数的功能是将数组s中的全部数据都变为2倍,主函数已在后台,请编写sub函数。系统会自动将主函数代码添加到你提交的代码以后。
输入6个整数
输出最终的数据
#include <stdio.h>
#include <stdlib.h>
void sub(int (*p)[3])
{
int i;
int j;
for(i=0;i<6;i++)
{
*(*p+i)=*(*p+i)*2;
}
}
int main()
{
int i,s[2][3];
for(i=0;i<=5;i++)
scanf("%d",*s+i);
sub(s);
for(i=0;i<=5;i++)
printf("%d ",*(*s+i));
return 0;
}