当前位置:文档之家› 成都信息工程学院C语言考试题及答案

成都信息工程学院C语言考试题及答案

编写一程序P111.C实现以下功能x(x只考虑整数int且必须定义为int、但F(x)完全可能超过int的表示范围)通过键盘输入(输入前给出提示Please input x:),然后计算并在屏幕上输出函数值。

编程可用素材:printf("Please input x: ")...、printf("\nF(...) = ..."...。

┌-5x+27 (x<0)F(x)= ├7909 (x=0)└2x-1 (x>0)程序的运行效果应类似地如图1所示,图1中的3是从键盘输入的内容。

#include <stdio.h>int main(void){int x; //x存储自变量x的值double Fx; //Fx存储函数值F(x)/* 从键盘上读入x的值*/printf("Please input x:"); //在屏幕上显示提示输入x的信息,告诉用户需要做的事scanf("%d", &x); //从键盘读入x的值/* 根据题目里给出的计算公式计算F(x) */if (x < 0) //如果x<0{Fx = -5.0 * x + 27; //x<0时的F(x)计算公式}else if (0 == x) //否则,若x等于0{Fx = 7909; //x=0时的F(x)计算公式}else{Fx = 2.0 * x - 1; //x>0时的F(x)计算公式}/* 将计算结果按题目的要求输出*/printf("\nF(%d) = %.0f", x, Fx);return 0;}编写一程序P113.C实现以下功能已知某银行整存整取存款不同期限的年息利率分别为:3.15%期限一年,3. 63%期限二年, 4.02%期限三年,4.69%期限五年,5.36%期限八年。

从键盘上输入存钱的本金(以元为单位,必须定义为int且应考虑金额很大的情况)和存款期限(只考虑1,2,3,5,8),求到期时能从银行得到的利息(以元为单位,应考虑有小数,不计复利)。

编程可用素材:printf("\nPlease input benjin,cunqi:")...、print f("\nlixi = ... yuan"...。

程序的运行效果应类似地如图1所示,图1中的10000,8是从键盘输入的内容。

#include <stdio.h>int main(void){int benjin, cunqi;double lixi, lilv;printf("\nPlease input benjin,cunqi:");scanf("%d,%d", &benjin, &cunqi);if (1 == cunqi){lilv = 3.15 / 100.0;}else if (2 == cunqi){lilv = 3.63 / 100.0;}else if (3 == cunqi){lilv = 4.02 / 100.0;}else if (5 == cunqi){lilv = 4.69 / 100.0;}else if (8 == cunqi){lilv = 5.36 / 100.0;}lixi = benjin * lilv * cunqi;printf("\nlixi = %.2f yuan\n", lixi);return 0;}编写一程序P114.C实现以下功能编写一个简单计算器程序,输入格式为:data1 op data2。

其中data1和da ta2是参加运算的两个数(data1、data2必须定义为int,但二者相加可能超出int 能表示的范围),op为运算符,它的取值只能是+、-、*、/、%。

编程可用素材:printf("Please input data1 op data2: ")...、printf("\nError! chu shu wei 0.\n")...。

程序的运行效果应类似地如图1、图2、图3、图4所示,图1中的3000 + 2 000、图2中的3000 % 2000、图3中的3000 % 0和图4中的3000 / 0是从键盘输入的内容。

#include <stdio.h>#include <stdlib.h>int main(void){int data1, data2;double result;char op;printf("Please input data1 op data2: ");scanf("%d %c %d", &data1, &op, &data2);switch (op){case '+':result = (double)data1 + data2;break;case '-':result = (double)data1 - data2;break;case '*':result = (double)data1 * data2;break;case '%':if (0 == data2){printf("\nError! chu shu wei 0.\n");exit(1);}else{result = data1 % data2;}break;case '/':if (0 == data2){printf("\nError! chu shu wei 0.\n");exit(1);}else{printf("\n%d%c%d=%.2f", data1, op, data2, (double)data1 / data2);return 0;}}printf("\n%d%c%d=%f\n", data1, op, data2, result);return 0;}编写一程序P702.C实现以下功能输入月份,打印2003年该月有几天。

当输入的月份超范围时,应显示“Inv alid month input”。

编程可用素材:printf("please input the month number: ")...、printf("\nInvalid month input !\n")...、printf("\n 2003.... has ... days\n"...。

程序的运行效果应类似地如图1和图2所示,图1中的4和图2中的13是从键盘输入的内容。

#include<stdio.h>int main(void){int month, day;printf("please input the month number: ");scanf("%d", &month);switch (month){case 1:case 3:case 5:case 7:case 8:case 10:case 12:day = 31;break;case 4:case 6:case 9:case 11:day = 30;break;case 2:day = 28;break;default :day = -1;}if (-1 == day){printf("\nInvalid month input !\n");}else{printf("\n 2003.%d has %d days\n", month, day);}return 0;}编写一程序P703.C实现以下功能已知某公司员工的保底薪水为500,某月所接工程的利润profit(整数)与利润提成的关系如下(计量单位:元):profit≤1000没有提成;1000<profit≤2000提成10%;2000<profit≤5000提成15%;5000<profit≤10000提成20%;10000<profit提成25%。

请根据输入的利润计算员工的薪水。

编程可用素材:printf("Input profi t: ")...、printf("\nsalary=...\n"...。

程序的运行效果应类似地如图1所示,图1中的2000是从键盘输入的内容。

#include<stdio.h>int main(void){int profit, grade;double salary = 500;printf("Input profit: ");scanf("%d", &profit);grade = (profit - 1) / 1000;switch (grade){case 0:break;case 1:salary += profit * 0.1;break;case 2:case 3:case 4:salary += profit * 0.15;break;case 5:case 6:case 7:case 8:case 9:salary += profit * 0.2;break;default:salary += profit * 0.25;}printf("\nsalary=%.2f\n", salary);return 0;}编写一程序P708.C实现以下功能输入一个三位正整数,然后逆序输出。

如输入123,则输出321。

编程可用素材:printf("Input an integer: ")...、printf("\nThe result is ...。

程序的运行效果应类似地如图1所示,图1中的750是从键盘输入的内容。

#include <stdio.h>int main(void){int num, bai, shi, ge;printf("Input an integer: ");scanf("%d", &num);bai = num / 100;shi = num % 100 / 10;ge = num % 10;printf("\nThe result is %d%d%d\n", ge, shi, bai);return 0;}编写一程序P709.C实现以下功能输入一个华氏温度,要求输出摄氏温度,计算公式为c=5(F-32)/9。

相关主题