选择结构程序设计
一、实验目的
1.掌握关系运算符、逻辑运算符、条件运算符使用;
2.掌握if语句定义及使用
3.掌握switch语句定义和使用
二、实验设备与器件
PC机、头歌实践教学平台
三、实验内容
使用头歌平台编程:

(一)设计题目
1、编写一个程序,从键盘上输入一个整数,如果它是正数,就输出它的平方根,否则输出“无效输入”。
C程序1: |
#include <stdio.h> #include <math.h> int main() { int num; double sqrt_num; /***********begin********/ scanf("%d", &num); if (num > 0) { sqrt_num = sqrt(num); printf("%.2lf\n", sqrt_num); } else { printf("无效输入\n"); } /**********end***********/ return 0; }
 |
2、编写一个程序,从键盘上输入三个整数,输出它们的平均值,保留两位小数。如果输入的数有负数或大于 100 的数,则输出“输入错误”。
C程序2: |
#include <stdio.h> int main() { int a, b, c; float average; //scanf("%d%d%d", &a, &b, &c); /***********begin********/ scanf("%d%d%d", &a, &b, &c); if (a < 0 || a > 100 || b < 0 || b > 100 || c < 0 || c > 100) { printf("输入错误\n"); } else { average = (a + b + c) / 3.0; printf("%.2f\n", average); } /**********end***********/ return 0; }
 |
3、 输入两个整数,比较它们的大小,输出较大的那个数。
C程序3: |
#include <stdio.h> int main() { int a, b, max; /***********begin********/ scanf("%d%d", &a, &b); if (a > b) { printf("%d\n", a); } else { printf("%d\n", b); } /**********end***********/ return 0; }
 |
4、输入三个整数,比较它们的大小,输出较大的那个数。
C程序4: |
#include <stdio.h> int main() { int a, b, c, max; /***********begin********/ scanf("%d%d%d", &a, &b, &c); if (a > b) { if (a > c) { max = a; } else { max = c; } } else { if (b > c) { max = b; } else { max = c; } } printf("%d\n", max); /**********end***********/ return 0; }
 |
5、输入一个数字,判断它是正数、负数还是零,输出对应的结果。
C程序5: |
#include <stdio.h> int main() { int num; /***********begin********/ scanf("%d", &num); if (num > 0) { printf("正数\n", num); } else if (num < 0) { printf("负数\n", num); } else { printf("零\n", num); } /**********end***********/ return 0; }
 |
6、本关任务:有一函数:
当 -5<x<0 时,y=x;
当 x=0 时,y=x-1;
当 0<x<10 时,y=x+1;
要求输入x的值,输出y的值,保留2位小数。
在范围外 输出:x的值不在(-5,10)之间
C程序6: |
#include <stdio.h> int main() { float x, y; /***********begin********/ scanf("%f", &x); switch ((int)x) { case -4 ... -1: y = x; break; case 0: y = x - 1; break; case 1 ... 9: y = x + 1; break; default: printf("x的值不在(-5,10)之间\n"); return 0; } printf("%.2f\n", y); /**********end***********/ return 0; }
 |
7、编写一个程序,输入三个整数a、b、c,输出其中的最大值。
C程序7: |
#include <stdio.h> int main(){ int a, b, c; /***********begin********/ scanf("%d%d%d", &a, &b, &c); int max; if(a > b){ max = a; } else{ max = b; } if(max < c){ max = c; } printf("最大值为:%d\n", max); /**********end***********/ return 0; }
 |
8、编写一个程序,输入一个年份,判断其是否为闰年。
C程序8: |
#include <stdio.h> int main(){ int year; /***********begin********/ scanf("%d", &year); if() if(year%4==0){ if(year%100==0){ if(year%400==0){ printf("%d年是闰年\n", year); } else{ printf("%d年不是闰年\n", year); } } else{ printf("%d年是闰年\n", year); } } else{ printf("%d年不是闰年\n", year); } /**********end***********/ return 0; }
 |