1、
引子
#include "stdio.h"
main()
{ int i=1;
for(i=1;i<=10000;i++)
printf(“%d\t”,i);
}
题型1 输入输出多个数据
eg1、输出1~10000之间所有的整数
#include "stdio.h"
main()
{ int i=1;
while(i<=1000)
{printf(“%d\t”,i);
i++;}
}
拓展:1、换成所有的奇数
2、换成所有的偶数
题型2 有限个数连加和连乘
eg2.1、求1+2+3+4+………+100的值
#i
2、nclude "stdio.h"
main()
{ int i=1,s=0;
while(i<=100)
{s=s+i;
i++;}
printf(“%d\n”,s);
}
拓展:1、求1+2+3+4+………+n的值
2、求12+22+32+………+n2的值
3、求1+1/2+1/3+………+1/n的值
eg2.2、求n!的值
#include "stdio.h"
main()
{ int i=1,n,p=1;
scanf(“%d”,&n);
while(i<=n)
{p=p*i;
i++;}
printf(“%d\n”,p);
}
3、
拓展:求1!+2!+3!+………+n!的值
#include "stdio.h"
main()
{ int i=1,n,p=1,s;
scanf(“%d”,&n);
while(i<=n)
{p=p*i;
s=s+p;
i++;}
printf(“%d\n”,s);
}
题型3 无限个数连加
eg3、求1-1/3+1/5-1/7+………的近似值,要求精度要达到10-4
#include "stdio.h"
#include "math.h"
main()
{ float n=1,s=0,f=1,t=1;
while(fabs(t)>=1e
4、4)
{t=f/(2*n-1);
s=s+t;
f=-f;
n++;}
printf(“%f\n”,s);
}
拓展:求1-1/2+1/4-1/6+………的近似值,要求精度要达到10-4
题型4 统计
eg4.1、输入20个数,统计其中正数、负数和零的个数。
#include "stdio.h"
main()
{ int i=1,n,p,z;
float x;
p=n=z=0;
while(i<=20)
{ scanf(“%f”,&x);
if(x>0)
p++;
else
if(x<0)
n++;
el
5、se
z++;
i++;
}
printf(“%d\t%d\t %d\n”,p,n,z);
}
拓展:统计各类字符的个数
eg4.2 个位为6且能被3整除的五位数有多少?
方法1
#include "stdio.h"
main()
{ long i=10000,c=0;
while(i<=99999)
{
if((i%3==0)&& (i%10==6))
c++;
i++;
}
printf(“%d \n”,c);
}
方法2
#include "stdio.h"
main()
{ long i=10006,c=0;
6、 while(i<=99999)
{
if(i%3==0)
c++;
i=i+10;
}
printf(“%d \n”,c);
}
题型5 数列
eg5 输出fibo数列的第20位数字
#include "stdio.h"
main()
{ int f1=1,f2=1, f3,i=3;
while(i<=20)
{ f3=f1+f2;
f1=f2;
f2=f3;
i++;}
printf(“%d \n”,f3);
}
拓展:输出fibo数列前20位数字
#include "stdio.h"
main()
{ int f1=1,f2=1,
7、 f3,i=3;
printf(“%d \t%d \t”,f1,f2);
while(i<=20)
{ f3=f1+f2;
f1=f2;
f2=f3;
printf(“%d \t”,f3);
i++;}
}
题型6 数据的逆序输出
eg6 任意给定一个正整数,个位数字逆序输出。
#include "stdio.h"
main()
{ long x,t;
scanf(“%ld”,&x);
while(x!=0)
{ t=x%10;
x=x/10;
printf(“%d”,t); }
}
题型7 公约数与公倍数
eg7 任意输入两
8、个正整数,求其最大公约数和最小公倍数。
#include "stdio.h"
main()
{ int m,n,a,b,r,t;
scanf(“%d%d”,&m, &n);
if(m>n) {a=m;b=n;}
else {a=n;b=m;}
while(b!=0)
{ r=a%b;
a=b;
b=r;}
printf(“zuida gongyushu shi:%d\n”,a);
printf(“zuixiao gongbeishu shi:%d\n”,m*n/a);
}
题型8 素数问题
eg8 从键盘上任意输入一个正整数,判断其是否为素数
9、
#include "stdio.h"
main()
{ int x,i=2;
scanf(“%d”,&x);
while(x%i!=0) i++;
if(x==i) printf(“shi!”);
else printf(“fou!”);
}
题型9 高次方程的根
eg9.1 用二分迭代法求解方程y=2x3-4x2+3x-6=0在(-10,10)之间的根,要求精度10-5
#include "stdio.h"
#include "math.h"
main()
{
float x1=10,x2=-10,x, y ,y1;
x=(x1+x2)/2;
10、
y=2*x*x*x-4*x*x+3*x-6;
while(fabs(y)>1e-5)
{
y1=2*x1*x1*x1-4*x1*x1+3*x1-6;
if(y*y1>0)
x1=x;
else
x2=x;
x=(x1+x2)/2;
y=2*x*x*x-4*x*x+3*x-6;
}
printf("the root is %f\n",x);}
eg9.2 用牛顿迭代法求解方程2x3+ 4x2-7x-6=0在x=1.5附近的根,要求精度10-5
#include "stdio.h"
#include "math.h"
ma
11、in()
{
float x,x0, y ,y1;
x=1.5;
while(fabs(x-x0)>1e-5)
{ x0=x;
y=2*x0*x0*x0+4*x0*x0-7*x0-6;
y1=6*x0*x0+8*x0-7;
x=x0-y/y1;}
printf("the root is %f\n",x);}
牛顿迭代公式:xn+1=xn-f(xn)/f’(xn)
do-while循环结构举例
#include "stdio.h"
main()
{ int i=1,s=0;
do
{s=s+i;
i++;} while(i<=100);
prin
12、tf(“%d\n”,s);
}
for循环结构举例
f1
#include "stdio.h"
main()
{ int i=1,s=0;
for(i=1;i<=100;i++)
s=s+i;
printf(“%d\n”,s);
}
f2
#include "stdio.h"
main( )
{
int i,f1,f2,f3;
f1=1;f2=1;
printf("%d,%d",f1,f2);
for(i=3;i<=20;i++)
{
f3=f1+f2;
f1=f2;
f2=f3;
printf(",%d",f3);
13、
}
}
f3
#include "stdio.h"
main( )
{
int i;
float a,max;
scanf("%f ",&a);
max=a;
for(i=1;i<=9;i++)
{ scanf("%f ",&a);
if(max14、
#include "stdio.h"
main()
{
int x,n=0,s=0;
while (n<10)
{
scanf("%d",&x);
if (x<0) break;
s+=x;
n++;
}
printf("s=%d\n",s);
}
#include "stdio.h"
main( )
{
int x,n=0,s=0;
while (n<10)
{
scanf("%d",&x);
if (x<0) co
15、ntinue;
s+=x;
n++;
}
printf("s=%d\n",s);
}
#include "stdio.h"
main( )
{
int x,n=0,s=0;
while (n<10)
{
scanf("%d",&x);
n++;
if (x<0) continue;
s+=x;
}
printf("s=%d\n",s);
}
#include "stdio.h"
main()
{
16、
int i=2,m;
scanf("%d",&m);
while(m%i!=0)
i++;
if(i==m)
printf("%d shi sushu!\n",m);
else
printf("%d bu shi sushu!\n",m);
}
#include "stdio.h"
main()
{
int i,m;
scanf("%d",&m);
for(i=2;m%i!=0;i++) ;
if(i==m)
printf("%d shi sushu!\n",m);
else
17、 printf("%d bu shi sushu!\n",m);
}
#include "stdio.h"
main( )
{ int i,m;
scanf("%d",&m);
for (i=2; i<=m; i++)
if (m%i==0) break;
if(i==m)
printf("%d shi sushu!\n",m);
else
printf("%d bu shi sushu!\n",m);
}
#include
18、"stdio.h"
#include "math.h"
main( )
{ int i,m,s;
scanf("%d",&m);
s=sqrt(m);
for (i=2; i<=s; i++)
if (m%i==0) break;
if(i==s+1)
printf("%d shi sushu!\n",m);
else
printf("%d bu shi sushu!\n",m);
}
#include "stdio.h"
#include "math.h"
main()
19、 {
int i,j;
for(i=100;i<=200;i++)
{
for(j=2;j<=i;j++)
if (i%j==0) break;
if(j==i)
printf("%-10d",i);
}
}
#include "stdio.h"
#include "math.h"
main()
{
int i,j,s;
for(i=100;i<=200;i++)
{ s=sqrt(i);
for(j=2;j<=s;j++)
if
20、i%j==0) break;
if(j==s+1)
printf("%-10d",i); }
}
#include
main( )
{ int i,j,s;
for (i=2; i<=10000; i++)
{ s=0;
for (j=1; j21、
#include "stdio.h"
main()
{
int i,j,k;
for(i=0;i<=35;i++)
for(j=0;j<=35;j++)
if((i+j==35)&&(2*i+4*j==94))
printf("\ni=%-10dj=%-10d",i,j);
}
#include "stdio.h"
main()
{ int i,j,k;
for(i=0;i<=19;i++)
for(j=0;j<=33;j++)
for(
22、k=0;k<=100;k++) if((i+j+k==100)&&(5*i+3*j+k/3==300))
printf("\ni=%-10dj=%-10dk=%-10d",i,j,k);
}
#include "stdio.h"
main()
{ int i,j,k;
for(i=0;i<=19;i++)
for(j=0;j<=33;j++)
{
k=100-i-j;
if(15*i+9*j+k==300) printf("\ni=%-10dj=%-10dk=%-
23、10d",i,j,k); }
}
#include "stdio.h"
main()
{
int i,j,k;
for(i=0;i<=19;i++)
for(j=0;j<=33;j++)
{k=100-i-j;
if(5*i+3*j+k/3==100) printf("\ni=%-10dj=%-10dk=%-10d",i,j,k); }
}
#include "stdio.h"
main()
{ int m,n,k;
24、 for (m=1;m<=9;m++)
{ for(n=1;n<=m;n++)
printf("%d*%d=%-5d",n,m,n*m);
printf("\n"); }
}
#include "stdio.h"
main()
{
int i;
for(i=1;i<=5;i++)
printf("********\n");
}
#include "stdio.h"
main()
{
int i,j;
25、
for(i=1;i<=5;i++)
{
for(j=1;j<=5-i;j++)
printf(" ");
printf("********\n");
}
}
#include "stdio.h"
main( )
{
int i,j;
for (i=1; i<=5; i++)
{ for (j=1; j<=20-i; j++)
printf(" ");
for (j=1;j<=i;j++)
print
26、f("*");
printf("\n");
}
}
#include "stdio.h"
main()
{int i,j;
for (i=1;i<=5;i++)
{ for (j=1;j<=20-i;j++)
printf(" ");
for (j=1;j<=2*i-1;j++)
printf("*");
printf("\n");
}
}
27、
#include "stdio.h"
main( )
{ int i,j;
for (i=1; i<=5; i++)
{ for (j=1; j<=i-1; j++)
printf(" ");
for (j=1;j<=11-2*i;j++)
printf("*");
printf("\n");
}
}
#include "stdio.h"
main( )
{ int i,j;
for (i=1; i<=4; i++)
28、 { for (j=1; j<=4-i; j++)
printf(" ");
for (j=1;j<=2*i-1;j++)
printf("*");
printf("\n");
}
for (i=1; i<=3; i++)
{ for (j=1; j<=i; j++)
printf(" ");
for (j=1;j<=7-2*i;j++)
printf("*");
printf("
29、\n");
}
}
#include "stdio.h"
main()
{int i,j,k,m,n,s=0;
for(i=0;i<=2;i++)
for(j=0;j<=9;j++)
for(k=1;k<=9;k++)
{m=100*i+10*j+k;
n=100*k+10*j+i;
if((n>2*m)&&(n<3*m))
{ s++;
printf("%d ",m);
if(s%8==0)
printf("\n");}
}
}
THANKS !!!
致力为企业和个人提供合同协议,策划案计划书,学习课件等等
打造全网一站式需求
欢迎您的下载,资料仅供参考
-可编辑修改-