1、编一个判别质数的函数,如果是质数,函数的返回值是1,否则为0。
#include <stdio.h>
int fun(int n)
{
int i;
for(i=2;i<n;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int n;
scanf("%d",&n);
if(fun(n))
printf("%d是素数\n",n);
else
printf("%d不是素数\n",n);
return 0;
}
2、编写一个函数,输入两个正数,输出最大公约数和最小公倍数
#include <stdio.h>
int main()
{
int p,r,n,m,temp;
printf("请输入两个正整数:");
scanf("%d,%d",&n,&m);
if(n<m)
{ temp=n;n=m;m=temp;}
p=n*m;
while(m!=0)
{
r=n%m;
n=m;
m=r;
}
printf("最大公约数为:%d\n",n);
printf("最小公倍数为:%d\n",p/n);
return 0;
}
3、一张一元纸币兑换成一分、两房和五分的硬币,假定每一种至少一枚,编程序计算共有多少种方法并打印每种兑换方法
#include<stdio.h>
main()
{
int i,j;
int sum=0;
for(i=0;i<=50;i++)
for(j=0;j<=20;j++)
if(100-2*i-5*j>=0)
{
printf("1分%3d张 2分%3d张 5分%3d张",100-2*i-5*j,i,j);
sum++;
if(sum%2==0)
printf("\n");
}
printf("\n%d\n",sum);
return 0;
}
4、编程序求以下表达式的值:1-2+3-4+……+m
int Sum = 0 ;
for (int i = 0 ; i < Num + 1 ; i++)
{
if((i%2) == 1)
{
Sum += i ;
}
else
{
Sum = Sum - I ;
}
}
5、一列数的规则如下:1、1、2、3、5、8、13、21、34……,求第三十位数是多少,请编程序用递归法实现
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Foot(3));
Console.ReadKey();
}
public static int Foot(int i)
{
if (i <= 0)
{
Console.WriteLine("abc");
return 0;
}
else if (i > 0 && i <= 2)
{
Console.WriteLine("abc");
return 1;
}
else
{
Console.WriteLine("abc");
return Foot(i - 1) + Foot(i - 2);
}
}
}
6、编写一个函数,在屏幕上打印出下列图形
#
###
#####
#######
#########
###########
#############
###############
#include <stdio.h>
void xing(int a,int b)//a为*数量,b为行长度
{
int i;
for(i=1;i<=((b-a)/2);i++)
printf(" ");
for(i=1;i<=a;i++)
printf("*");
for(i=1;i<=((b-a)/2);i++)
printf(" ");
printf("\n");
}
int main()
{
int a,i;
scanf("%d",&a);
if(a%2==0)
{
printf("error\n");
return 0;
}
if(a<=0||a>=80)
{
printf("error\n");
return 0;
}
for (i=1;i<=a;i+=2)
xing(i,a);
return 0;
}
7、编写一个函数,在屏幕上打印出下列乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
#include<stdio.h>
int main() {
int i,j;
for(i=1; i<=9; i++) {
for(j=1; j<=i; j++)
printf("%d*%d=%2d ",i,j,i*j);
printf("\n");
}
return 0;
}