#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void mune()
{
printf("**************************************************\n");
printf("** 1,乘法口诀表 **\n");
printf("** 2,分段函数 **\n");
printf("** 3,进制转换 **\n");
printf("** 4,进制 **\n");
printf("** 0,退出 **\n");
printf("**************************************************\n");
}
void Cfkj()
{
int a;
do {
printf("请输入一个0-9的数字:\n");
scanf_s("%d", &a);
if (a >= 1 && a < 10)break;
else
printf("范围错误,请重新启动。");
return 0;
} while (1);
int i = 0;
int j = 1;
for (i = 1; i <= a; i++)
{
for (int j = 1; j <= i; j++)
{
printf("%d*%d=%d\t", j, i, i * j);
}
printf("\n");
}
system("pause");
return 0;
}
void Fdhs()
{
int x, y;
printf("请输入一个数字:");
while (scanf_s("%d", &x) == 1)
{
if (x > 0)
{
if (x<10)
y =x+1;
if (x>= 10)
y = x % 3;
printf("y=%d\n", y);
}
else
printf("y=4\n");
printf("请输入一个数字【当输入‘m’时,结束输入】:");
}
return 0;
}
void Jzzha()
{
long long n, a;
int sum = 0, i = 0, m;
printf("%lld", &n);
a = n;
while (n != 0)
{
m = n % 10;
n /= 10;
sum += m * pow(2, i);
++i;
}
printf("二进制%lld转换为十进制为%d\n", a, sum);
}
void Jzzhb()
{
int num, m, c, i = 0;
int n = 2;
int a[32];
printf("输入一个整数:");
scanf_s("%d", &num);
m = num;
while (num > 0)
{
c = (num % n);
a[i] = c;
num = num / n;
i++;
}
printf("十进制%d转换为二进制是:", m);
for (i--; i >= 0; i--)
printf("%d", a[i]);
printf("\n");
}
void main()
{
int n = 0;
while (1)
{
mune();
printf("请选择:");
scanf_s("%d",&n);
swtich(n)
{
case 1:Cfkj();
break;
case 2:Fdhs();
break;
case 3:Jzzha();
break;
case 4:Jzzhb();
break;
case 0:
exit(0);
break;
default:
printf("您的选择错误!!!\n");
break;
}
}
}
以下是在VS2019中运行的错误提示