在C语言中,后面的小括号是函数的标志,所以,invert(s+1)是函数调用语句。
成都创新互联公司服务项目包括宁晋网站建设、宁晋网站制作、宁晋网页制作以及宁晋网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,宁晋网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到宁晋省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
函数名是invert,括号内的s+1是函数的参数,同时也说明这个函数只需要一个参数。
具体函数的作用,要看函数的内部结构,在此无法判断。
有什么问题请留言。
void invert (char str [] )
{
int i,j, k;
for(i=0,j=strlen(str)-1;ij;i++,j--)
{
k=str[i];
str[i]=str[j];
str[j]=k;
}
}
invert(int x[], int n)
{
int *p = x, *q = x + (n - 1);
int tmp;
for (; p q; ++p, --q)
{
tmp = *p;
*p = *q;
*q = tmp;
}
}
9号空格填:newNum*10
10号空格填:%
11号空格填:num/10
12空格你没有填错
这样改就就行了
unsigned invert(unsigned x,int p,int n)
{
return (x ~((~(~0 n)) p) |((~x) ((~(~0 n)) p)) );
}
(x ~((~(~0 n)) p)
是将x的n位都变成0
((~xp) (((~0 n)) p)) )
这个就不是对n 位取反了
这样才是((~x) ((~(~0 n)) p)) );
#includestdio.h
#define N 20
void invert(char *s) { char *p,*q,c;
p=q=s; while ( *q ) q++; q--; //p指向首字符,q指向尾字符
while ( pq ) { c=*p; *p=*q; *q=c; p++; q--; }
}
void main() { char s[N][256]; int i,n;
scanf("%d",n); for ( i=0;in;i++ ) gets(s[i]);
for ( i=0;in;i++ ) invert(s[i]);
for ( i=0;in;i++ ) printf("%s\n",s[i]);
}