C语言循环结构编程题

  • 格式:doc
  • 大小:23.00 KB
  • 文档页数:4

C语言循环结构编程题

• 教材P74,第4, 6题

• 4题:

• #include

• void main()

• { int n,sum=0;

• for(n=1;n<=100;n=n+2)

• sum=sum+n;

• printf(“奇数之和为:%d\n”,sum);

• }

• 6题:

• #include

• void main()

• { int n=1, m=1;

• do

• { m=m*n;

• n=n+1;

• }while(n<=10);

• printf(“10!=%d\n”,m);

• }

• 3. 输入一行字符,统计其中英文字母的个数。

• #include

• void main()

• { char ch; int n=0;

• printf(“请输入一行字符:”);

• scanf(“%c”,&ch);

while(ch!=’\n’)

{ if(ch>=’a’&&ch<=’z’||ch>=’A’&&ch<=’Z’)

n++;

scanf(“%c”,&ch);

}

printf(“您输入了%d个英文字母\n”, n);

}

• 4.输入一批正整数(以负数结束),求其中的奇数和。

#include

void main()

{ int n, sum=0;

printf(“请输入若干正整数,以负数结束:\n”);

scanf(“%d”,&n);

while(n>0) C语言循环结构编程题

{if(n%2!=0) sum=sum+n;

scanf(“%d”,&n); }

printf(“奇数之和等于:%d\n”,sum);

}

5、输出公元2000年至3000年间的所有闰年的年号。

#include

void main()

{ int year , m;

for(year=2000;year<=3000;year+=4)

if(year%100!=0||year%400==0)

{ printf(“ %d”,year);

m++;

if(m%5==0) printf(“\n”);

}

}

• P74习题, 第2题,第7题。

第2题:

#include

void main()

{ int n, m;

n=1;

while(n<=9)

{ m=1;

while(m<=n)

{ printf(“%d*%d=%d “, m,n,n*m);

m++;

}

printf(“\n”);

n++;

}

}

第7题:

#include

void main( )

{ int i, j,n;

printf(“请输入打印的行数:”);

scanf( “%d”,&n);

for(i=1;i<=n;i++)

{ for (j=1;j<=n-i;j++) printf(" ");

for(j=1;j<=2*i-1;j++) printf("*");

printf("\n");

} C语言循环结构编程题

}

• 打印所有水仙花数。如: 153=13+53+33

void main( )

{ int n, d, t, h;

printf(“所有水仙花数:\n”);

for (n=100;n<=999;n++)

{ d=n%10;

t=n/10%10;

h=n/100;

if(n==d*d*d+t*t*t+h*h*h)

printf("%d \n", n);

}

}

 计算分数数列前20项之和

void main( )

{ float a, b, t, sum;

int i;

a=1;b=2;sum=0;

for(i=1;i<=20;i++)

{ sum=sum+b/a;

t=a;

a=b;

b=b+t;

}

printf(“数列之和是:%f\n”,sum);

}

 解一元二次方程

#include

#include

void main( )

{ float a, b, c, x1,x2,d;

char s;

do

{ printf("请输入a,b,c的值:\n");

scanf("%f%f%f",&a,&b,&c);

d=b*b-4*a*c;

if(d>0)

{ x1=(-b+sqrt(d))/(2*a);

x2=(-b-sqrt(d))/(2*a);

printf("方程有两个不等实根:\n");

printf(" x1=%f, x2=%f\n",x1,x2);

} C语言循环结构编程题

else if(d==0)

{x1=x2=-b/(2*a);

printf("方程有一个实根:\n");

printf("x1=x2=%f\n",x1);

}

else printf("方程无实根\n");

getchar();

printf("继续解方程吗(Y/N)?");

s=getchar();

}while(s=='y'||s=='Y');

}