c语言问题,急急急

编写一个用户自定义函数,实现将一个数字字符串(如:“1234”)转换为数值型数据;然后编写一个带命令行参数的程序(Add)实现加法运算功能。
例子:
Add 123 456

1
main()
{
int a=5,b=-1,c;
c=adds(a,b);
printf(“%d”,c);
c=adds(a,b);
printf(“%d\n”,c);
}
int adds(int x,int y)
{
static int m=0,n=3;
n*=++m;
m=n%x+y++;
return(m); }
//首先static是静态变量不释放储存单元,值在下次使用时会继续保留,会被继续使用。
//第一次c=adds(a,b); 在子函数中x=5,y=-1,m=0,n=3.;n=n*(++m)=3,m=n%x+y++=3-1=2;
//第二次上一次后m=2,n=3,然后x=5,y=-1;n=n*(++m)=9;m=n%x+y++=4-1=3

2
define f(x) x*x
main()
{int a=6,b=2,c;
c=f(a)/f(b);
printf(“%d\n”,c);

//在函数中遇到f(x)就替换为x*x;x可以使其他例如a,b,c,d等等变量
//c=f(a)/f(b)=6*6/2*2=36同样的优先级,从右至左,三十六除二在乘以二,懂了吧!!

3
char *p1="abcd", *p2="ABCD", str[50]="xyz";
strcpy(str+2,strcat(p1+2,p2+1));
printf("%s",str);

//strcpy(s1,s2)该函数将s2的内容复制到s1中,返回指向char的指针.不管S1有什么内容都要被覆盖掉。
//strcat(s1,s2)该函数返回将S2的副本附加在S1尾部以后的S1指针。S2运行后不变。函数返回指向字符串S1的指针。
//p2+1后的内容为BCD,p1+2后的内容为cd,把BCD接在cd的后边,变成cdBCD
//然后进入交换函数strcpy,str+2后只有'z'和'/0',把'z'和'/0'用cdBCD替换后,str[]数组变成了xycdBCD
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-29
zf( )
{ int x,s;
char c;
while(c=gercha()!='\0')
{
x=c-49/ *1的ASCII值:49*/
s=s*10+x;
}
printf("转换后的值是%d",s);
}追问

错了

追答

zf( )
{
int x,s,i=0;
char ch[]="23614";
while(ch[i]!='\0')
{
x=c-48/ *0的ASCII值:48*/
s=s*10+x;
}
printf("转换后的值是%d",s);
}

相似回答