
1、首先新建源文件c.c,用文本编辑器打开。
2、输入图片里面的代码,编辑确认无误之后保存。
3、编写好控制台批处理文件,设置好环境变量,主要是PATH,INCLUDE和LIB三个环境变量!编辑好之后保存为bat后者cmd后缀文件。
4、双击打开刚才设置好的批处理文件,在里面输入cl **.c,自动编译链接,生成exe文件。
5、最后一步运行,在控制台输入执行文件名c.exe,按Enter键运行,就完成了。
#include<stdio.h>
#include
<math.h>
void
armstrong(int
a)
{
int
i
int
n
=
1
int
b
=
a
int
s
=
0
while(b
/=
10)
n++
b
=
a
for(i
=
0
i
<
n
i
++){
s
+=
(int)pow(b%10,
n)
b
/=
10
}
if(s
==
a){
printf("%d
是水仙花数!\n",
a)
}else{
printf("%d
不是水仙花数!\n",
a)
}
}
void
prime(int
a)
{
int
i
if(a
<
2)
{
printf("%d
不是素数!\n",
a)
return
}
for(i
=
2
i
<
a
i
++){
if(a
%
i
==
0)
{
printf("%d
不是素数!\n",
a)
return
}
}
printf("%d
是素数!\n",
a)
}
void
max(int
a,
int
b,
int
c)
{
if(b
>
a)
a
=
b
if(c
>
a)
a
=
c
printf("最大值是:%d\n",
a)
}
void
factorial(int
a)
{
int
i
int
f
=
1
for(i
=
a
i
>1
i
--)
f
*=
i
printf("%d
的阶乘是:%d\n",
a,
f)
}
int
main(int
argc,
char
**argv)
{
int
a,
b,
c
int
type
int
run
=
1
printf("本程序可完成某些数学计算:\n")
printf(
"***********************************\n"
"*
1.判断一个数是否为水仙花数。
*\n"
"*
2.判断一个数是否为素数。
*\n"
"*
3.求三个数的最大值。
*\n"
"*
4.求一个数的阶乘。
*\n"
"*
0.退出。
*\n"
"***********************************\n")
do{
printf("请按菜单进行选择(0-4):")
scanf("%d",
&type)
switch(type){
case
0:
while(1){
getchar()
printf("你确定退出吗?(y/n)")
a
=
getchar()
switch(a){
case
'y':
run
=
0
break
case
'n':
run
=
1
break
default:
break
}
if((a
==
'y')
||
(a
==
'n'))
break
}
break
case
1:
printf("请输入一个数:")
scanf("%d",
&a)
armstrong(a)
break
case
2:
printf("请输入一个数:")
scanf("%d",
&a)
prime(a)
break
case
3:
printf("请输入三个数:")
scanf("%d%d%d",
&a,
&b,
&c)
max(a,
b,
c)
break
case
4:
printf("请输入一个数:
")
scanf("%d",
&a)
factorial(a)
break
default:
break
}
}while(run)
return
0
}
将后台代码实现的功能以菜单的形式显示出来,供用户使用,直接调用过程名即可。可在Workbooks_Open中调用可实现打开Excel即加载,易用。(1)先点击按钮生成菜单,然后再打开Excel时,此时新Excel中会自动加载同样的菜单。所以,我们让用户先打开我们的程序,然后再打开她要 *** 作的表,然后再她的表上点击按钮即可。(2)此菜单是临时菜单不会永久停留在Excel中,当当前Excel进程完全结束后,就会消失。所以一般不用担心,会对Excel程序造成损坏什么的。(3)当你的两个Excel不是一个进程时,那么菜单是不会在另一个上显示的。比如说,用了两次CreateObject创建的Excel就不属于同一个进程,一个显示菜单后,另一个,即使是后创建打开的,也是不显示菜单的。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)