#include<stdio.h>
创新互联从2013年开始,先为细河等服务建站,细河等地企业,进行企业商务咨询服务。为细河企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
int main(void)
{
unsignedlongnum;
unsignedlongdiv;
intisPrime;//素数的标志,1代表是素数,0代表不是素数
printf("Pleaseenteranintegerforanalysis.");
printf("Enterqtoquit.\n");
while(scanf("%lu",&num)==1&&num!=1)
{
for(div=2,isPrime=1;(div*div)<=num;div++){
if(num%div==0){//如果能被div整除
if((div*div)!=num){//约数不相等
printf("%luisdivisibleby%luand%lu.\n",num,div,num/div);
}else{//约数相同
printf("%luisdivisibleby%lu.\n",num,div);
}
//将isPrime设置为0,表示其不是一个素数
isPrime=0;
}
}
if(isPrime==1){
printf("%lu是素数.\n",num);
}
printf("Pleaseenteranotherintegerforanalysis.");
printf("Enterqtoquit.\n");
}
printf("Bye.\n");
return0;
}
运行效果:
扩展资料:
printf()函数用法:
在C语言中,有三个函数可以用来在显示器上输出数据,它们分别是:
1、puts():只能输出字符串,并且输出结束后会自动换行。
2、putchar():只能输出单个字符。
3、printf():可以输出各种类型的数据。
printf() 是最灵活、最复杂、最常用的输出函数,完全可以替代 puts() 和 putchar(),
举例:
#includestdio.h
int main()
{
printf("这是我的博客:\n");
printf("***.top\n");
return 0;
}
printf() 格式控制符的完整形式如下:
%[flag][width][.precision]type
[ ] 表示此处的内容可有可无,是可以省略的。
1) type 表示输出类型,比如 %d、%f、%c、%lf,type 就分别对应 d、f、c、lf;
type 这一项必须有,这意味着输出时必须要知道是什么类型。
2) width 表示最小输出宽度,也就是至少占用几个字符的位置;
首先汇总一下用到的格式控制符:
%c输出一个单一的字符
%hd、%d、%ld以十进制、有符号的形式输出 short、int、long 类型的整数
%hu、%u、%lu以十进制、无符号的形式输出 short、int、long 类型的整数
%ho、%o、%lo以八进制、不带前缀、无符号的形式输出 short、int、long 类型的整数
%hx、%x、%lx%hX、%X、%lX以十六进制、不带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字也小写;如果 X 大写,那么输出的十六进制数字也大写。
%f、%lf以十进制的形式输出 float、double 类型的小数;%e、%le%E、%lE以指数的形式输出 float、double 类型的小数。如果 e 小写,那么输出结果中的 e 也小写;如果 E 大写,那么输出结果中的 E 也大写。
%g、%lg%G、%lG以十进制和指数中较短的形式输出 float、double 类型的小数,并且小数部分的最后不会添加多余的 0。如果 g 小写,那么当以指数形式输出时 e 也小写;如果 G 大写,那么当以指数形式输出时 E 也大写。
%s输出一个字符串。
C语言中,函数调用的一般形式为:
函数名(实际参数表)
对无参函数调用时则无实际参数表。实际参数表中的参数可以是常数、变量或其它构造类型数据及表达式。各实参之间用逗号分隔。
#includestdio.h
int fun(int x, int y); // 函数声明,如果函数写在被调用处之前,可以不用声明
void main()
{
int a=1, b=2, c;
c = fun(a, b); // 函数的调用,调用自定义函数fun,其中a,b为实际参数,传递给被调用函数的输入值
}
// 自定义函数fun
int fun(int x, int y) // 函数首部
{ // {}中的语言为函数体
return xy ? x : y; // 返回x和y中较大的一个数
}
扩展资料
C语言中不允许作嵌套的函数定义。因此各函数之间是平行的,不存在上一级函数和下一级函数的问题。但是C语言允许在一个函数的定义中出现对另一个函数的调用。
这样就出现了函数的嵌套调用。即在被调函数中又调用其它函数。这与其它语言的子程序嵌套的情形是类似的。其关系可表示如图。
图表示了两层嵌套的情形。其执行过程是:执行main函数中调用a函数的语句时,即转去执行a函数,在a函数中调用b 函数时,又转去执行b函数,b函数执行完毕返回a函数的断点继续执行,a函数执行完毕返回main函数的断点继续执行。
参考资料:函数调用_百度百科
在windows下的编译器,支持conio.h头文件的可使用 getch()函数。
例:
main()
{
char ch;
ch = getch();
if( ch == 'a')
printf("OK\n");
}
Linux下的编译器不支持 getch 函数,可使用系统命令关闭缓冲区,则不需要回车直接读取。
例:
#include stdio.h
int main()
{
char ch;
system("stty -icanon");//关闭缓冲区,输入字符无需回车直接接受
ch = getchar();
if(ch == 'a')
printf("OK\n");
return 0;
}
#include
"stdio.h"
int
s(int
a)
{
return(a%2);
}
main()
{
int
x;
printf("请输入一个整数:");
scanf("%d",x);
if(s(x)==1)
printf("%d是一个奇数",x);
else
printf("%d是一个偶数",x);
}
先编写一个判断是素数还是偶数的函数,偶数就返回0,否则就返回1,然后在主函数调用函数,根据返回值判断素数还是偶数。
#include stdio.h
int func(int n)
{
int sum;
for(sum=0;n;n/=10)
sum+=n%10;
return sum;
}
int main()
{
int n;
scanf("%d",n);
printf("%d\n",func(n));
return 0;
}