循环结构程序设计相关习题
例1 1-100之和
代码
//while
#include<stdio.h>
int main() {
int i = 0, sum = 0;
while(i <= 100) {
sum = sum + i;
i++;
}
printf("sum = %d",sum);
return 0;
}
//do...while
#include<stdio.h>
int main() {
int i = 0, sum = 0;
do {
sum = sum + i;
i++;
} while(i <= 100);
printf("sum = %d",sum);
return 0;
}
//for
#include <stdio.h>
int main() {
int i = 0, sum = 0;
for(i = 1; i <= 100; i++) {
sum = sum + i;
}
printf("sum = %d",sum);
return 0;
}
结果
例2 1-100偶数之和
代码
//while
#include<stdio.h>
int main() {
int i = 0, sum = 0;
while(i <= 100) {
sum = sum + i;
i = i + 2;
}
printf("sum = %d",sum);
return 0;
}
//do...while
#include<stdio.h>
int main() {
int i = 0, sum = 0;
do {
sum = sum + i;
i = i + 2;
} while(i <= 100);
printf("sum = %d",sum);
return 0;
}
//for
#include<stdio.h>
int main() {
int i = 0, sum = 0;
for(i = 0; i <= 100; i+=2) {
sum = sum + i;
}
printf("sum = %d",sum);
return 0;
}
结果
例3 水仙花数
代码
#include <stdio.h>
int main() {
int i;
int a,b,c;
for(i=100; i<1000; i++) {
a=i%10; //取个位
b=i/10%10; //b也可以为i%100 /10//取十位
c=i/100; //取百位
if(i==a*a*a+b*b*b+c*c*c)
printf("%d\n",i);
}
return 0;
}
结果
例4 九九乘法表
代码
#include <stdio.h>
int main() {
int i,j;
for(i = 1; i < 10; i++) {
for(j = 1; j <= i; j++) {
printf("%d*%d=%d\t",j,i,i*j);
}
printf("\n");
}
return 0;
}
//思考
#include<stdio.h>
int main() {
for(int i = 9; i >= 1; i--) {
for(int j = 1; j <= i; j++) {
printf("%d*%d=%d\t",i,j,i*j);
}
printf("\n");
}
}
结果
正立
倒立
例5 打印直角三角形
代码
#include<stdio.h>
int main() {
int i,j;
for(i=1; i<=6; i++) {
for(j=1; j<=i; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
结果
例6 打印等腰三角形
代码
#include <stdio.h>
int main() {
int m,i,j,k;
printf("请输入等腰三角形占据的行数:");
scanf("%d",&m);
for(i=1; i<=m; i++) {
for(j=1; j<=m-i; j++)
printf(" ");
for(k=1; k<=2*i-1; k++)
printf("*");
printf("\n");
}
return 0;
}
结果
例7 百钱买百鸡
代码
#include <stdio.h>
int main() {
int cock,hen,chick; //定义变童为基本整型
for(cock=0; cock<=20; cock++) //公鸡范围在 0~20 之间
for(hen=0; hen<=33; hen++) //母鸡范围在 0~33 之间
for(chick=3; chick<=99; chick++) //小鸡范围在 3~99 之间
if(5*cock+3*hen+chick/3==100) //判断钱数是否等于 100
if(cock+hen+chick==100) //判断购买的鸡数是否等于 100
if(chick%3==0) //判断小鸡数是否能被 3 整除
printf("公鸡:%d,母鸡:%d,小鸡:%d\n",cock,hen,chick);
return 0;
}
结果