1、判断给定的年份是否是闰年
1)若某个年份能被4整除但不能被100整除,则是闰年。
2)若某个年份能被400整除,则也是闰年
#include void main()
{
int year,leap;
printf("please input year");
scanf("%d",&year);
if(year%400==0||year%4==0&&year%100!=0)
printf("%d是闰年\n",year);
else
printf("%d不是闰年\n",year);
}
java判断闰年
2、输出一个三位数,依次输出该数的百位、十位、个位数字。
#include void main()
{
int num,a,b,c;
scanf("%d",&num);
a=num/100; //计算得到num的百位存入变量a中
b=num/10%10; //计算得到num的十位存入变量b中
c=num%10; //计算得到num的个位存入变量c中
printf("百位:%d\n十位:%d\n个位:%d\n",a,b,c);
}
3、输入任意三个数,判断三个数是否可以构成三角形,若能,是构成等腰三角形、等边三角形还是其他三角形?
分析:三角形要求任意两边之和大于第三边,在满足此条件下,细分出三边相等为等边三角形,任意两边相等为等腰三角形,其余为其他三角形
#include void main()
{
float a,b,c;
printf("Enter three sides of triangle:");
scanf("%f,%f,%f",&a,&b,&c);
if((a+b)>c&&(a+c)>b&&(b+c)>a) //任意两边之和大于第三边
{
if((a==b)&&(b==c))
printf("等边三角形");
else if((a==b)||(b==c)||(a==c))
printf("等腰三角形");
else
printf("其他三角形");
}
else
printf("不能构成三角形");
}
4、从键盘上输入一个整数,然后把这个整数的各位逆序输出。例如1234565,输出654321
#include void main()
{
int n,d;
printf("Enter an integer:");
scanf("%d",&n);
do
{
d=n%10; //d保存数n的个位,n保持不变
printf("%d",d);
n/=10;
}while(n!=0);
printf("\n");
}
5、编程输出如下图像 (行数由键盘输入 )
#include void main()
{
int row,i,j; ///row代表行数
printf("Enter an row:");
scanf("%d",&row);
for(i=1;i<=row;i++) //外层控制输出指定的行数
{
for(j=1;j<=i;j++) //内层循环控制输出域行数i相同个数的*
{
printf("*");
}
printf("\n");
}
}
6、求100~200间的全部素数
素数是指只能被1和本身整除的数。
对于一个数m,可以让m被2~(m-1)的整数除,如果m能被2-(m-1)中任意一个数整除,则m不是素数,反之则是素数
可以对上述方法进行优化,把除数的范围从2~(m-1)缩小到2~
#include #include void main()
{
int m,i,k,num;
num=0; //统计素数的个数
for(m=100;m<=200;m++)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{ //若能整除表m不是速速,break结束内层循环,执行外层m++
if(m%i==0) break;
}
if(i>=k+1)
{
printf("%d ",m); //输出素数 ,计算机num+1
num++;
if(num%7==0) printf("\n"); //每行显示7个素数
}
}
}
7、打印出所有“水仙花数”。水仙花数是指一个三位数,其各个位数的立方之和等于该数本身。例如153是一个水仙花数,153=
+
#include void main()
{
int n1,n2,n3,i,num=0;
for(i=100;i<=999;i++)
{
n1=i%10; //个位
n2=i/10%10;//十位
n3=i/100; //百位
if(n1*n1*n1+n2*n2*n2+n3*n3*n3==i)
{
num++;
printf("%d ",i);
if(num%7==0)
printf("\n");
}
}
}