毕竟还刚开始学习,代码还有很多需要改进的地方的
1;计算所有的水仙花数
#include <stdio.h>
int main(int argc,const char* argv[])
{
int i,a,b,c,j=1,num[20];
for(i=100;i<=999;i++)
{
a=i/100;b=i%100/10;c=i%10;
if(i==a*a*a+b*b*b+c*c*c)
{
num[j]=i;
j++;
}
}
for(i=1;i<j;i++)
{
printf("%d ",num[i]);
}
}
2:输入一个正整数,判断是否是素数
#include <stdio.h>
int main(int argc,const char* argv[])
{
int i,n;
scanf("%d",&n);
for(i=2;i<=n/2;i++)
{
if(n%i==0)
{
printf("不是素数\n");
break;
}
}
if(i>n/2)
{
printf("是素数\n");
}
}
3:输入一个正整数,判断是否为回文数
include <stdio.h>
int main(int argc,const char* argv[])
{
int n,i,j,m,num[20],sum;
scanf("%d",&m);
for(i=1;i<=m;i++)
{
j=0;sum=0;
scanf("%d",&n);
while(n!=0)
{
num[j]=n%10;
n=n/10;
printf("%d ",num[j]);
j++;sum++;
}
for(j=0;j<sum/2;j++)
{
if(num[j]!=num[sum-1-j])
{
printf("不是回文数\n");
break;
}
}
if(j>=sum/2)
printf("是回文数\n");
}
}
4:输入一个六位密码,正确显示“登录成功”,错误提示“还剩几次机会”,错误超过三次显示“账号已锁定”
#include <stdio.h>
int main(int argc,const char* argv[])
{
int sec=123456,i=3,n;
do{
scanf("%d",&n);
if(n==sec)
{
printf("登陆成功");
break;
}
else
{
i--;
printf("还剩%d次机会\n",i);
}
}while(i);
if(i==0) printf("帐号已锁定\n");
}
5:输入一个整数分解显示
#include <stdio.h>
#include <math.h>
int main(int argc,const char* argv[])
{
int n,m,i,num,renum,j,sum,cout;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum=0;
scanf("%d",&num);
if(num<0)
{
printf("-");
num=-num;
renum=num;
}
else
{
renum=num;
}
while(num!=0)
{
num=num/10;
sum++;
}
for(j=sum;j>0;j--)
{
cout=1;
for(i=1;i<j;i++)
{
cout=cout*10;
}
printf("%d ",renum/cout);
renum=renum%cout;
}
printf("\n");
}
}