C语言:未定义的符号‘mian'和’scanf'在模块 :COS与1.C
发布网友
发布时间:2022-04-27 10:10
我来回答
共4个回答
热心网友
时间:2023-10-03 23:07
1、不能直接main()可以用void
main()或int
main(){return
0;}
2、scanf
里面3、while(1)里面应该是一个变量限定的条件如:while(a>1)
4、
h已超int的范围应小于等于32767
5、printf
("请输入一个不超过五位数:
");
应用中文分号
6、if
(a>h)
printf
("\n输入错误!重新输入:
");应用中文分号
7、
scanf
("%d\n",&a);
不能有\n
8、derault;
是default
9、printf
("
逆序
输出为:%d",k)
a/=10;
缺少分号
热心网友
时间:2023-10-03 23:07
已经帮你改到没有显示错误了,vc6编译成功。
但是尚未看你程序的逻辑。
#include<stdio.h>
#include<stdlib.h>
void main()
{
int s=0,h=99999,x=0;
int j,k,i,a,c;
printf ("请输入一个不超过五位数: ");
scanf ("%d\n",&a);
while (1)
{
if (a>h)
printf ("\n输入错误!重新输入:");
scanf ("%d\n",&a);
}
c=a;
while (0!=a)
{
a/=10;
x++;
}
switch (x)
{
case 1: printf ("这是一个1位数!\n");break;
case 2: printf ("这是一个2位数!\n");break;
case 3: printf ("这是一个3位数!\n");break;
case 4: printf ("这是一个4位数!\n");break;
case 5: printf ("这是一个5位数!\n");break;
default :
exit(0);
}
a=c;
while (a>0)
{
i=a%10;
a/=10;
s=s+i;
printf ("这个数各位数之和是:%d\n\n",s);
}
a=c;
for (j=0;j<x;j++)
{
k=a%10;
printf ("逆序输出为:%d",k);
a/=10;
}
}
热心网友
时间:2023-10-03 23:08
写的时候把main写成了mian吧,这样就报错了。
热心网友
时间:2023-10-03 23:08
while (1)
{
if (a>h)
printf ("\n输入错误!重新输入: ”);
scanf ("%d\n",&a);
}
这是死循环哦追问正解呢?