
正文
c语言函数指针题目 c语言指针函数调用例子
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
C语言指针编程题,求大神解答
#include "stdio.h"
void fun(int a[][6],int n,int m,int *odd,int *even)
{int i,j;
*odd=*even=0;
for(i=0; in; i++)
for(j=0; jm; j++)
a[i][j]%2?*odd+=a[i][j]:*even+=a[i][j];
}
int main()
{ int n,m,i,j,a[5][6],odd,even;
for(i=0; i5; i++)
{ for(j=0; j6; j++)
{ a[i][j]=i*6+j+1;
printf("%4d",a[i][j]);
}
printf("\n");
}
fun(a,5,6,odd,even);
printf("奇数之和=%d\n偶数之和=%d\n",odd,even);
return 0;
}
相关问答
Q1: C语言指针,求题目详解
您好,很高兴回答您的问题。
您的这个程序,主函数中的第一句话表示p1 和str都是数组名,指向数组中的第一个元素。p2是指针变量,指向的是字符型数据。第二句话表示p2这个指针变量指向的是包含有abc等三个元素的字符型数组。strcpy(str+1,strcat(p1,p2))表示现将p2所指向的内容添加到p1这个数组的结尾处,并且存放在p1中,那么做完之后p1里的内容为abcabc。接下来执行strcpy(str+1,p1)表示把此时p1中的内容拷贝到str中,是从str+1这个位置开始。因为str是数组名,指向的是数组的第一个元素,那么str+1,就是从str数组的第二个元素位置开始,所以最终得到的结果就是aabcabc。
以上就是我对这个问题的回答,希望您能帮助到您。
Q2: C语言指针选择题
BCD很明显是错误的
B ,数组名不是变量
C a+1和*(a+1)仅数值上相同 a+1类型是int(*)[3], *(a+1)是int*
D 数组当函数参数时退化为指针,所以指针也可以当实参,而不仅仅是数组
那就只能选A了
Q3: C语言代码题目(运用指针):写一个函数,将三位整数的个、十、百位分别拆分出来,反向输出?
#includestdio.h
void fun1(int *n)
{printf("%d %d %d\n",*n%10,*n/10%10,*n/100);
}
void fun2(int *n)
{int i,j,a[10];
for(i=0;*n;*n/=10)
a[i++]=*n%10;
for(j=0;ji;j++)
printf("%d ",a[j]);
printf("\n");
}
int main()
{int n,m;
scanf("%d%d",n,m);
fun1(n);
fun2(m);
return 0;
}
关于c语言函数指针题目和c语言指针函数调用例子的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






