嗨我是c的初学者,现在我的程序有两个问题谢谢你的帮助
#include<stdio.h>
int reverse (int x)
main()
{
int x;
int v,z,t,a,i=1;
printf("enter your number:\n");
scanf("%u",&x);
t=x;
while(t>0)
{
t=t/10;
i++;
}
printf("%d\n",i-1);
a=(i-1)%2;
if(a=1)
{
x=x/10;
z=x%10;
v=10*(int reverse (int x))+z
printf("%d",v);
printf("%d",x);
}
else
printf("%d",int reverse (int x));
}
int reverse(int x);
{
if(x>=10)
reverse(n/10);
printf("%d",n%10);
return;
}
here are my errors:
[错误] C:\ Users \ Administrator \ Documents \ C-Free \ Temp \ Untitled5.cpp:3:错误:预期的初始化程序在&#34; main&#34; [错误] C:\ Users \ Administrator \ Documents \ C-Free \ Temp \ Untitled5.cpp:26:错误:在{&#39; {&#39;之前预期的不合格ID令牌
my compiler is c free 5.0
感谢
答案 0 :(得分:0)
在函数原型定义中缺少分号
int reverse (int x);
^
v=10*(int reverse (int x))+z
不是如何调用函数,你有这样的调用
v=10*(reverse(x))+z; //a missing semicolon here too
你的函数reverse()
没有返回任何内容。
int reverse(int x);
{
if(x>=10)
reverse(n/10);
printf("%d",n%10);
return; //Return whatever int you want to here
}
请阅读一些优秀的Basic C编程书。