程序运行
#include <stdio.h>sub(int *s,int n)
{
int i,j=0;
for(i=0;i<n;i++)
if(*(s+i)%2!=0) s=s;
n=j;
}
int main()
{
int a={11,12,13,14,15,16,17,18,19,20},n=10,i;
sub(a,n);
for(i=0;i<n;i++)
printf("%d,",a);
return 0;
}
这个程序怎么运行的?if那看不懂 不明白你这代码有啥意义?这是你自己写的吗? s = s; 和 n = j; 这两句想要干什么?
要么给出题目要求,要么在这两句上给出注释,才好帮助你解决问题 if(*(s+i)%2!=0) s=s;
意思是如果数组元素不能整除2,则s=s.
*(s+i)相当于s if(*(s+i)%2!=0)
这一行是判断这个数组的第i个元素对2取余数是否为0。
*(s+i)就相当于s [ i ],通过解引用指针来访问数组内容
页:
[1]