1.1 代码:
#include <stdio.h>
int main ()
{
int a,b,c,d,e,i;
for(i=1000;i<=9999;i++)
{
a=i/1000;
b=i%1000/100;
c=i%100/10;
d=i%10;
e=d*1000+c*100+b*10+a;
if(i==4*e)
{
printf("%d\n",i);
}
}
return 0;
}
1.2 程序运行结果:

2.1 代码:
#include <stdio.h>
int main ()
{
long a,b,c,sum=0;
printf("请输入一个多位数字\n");
scanf("%ld",&a);
if(a<9)
{
printf("error\n");
}
else
{
while(a>0)
{
b=a%10;
a=a/10;
sum=sum+b;
}
printf("%d\n",sum);
switch(sum)
{
case 1: printf("January\n");break;
case 2: printf("February\n");break;
case 3: printf("March\n");break;
case 4: printf("April\n");break;
case 5: printf("May\n");break;
case 6: printf("June\n");break;
case 7: printf("July\n");break;
case 8: printf("August\n");break;
case 9: printf("September\n");break;
case 10: printf("October\n");break;
case 11: printf("November\n");break;
case 12: printf("December\n");break;
default : printf("***\n");
}
}
return 0;
}
2.2 程序运行结果:

3.1 代码:
#include <stdio.h>
int main()
{
int A,i,j,k,a,sum=0;
printf("请输入一个不超过6的正整数\n");
scanf("%d",&A);
if(A<0||A>6)
{
printf("error");
}
else
{
for(i=A;i<=A+3;i++)
{
for(j=A;j<=A+3;j++)
{
for(k=A;k<=A+3;k++)
{
if(i!=j&&j!=k&&k!=i)
{
sum=i*100+j*10+k;
a++;
printf("%4d",sum);
if(a%6==0)
{
printf("\n");
}
}
}
}
}
}
return 0;
}
3.2 程序运行结果:

4.猜拳游戏
4.1 代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ()
{
int player,computer,b=1,n,i=0,j=0,k=0;
char a,y;
while (1)
{
srand(time(NULL));
computer=rand()%3+1;
printf("***猜拳游戏***\n");
printf("第%d次对决,请做出你的选择:\n 1.石头 2.剪刀 3.布\n",b);
scanf("%d",&player);
while (player<1||player>3)
{
printf("输入错误,请重输\n");
scanf("%d",&player);
}
{
if(computer==1)
{
printf("电脑出了石头\n");
switch(player)
{
case 1:printf("你出了石头\n 平局\n");i++;break;
case 2:printf("你出了剪刀\n 你输了\n");j++;break;
case 3:printf("你出了布\n 你赢了\n");k++;break;
}
}
if(computer==2)
{
printf("电脑出了剪刀\n");
switch(player)
{
case 1:printf("你出了石头\n 你赢了\n");k++;break;
case 2:printf("你出了剪刀\n 平局\n");i++;break;
case 3:printf("你出了布\n 你输了\n");j++;break;
}
}
if(computer==3)
{
printf("电脑出了布\n");
switch(player)
{
case 1:printf("你出了石头\n 你输了\n");j++;break;
case 2:printf("你出了剪刀\n 你赢了\n");k++;break;
case 3:printf("你出了布\n 平局\n");i++;break;
}
}
printf("是否继续?按n退出,按其他键继续 \n");
scanf(" %c",&a);
if (a==‘n‘)
break;
}
b++;
}
if(j>k)
{
printf("共对战了%d局,你赢了%d局,电脑赢了%d局,打平%d局\n",b,k,j,i);
printf("你输了\n");
}
else if(j<k)
{
printf("共对战了%d局,你赢了%d局,电脑赢了%d局,打平%d局\n",b,k,j,i);
printf("你赢了\n");
}
else
{
printf("共对战了%d局,你赢了%d局,电脑赢了%d局,打平%d局\n",b,k,j,i);
printf("平局\n");
}
exit (0);
return 0;
}
4.2 程序运行结果:


1.switch语句后要有相应的break.
2.for循环和while循环要分开,注意两者的使用条件
1.注意运行的是否为副本,副本运行出的结果与源程序是不一样的。
2.记得要对程序进行合法性验证,给出错误数据的解决方法
3.注意穷举法的应用.
4.数据对齐时要注意空位.
原文:http://www.cnblogs.com/wei530/p/6059923.html