c语言习题及答案-爱课程mooc 下载本文

The_person's_age_is_18 输入样例2: 10↙ 输出样例2:

The_person's_age_is_28

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串! (注意:在输出中,“_”代表空格,如果直接将上段示例粘贴到代码中,应将其替换为空格。)

#include

unsigned int Age(unsigned int age); int main() {

unsigned int n=0; scanf(\

printf(\ return 0; }

unsigned int Age(unsigned int n) {

if (n==1)

return 10; else

return Age(n-1)+2; }

7.2

魔术师猜数(4分)

题目内容:

在一种室内互动游戏中,魔术师要每位观众心里想一个三位数abc(a、b、c分别是百位、十位和个位数字),然后魔术师让观众心中记下acb、bac、bca、cab、cba五个数以及这5个数的和值。只要观众说出这个和是多少,则魔术师一定能猜出观众心里想的原数abc是多少。例如,观众甲说他计算的和值是1999,则魔术师立即说出他想的数是443,而观众乙说他计算的和值是1998,则魔术师说:“你算错了!”。请编程模拟这个数字魔术游戏。要求用函数实现,函数原型:int Magic(int m);其中形参m代表观众计算的和值。 输入格式: \ 输出格式:

观众计算错误,魔术师给出的结论:\ 观众计算正确,魔术师给出的结论:\ 输入样例1: 1998↙ 输出样例1:

The_sum_you_calculated_is_wrong! 输入样例2: 1999↙

输出样例2: The_number_is_443

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串! (注意:在输出中,“_”代表空格,如果直接将上段示例粘贴到代码中,应将其替换为空格。)

#include int Magic(int m); int main() {

int m;

scanf(\ if( Magic(m))

printf(\ else

printf(\ return 0; }

int Magic(int n); {

int m; int a,b,c;

for (m=100;m<1000;m++) {

a=m/100; c=m;

b=(m-a*100)/10;

if (a*122+b*212+c*221==n) return m; }

return 0; }

7.3

寻找中位数v1.0(4分)

题目内容:

编写一个函数返回三个整数中的中间数。函数原型:int mid(int a, int b, int c); 功能是返回a,b,c三数中大小位于中间的一个数。 输入格式:

\

输出格式:

\

输入样例1: 12 6 18↙ 输出样例1: The_result_is_12

输入样例2: -9 7 -2↙ 输出样例2: The_result_is_-2

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串! (注意:在输出中,“_”代表空格,如果直接将上段示例粘贴到代码中,应将其替换为空格。)

#include

int mid(int a, int b, int c); int main(){ int a,b,c;

scanf(\

printf(\ return 0; }

int mid(int a, int b, int c) {

int j,i,t;

int m[3]={a,b,c}; for (i=0;i<2;i++)

for (j=i;j<=2;j++) if (m[j]>m[i]) {t=m[j]; m[j]=m[i]; m[i]=t; } return m[1]; }

7.4

还原算术表达式(4分)

题目内容:

编写程序求以下算式中XYZ的值。

输入格式:

输出格式:\ 输入样例: 输出样例: X=3,Y=2,Z=1

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!

#include

int mid(int a, int b, int c); int main() {

int x,y,z;

for (x=0;x<9;x++)

for (y=0;y<9;y++) for (z=0;z<9;z++)

if ((x*100+y*110+z*12)==532)

printf(\ return 0; }

第八章

8.1

计算礼炮声响次数(4分)

题目内容:

在海军节开幕式上,有A、B、C三艘军舰要同时开始鸣放礼炮各21响。已知A舰每隔5秒放1次,B舰每隔6秒放1次,C舰每隔7秒放1次。假设各炮手对时间的掌握非常准确,请编程计算观众总共可以听到几次礼炮声。

输入格式:无 输出格式:

n=%d

输入样例: 输出样例:

注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!

#include int main() {

int t,n=0;

for (t=0;t<=140;t++) {

if (t%5==0&& t<=21*5) {

n++;

continue; }

if (t%6==0 && t<=21*6) {