c语言程序设计实训教程作业
1.
文字描述;
1.定义一个标识符N等于8;
2.声明两个整数类型常量x=2,z=1;
3.声明一个double类型的常量y=1.2;
4.用Switch判断x
5.x等于2 执行y++;x等于字符0 y=3 都不符合 y=1.2;
6.输出y的值;
流程图

代码:
#include<stdio.h>
int main()
#define N 8
{
int x = 2, z = 1;
double y = 1.2;
switch (x)
{
case 2:
y++;
break;
case '0':
y = 3;
}
printf("%.2f\n", y);
}
截图:

2.
文字描述;
1.声明两个整型变量x,y;
2.输入x,y的值;
3.用switch语句判断(x - abs(x))
4.等于0 y=1 ;否则y=-1
5.输出y的值;
流程图:

代码:
#include<stdio.h>
int main()
{
int x, y;
scanf_s("%d,%d", &x, &y);
switch (x - abs(x))
{
case 0:
y = 1;
break;
default:
y = -1;
}
printf("%d", y);
return 0;
}
截图:

3.
语言描述:
1.声明两个整型常量i=1,n=0;
2.用switch判断x;
3.等于1 无 ,等于2执行n++,等于3执行n++;
4.输出n的值;
流程图:

代码:
#include<stdio.h>
int main()
{
int i = 1, n = 0;
switch (i)
{
case 1:
case 2: n++;
case 3: n++;
}
printf("%d", n);
return 0;
}
截图:

4.
文字描述:
1.声明一个字符类型变量x;声明两个double类型变量a,b;
2.输入a,x,b的值;
3.用Switch判断(x);
4.等于'+',输出a+b的值并保留两位小数;等于'-',输出a-b的值并保留两位小数;等于'*',输出a*b的值并保留两位小数;等于'/',如果b=0输出'0',否则输出a/b的值并保留两位小数;
5.default输出“无解”;
流程图:

代码:
#include<stdio.h>
int main()
{
char x;
double a, b;
scanf_s("%lf,%c,%lf", &a, &x, &b);
switch (x)
{
case '+':
printf("=%.2f\n", a + b);
break;
case '-':
printf("=%.2f\n", a - b);
break;
case '*':
printf("=%.2f\n", a * b);
break;
case '/':
if (b == 0)
printf("0");
else
printf("=%.2f\n", a / b);
break;
default:
printf("无解\n");
break;
}
return 0;
}
截图:

5.
文字描述:
1.声明三个整型变量a,x,y;
2.输入x的值;
3.用if语句判断x是否小于1万;是则输出y=1000;
否则再判断x是否小于2万,是则输出y = 1000 + (x - 10000) * 0.05的值;
否则再判断x是否小于5万,是则输出y = 1000 + (x - 20000) * 0.06的值;
否则再判断x是否小于10万,是则输出y = 1000 + (x - 50000) * 0.07的值;
否则输出y = 1000 + (x - 100000) * 0.08的值;
4.输出y的值;
流程图:

代码:
#include<stdio.h>
int main()
{
int a, x, y;
scanf_s("%d", &x);
if (x < 10000)
y = 1000;
else if (x < 20000)
y = 1000 + (x - 10000) * 0.05;
else if (x < 50000)
y = 1000 + (x - 20000) * 0.06;
else if (x < 100000)
y = 1000 + (x - 50000) * 0.07;
else
y = 1000 + (x - 100000) * 0.08;
printf("%d", y);
return 0;
}
截图:
