程序填空题:利用指针求数组各行的和
本题目要求利用fun函数求数组给行的和(填空时不允许出现空格字符)。
c++
#include "stdio.h"
void fun(); //形参采用带*的指针变量定义形式
int main()
{
int a[3][3],i,j,b[3];
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
fun(a,b);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%4d",a[i][j]);
printf("%4d\n",b[i]);
}
return 0;
}
void fun()
{
int tmp=0,i,j;
for(i=0;i<3;i++)
{ ;
for(j=0;j<3;j++)
{
tmp=tmp+*;
;
}
*=tmp;
}
}
答案:
第1空:int (*a)[3],int *b
第2空:int (*a)[3],int *b
第3空:tmp=0
第4空:(*(a+i)+j)
第5空:(b+i)
c++
#include "stdio.h"
void fun(); //形参采用带*的指针变量定义形式
int main()
{
int a[3][3],i,j,b[3];
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
fun(a,b);
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%4d",a[i][j]);
printf("%4d\n",b[i]);
}
return 0;
}
void fun()
{
int tmp=0,i,j;
for(i=0;i<3;i++)
{ ;
for(j=0;j<3;j++)
{
tmp=tmp+*;
;
}
*=tmp;
}
}
答案:
第1空:int (*a)[3],int *b
第2空:int (*a)[3],int *b
第3空:tmp=0
第4空:(*(a+i)+j)
第5空:(b+i)