do while
#include <stdio.h>
#include <stdlib.h>
int main() {
int a = 1,b = 10;
do {
b -= a;
a++;
} while (b-- < 0);
printf("%d
",b); // 8
return 0;
}
不管条件是否满足都执行一次。
模拟dos游戏。
#include <stdio.h>
#include <stdlib.h>
int main() {
int choice; // 用户的选择
// 打印游戏菜单
printf("性格测试:
");
printf("如果您是一位君王,对于身旁的伴侣,你希望十什么样的?
");
printf("1.只要有一位真爱的妻子
");
printf("2.可以有两位以上的爱人
");
printf("3.拥有三千佳丽
");
do { // 如果输入错误,将会一直输入
printf("请选择:");
scanf("%d",&choice);
if (choice < 1 || choice >3) {
printf("只能输入1-3之间的数字!请重新输入!
");
}
} while(choice <1 || choice > 3);
switch (choice) {
case 1 :
printf("你是好人");
break;
case 2:
printf("贪得无厌");
break;
case 3:
printf("大胆放肆");
break;
}
return 0;
}
循环实现数字反转
#include <stdio.h>
#include <stdlib.h>
int main() {
// 使用循环实现数字反转
int value,right_num;
value = 0;
do {
printf("
请输入一个数:");
scanf("%d",&value);
if (value <= 0) {
printf("必须是正数!
");
}
} while (value <= 0);
printf ("
反转后的数为:");
do {
right_num = value % 10;
printf("%d",right_num);
value = value / 10;
} while (value != 0);
printf("
");
return 0;
}
打印加法表
#include <stdio.h>
#include <stdlib.h>
int main() {
int num;
// 打印简单加法表
printf("请输入一个数字:");
scanf("%d",&num);
int i ;
for (i = 0 ;i <num; i++) {
printf("%d + %d = %d",i,num-i,num);
if (i % 2 == 1) {
printf("
");
} else {
printf(" ");
}
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
int age;
// for (;;)
while (1) {
printf("请输入玩家年龄:
");
scanf("%d",&age);
// 判断年龄是否大于0
if (age<0) {
break;
}
}
printf("游戏结束!");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
// 设定一个商品价格
// 用户输入猜测的价格后,系统给出大小提示
// 如果在5轮内就猜到,就给于奖励提示
int price = 1000;
int count = 0;
int guessPrice;
while (1) {
printf("请输入商品价格:
");
scanf("%d",&guessPrice);
count++;
if (guessPrice > price) {
printf("大了
");
}
if (guessPrice < price) {
printf("小了
");
}
if (guessPrice == price) {
if (count <=5 ) {
printf("5轮之内就猜对了,你真棒!");
} else {
printf("猜对了!");
}
break;
}
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
// 循环输入5个玩家的年龄,统计年龄为负数的次数
int i;
int age;
int wrongCount = 0;
for (i = 0 ; i< 5 ;i ++) {
printf("请输入玩家年龄:
");
scanf("%d",&age);
if (age > 0)
continue;
wrongCount++;
}
printf("错误的次数为%d",wrongCount);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
// c语言算法题很有意思
// 求1-100之间的偶数和
int i = 1;
int sum = 0;
for (i ; i<= 100 ; i++) {
if (i % 2 == 0) {
sum += i;
}
}
printf("1到100之间的偶数和为%d",sum);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
// 用 "*" 输出一个菱形图案
/*
*
***
*****
*******
*****
***
*
###*
##***
#*****
*******
#*****
##***
###*
*/
// 设置双循环
// 外层循环控制行,内层循环控制列
int i,j;
for (i = 0;i < 7;i ++) {
int starNum;
int spaceNum;
if (i < 4) {
starNum = i * 2 + 1;
spaceNum = 3 - i;
} else {
starNum = (6 - i) * 2 + 1;
spaceNum = (3 - (6 - i));
}
for (j = 0;j < spaceNum; j++) {
printf(" ");
}
for (j = 0;j < starNum; j++) {
printf("*");
}
printf("
");
}
return 0;
}
太难了