求助c语言指针问题
从键盘为数组a输入数据,分别用指向数组元素的指针变量和指向一维数组的指针变量输入输出数组元素,求该数组每一行的最大值,将这些值保存在一维数组b中 #include <stdio.h>int main(void)
{
int a = {0} , b , i , j , k , * p1 = a , (* p2) = a ;
for(i = 0 ; i < 4 ; i ++) {
for(j = 0 ;j < 4 ; j ++) scanf("%d" , & a) ;
fflush(stdin) ;
}
//用二维数组指针寻找行最大值
for(i = 0 ; i < 4 ; i ++) {
b = * (* (p2 + i)) ;
for(j = 0 ; j < 4 ; j ++) {
if(* (* (p2 + i) + j) > b) b = * (* (p2 + i) + j) ;
}
}
for(i = 0 ; i < 4 ; i ++) printf("%d\n" , b) ;
for(i = 0 ; i < 4 ; i ++) b = 0 ;
//用一维数组指针寻找行最大值
for(i = 0 ; i < 16 ; i ++) {
if(! (i % 4)) {
b = * (p1 + i) ;
} else {
if(* (p1 + i) > b) b = * (p1 + i) ;
}
}
for(i = 0 ;i < 4 ; i ++) printf("%d\n" , b) ;
}
页:
[1]