1.水仙花数
#include<stdio.h>
int main()
{
	int i,a,b,c;
	for(i=100;i<1000;i++)
	{
		a=i/100;
		b=(i/10)%10;
		c=i%10;
		if((a*a*a+b*b*b+c*c*c)==i)
			printf("%d\n",i);
	}
	return(0);
}

2.2-n之间的素数
#include<stdio.h>
int main()
{
	int i,j,n,flag;
	scanf("%d",&n);
	for (i=2; i<=n; i++)
	{
		flag = 1;
		for (j=2; j<=i/2; j++)
			if (i%j == 0){
				flag = 0;
				break;
			} 
		if (flag) printf("%d ",i);
	}
	return 0;
}

3.百钱百鸡
#include "stdio.h"
int main()
{
   int x,y,z,i,j,k,flag=0;
   scanf("%d%d%d",&x,&y,&z);
   for(i=0;i<=100/x;i++)
     for(j=0;j<=100/y;j++)
       for(k=0;k<=100*z;k++)
       {
           if(i+j+k==100 && i*x+j*y+k/z==100 && k%z==0)
           {
             flag=1;
             printf("%d %d %d\n",i,j,k);
           }
       }
   if(flag==0)
    printf("no solution!\n");    
}

4.求一维数组输出最小值及其下标
#include <stdio.h>
int main()
{
	int a[100];
	int i,n,mini,minv;
	scanf("%d",&n);
	for (i=0; i<n; i++)
	{
		scanf("%d",&a[i]);
	}
	minv = 100000;
	for (i=0; i<n; i++)
	{
		if (minv>a[i])
		{
			minv = a[i];
			mini = i;
		}
	}
	printf("min=a[%d]=%d",mini,a[mini]);
	return 0;
}

5.闰年判断
#include<stdio.h>
int main(void)
{
	int n;
	while (scanf("%d",&n),n!=0)
	{
		if(n%4==0&&n%100!=0||n%400==0) //判断是否为闰年
		{
			printf("%d ",n);
		}
		else
		{
			continue;
		}
	}
	return 0;
}
6.使用一维数组找出两组数非共有元素
#include <stdio.h>
int main()
{
	int a[100],b[100];
	int i,j,m,n,flag;
	scanf("%d",&m);
	for (i=0; i<m; i++)
	{
		scanf("%d",&a[i]);
	}
	scanf("%d",&n);
	for (i=0; i<n; i++)
	{
		scanf("%d",&b[i]);
	}
	for (i=0; i<m; i++)
	{
		flag = 0;
		for(j=0; j<n; j++)
		{
			if (a[i]==b[j]) flag = 1;
		}
		if (flag==0)
		{
			printf("%d ",a[i]);

		}
	}
	for (j=0; j<n; j++)
	{
		flag = 0;
		for(i=0; i<n; i++)
		{
			if (a[i]==b[j]) flag = 1;
		}
		if (flag==0)
		{
			printf("%d ",b[j]);
			
		}
	}
	return 0;
}


7.c语言统计字符串中指定的单词个数
 #include "stdio.h" 
#include "string.h"

#include "conio.h"
int fun(char *str,char *substr)
{
int i,n=0,s=strlen(str);
for(i=0;i<s;i++)
if((str[i]==substr[0])&&(str[i+1]==substr[1]))
n++;
return n;
}
main()
{
	char str[81],substr[3];
	int n;
	printf("输入的字符串:");
	gets(str);
	printf("子字符串:");
	gets(substr);
	puts (str);
	puts(substr);
	n=fun(str,substr);
	printf("n=%d\n",n)
}
8.使用二维数组求主对角线元素和反向对角线元素之和
#include <stdio.h>
int main()
{
	int a[3][3];
	int i,j;
	int sum;
	for (i=0; i<3; i++)
	{
		for (j=0; j<3; j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	sum = 0;
	for (i=0; i<3; i++)
	{
		for (j=0; j<3; j++)
		{
			if (i==j || i==3-j-1)
			   sum = sum + a[i][j];
		}
	}
	printf("sum=%d",sum);
	return 0;
}
9.斐波那契数列

#include <stdio.h>
int fib(int n)
{
	if (n<=0) return 0;
	if (n==1) return 1;
	return fib(n-1)+fib(n-2);	
}
int main()
{
	int n;
	scanf("%d",&n);
	
	printf("fib(%d)=%d",n,fib(n));
	return 0;
}