提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
一、判断语句练习
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<stdlib.h>
int main() {
int data1;
int data2;
int max;
puts("请输入两个数字");
scanf("%d %d", &data1, &data2); 这个占位符不能用"%d,%d" 可以用空格隔开也不能用,隔开 占位符读取定义
if (data1 > data2)
{
printf("大数为%d ,小数为%d", data1, data2);
}
else {
max = data2;
data2 = data1;
data1 = max;
printf("大数为%d ,小数为%d", data1, data2);
}
system("pause");
return 0;
}
```c
三个数交换如何实现?
```c
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<stdlib.h>
int main() {
int data1;
int data2;
int data3;
int max;
int min;
puts("请输入三个数字");
scanf("%d%d%d", &data1, &data2,&data3);
max = data1 < data2 ? data2 : data1; // 假设数据1最大 并且与2相比
if (max ==data2)// 2比1大
{ max =data2< data3 ? data3 : data2;
if (max == data3)//3最大 1最小
{
printf("大数为%d中数为 %d小数为%d", max, data2, data1);
}
else
{// 相当于max=data2比data3大 且还大于data1
if (data1 > data3)
printf("大数为%d 中数为 %d小数为%d", max, data1, data3);
if (data1 < data3 && data3 < max)
printf("大数为%d 中数为 %d小数为%d", max, data3, data1);
}
}
else {//即1与2比较中 1还是最大
min=data2 <data3 ? data2 : data3;
if (min ==data2&&max>data3)
printf("大数为%d中数为 %d小数为%d", max, data3,min);
else if(min == data2 && max < data3)
printf("大数为%d中数为 %d小数为%d", data3,max, min);
else
printf("大数为%d中数为 %d小数为%d",max,data2,min);
}
system("pause");
return 0;
}
二、逻辑代码
1.引入库
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<stdlib.h>
int main() {
int HealthyYesorNot;
int MoneyYesorNot;
int DaFang;
puts("tips:接下来问题都用1表示是 0表示否 感谢!!!\n");
puts("你是否身体好\n");
scanf("%d", &HealthyYesorNot);
if (HealthyYesorNot==1)
{
puts("你是否有钱\n");
scanf("%d", &MoneyYesorNot);
if (MoneyYesorNot==1) {
puts("是不是愿意给我花\n");
scanf("%d", &DaFang);
if (DaFang==1) {
puts("亲亲\n");
}
else {
puts("小气鬼没法聊\n");
}
}
else {
puts("没钱就滚蛋\n");
}
}
else
{
puts("身体不好不适合做朋友\n");
}
system("pause");
return 0;
}
2.swich多分枝
:逻辑性较好 更容易判断
比较容易 跳过了
只需注意形式即可
练习题1
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include<stdlib.h>
int main() {
int x;
int y;
puts("请输入x的值");
scanf("%d",&x);
if (x < 1)
{
y = x;
printf("y的值为%d\n",y);
}
else if (x>=1&&x<10) {
y = 2*x - 1;
printf("y的值为%d\n",y);
}
else if (x >= 10) {
y = 3 * x - 11;
printf("y的值为%d\n",y);
}
return 0;
}
练习题2
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int main() {
int Grade=0;
printf("请输入您的成绩\n");
scanf("%d", &Grade);
Grade = Grade / 10;
switch (Grade)
{
case 1:
case 2:
case 3:
case 4:
case 5:
puts("您的成绩为E\n不及格");
break;
case 6:
puts("您的成绩为D\n");
break;
case 7:
puts("您的成绩为C\n");
break;
case 8:
puts("您的成绩为B\n");
break;
case 9:
puts("您的成绩为A\n");
break;
default:
puts("成绩输入非法,请重新输入");
break;
}
return 0;
}