习题 4.6 有一个函数:y=x (x<1) y=2x-1 (1<=x<10) y=3x-11 (x>=10) 写程序,输入x的值,输出y相应的值。
2017-08-06 11:48
651 查看
C程序设计 (第四版) 谭浩强 习题4.6 个人设计
有一个函数:
y⎧⎩⎨x2x−13x−11(x<1)(1≤x<10)(x≥10)
写程序,输入x的值,输出y相应的值。
代码块方法1:(利用选择结构)
#include <stdio.h> #include <math.h> int main() { int x, y; printf("Please enter x: "); scanf("%d", &x); if (x < 1) y = x; else if (x >= 1 && x <10) y = 2 * x - 1; else y = 3 * x - 11; printf("y = %d\n", y); return 0; }
方法2:(利用函数的模块化设计)
#include <stdio.h> void input(); //定义输入函数 void function(int m); //定义功能函数 void action1(int n); //定义行为1函数 void action2(int p); //定义行为2函数 void action3(int q); //定义行为3函数 int x; //定义全局变量 int main() { input(); //调用输入函数 function(x); //调用功能函数 return 0; } //输入函数 void input() { printf("Please enter x: "); scanf("%d", &x); } //功能函数 void function(int m) { //通过条件表达式判断,然后执行相应的行为函数 m < 1 ? action1(m) : (m >= 10 ? action3(m) : action2(m)); } //行为1函数 void action1(int n) { printf("y = %d\n", n); } //行为2函数 void action2(int p) { printf("y = %d\n", 2*p-1); } //行为3函数 void action3(int q) { printf("y = %d\n", 3*q-11); }
相关文章推荐
- c语言:有一函数:当x&lt;0,y=-1;x=0,y=0;x&gt;0,y=1;编一程序,输入一个x值,要求输出相应的y值。
- c语言:有一函数:当x<0,y=-1;x=0,y=0;x>0,y=1;编一程序,输入一个x值,要求输出相应的y值。
- 习题 6.14 编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2, 输出0;若s1<s2,输出一个负数。不要用strcmp函数。两个字符串用gets函数输入。
- c程序:有一函数当x<0时y=1,当x>0时,y=3,当x=0时y=5,编程,从键盘输入一个x值,输出y值
- 60}的C程序 高手帮忙写下`` 46 35 27 21 16 10 9 5 然后输出数组a。已知 int a[11]={1 使数组a仍然有序 将x插入到有序整型数组a中 由键盘输入一个整数x
- 【c语言】有一个函数: x < 1 --- y = x 1 <= x < 10 --- y = 2 * x - 1 x >= 10 --- y = 3 * x - 11 输
- 有一函数当x<0时y=1,当x>0时,y=3,当x=0时y=5,编程,从键盘输入一个x值,输出y值
- 4.有一函数当x<0时y=1,当x>0时,y=3,当x=0时y=5,编程,从键盘输入一个x值,输出y值.
- 输入n个元素组成的序列S,你需要找出一个乘积最大的连续子序列。如果这个最大的乘积不是正数,应输出0(表示无解)。1<=18,-10<=Si<=10
- 编写函数把华氏温度转换为摄氏温度,公式为:C = (F - 32) * 5/9 在主程序中提示用户输入一个华氏温度,转化后输出相应的摄氏温度。
- 习题 7.16 写一个函数,输入一个十六进制数,输出相应的十进制数。
- 【c语言】有一函数:x < 0 ,y = -1;x = 0,y = 0;x > 0,y = 1,编程输入一个x值,要求输出对应的y
- 习题 7.3 写一个判素数的函数,在主函数输入一个整数,输出是否为素数的信息。
- c程序:编写程序,其中自定义一函数,用来判断一个整数是否为素数,主函数输入一个数,输出是否为素数
- 习题 9.3 编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。
- 第九周实验报告任务 1 定义Time类中的<<和>>运算符重载,实现时间的输入输出,改造原程序中对运算结果显示方式,使程序读起来更自然。
- 8.2 习题编写一个程序,在遇到EOF之前,把输入作为字符流读取,程序需要打印每个输入的字符及其相应的ASCLL十进制..........
- 习题 7.12 用牛顿迭代法求根。方程为ax^3+bx^2+cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输入。求x在1附近的一个实根。求出根后由主函数输出。
- ACM457现在给出了一个只包含大小写字母的字符串,不含空格和换行,要求把其中的大写换成小写,小写换成大写,然后输出互换后的字符串。输入 第一行只有一个整数m(m<=10),表示测试数据组数。
- 编写一个程序,将两个字符串s1和s2比较,如果s1 > s2,输出一个正数;s1 = s2,输出0,;s1 < s2输出一个负数。不要使用strcmp函数。