1、第一章
1.1
题目容:
使用printf()在屏幕上输出 hello world!
提示:
#include
2、多行信息(3分)
题目容:
使用printf()函数在屏幕上输出以下多行信息:
hello world!
hello hit!
hello everyone!
提示:
在printf()函数中转义字符‘\n’表示换行。
输入格式:
输出格式:
输出提示信息:
"hello world!\n"
"hello hit!\n"
"hello everyone!\n"
输入样例:
输出样例:
hello world!
hello hit!
hello everyone!
#include
3、 printf("hello world!\n"); printf("hello hit!\n"); printf("hello everyone!\n"); return 0; } 1.3 计算半圆弧的周长与半圆面积(3分) 题目容: 编程并输出半径r=5.3的半圆弧的周长与该半圆的面积,的取值为3.14159。要求半径r和必须利用宏常量表示。 输入格式: 无 输出格式: 半圆的面积输出格式: "Area=%f\n" 半圆弧的周长输出格式: "circumference=%f\n" 输入样例: 输出样例: Area
4、44.123632
circumference=16.650427
#include
5、出格式:
长方体的体积输出格式:"volume=%.3f\n"
输入样例:
输出样例:
#include
6、2位小数。
提示:使用数学函数需要在程序中加入编译预处理命令 #include
7、 y:\n"); float x, y; scanf("%f,%f", &x, &y); printf("result=%.2f\n", pow(x,2)+pow(y,2)); return 0; } 3.2 逆序数的拆分计算(3分) 题目容: 从键盘输入一个4位数的整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入-1234,忽略负号,由1234分离出其千位1、百位2、十位3、个位4,然后计算4*1000+3*100+2*10+1 = 4321,并输出4321。再将得到的逆序数4321拆分为两个2位数的正整数43和21,计算并输
8、出拆分后的两个数的平方和的结果。
以下是程序的输出示例:
Input x:
-1234↙
y=4321
a=43,b=21
result=2290
输入格式:
"%d"
输出格式:
输入提示信息:"Input x:\n"
逆序数输出格式:"y=%d\n"
逆序数拆分后的输出格式:"a=%d,b=%d\n"
平方和的输出格式:"result=%d\n"
输入样例:
输出样例:
#include
9、f("%d", &x); if(x<=0) { x=-x; } int a, b, c, d; a=x/1000; b=x/100%10; c=x/10%10; d=x%10; printf("y=%d\n", d*1000+c*100+b*10+a); printf("a=%d,b=%d\n", d*10+c, b*10+a); printf("result=%d\n", (b*10+a)*(b*10+a)+(d*10+c)*(d*10+c)); retu
10、rn 0; } 3.3 拆分英文名(3分) 题目容: 从键盘输入某同学的英文名(小写输入,假设学生的英文名只包含3个字母。如: tom),编写程序在屏幕上输出该同学的英文名,且首字母大写(如: Tom)。同时输出组成该英文名的所有英文字符在26个英文字母中的序号。 以下为程序的输出示例: input your English name: tom↙ Tom t:20 o:15 m:13 输入格式: "%c%c%c" 输出格式: 输入提示信息:"input your English name:\n" 首字母大写的英文的输出格式:"%c%c%c\n" 中每
11、个字母在26个英文字母中的序号的输出格式:"%c:%d\n"
输入样例:
输出样例:
#include
12、 printf("%c:%d\n", c, c-'a'+1); return 0; } 3.4 计算体指数(3分) 题目容: 从键盘输入某人的身高(以厘米为单位,如174cm)和体重(以公斤为单位,如70公斤),将身高(以米为单位,如1.74m)和体重(以斤为单位,如140斤)输出在屏幕上,并按照以下公式计算并输出体指数,要求结果保留到小数点后2位。 假设体重为w公斤,身高为h米,则体指数的计算公式为: 以下是程序的输出示例: input weight, height: 70,174↙ weight=140 height=1.
13、74
t=23.12
输入格式:
"%d,%d"
输出格式:
输入提示信息:"input weight, height:\n" (注意:在height和逗号之间有一个空格)
体重输出格式:"weight=%d\n"
身高输出格式:"height=%.2f\n"
体指数输出格式:"t=%.2f\n"
输入样例:
输出样例:
#include
14、y); printf("weight=%d\n", x*2); printf("height=%.2f\n", y/100.0); printf("t=%.2f\n", x/((y/100.0)*(y/100.0))); return 0; } 第四章 4.1 数位拆分v2.0(4分) 题目容: 从键盘上输入一个4位数的整数n,编写程序将其拆分为两个2位数的整数a和b,计算并输出拆分后的两个数的加、减、乘、除和求余运算的结果。例如n=-4321,设拆分后的两个整数为a,b,则a=-43,b=-21。除法运算结果要求精确到小数点后2位。求余和
15、除法运算需要考虑除数为0的情况,即如果拆分后b=0,则输出提示信息"the second operater is zero!" 程序的运行结果示例1: please input n: 1200↙ 12,0 sum=12,sub=12,multi=0 the second operater is zero! 程序的运行结果示例2: please input n: -2304↙ -23,-4 sum=-27,sub=-19,multi=92 dev=5.75,mod=-3 输入格式: "%d" 输出格式: 输入提示信息:"please input n
16、\n"
拆分后的两个整数的输出格式:"%d,%d\n"
加法、减法、乘法的输出格式:"sum=%d,sub=%d,multi=%d\n"
除法和求余的输出格式:"dev=%.2f,mod=%d\n"
除数为0的提示信息:"the second operater is zero!\n"
输入样例:
输出样例:
#include
17、 printf("%d,%d\n",x,y); printf("sum=%d,sub=%d,multi=%d\n",x+y,x-y,x*y); if (y!=0){ printf("dev=%.2f,mod=%d\n",(float)x/y,x%y); } else{ printf("the second operater is zero!\n"); } } 4.2 快递费用计算(4分) 题目容: 市的某快递公司根据投送目的地距离公司的远近,将全国划分成5个区域: 0区 1
18、区 2区 3区 4区 同城 临近两省 1500公里(含)以 1500——2500公里 2500公里以上 , ,,,,,安微,,,,,,,。 ,,,,,,XX,,,,,。 ,。 快递费按重量计算,由起重费用、续重费用两部分构成: (1)起重(首重)1公斤按起重资费计算(不足1公斤,按1公斤计算),超过首重的重量,按公斤(不足1公斤,按1公斤计算)收取续重费; (2)同城起重资费10元,续重3元/公斤; (3)寄往1区(江浙两省)的,起重资费10元,续重4元; (4)寄往其他地区的,起重资费统一为15元。而续重部分,不同区域价格不同:2区的续重5元/公
19、斤,3区的续重6.5元/公斤,4区的续重10元/公斤。 编写程序,从键盘输入的目的区域编码和重量,计算并输出运费,计算结果保留2位小数。 提示:续重部分不足一公斤,按1公斤计算。因此,如包裹重量2.3公斤:1公斤算起重,剩余的1.3公斤算续重,不足1公斤按1公斤计算,1.3公斤折合续重为2公斤。如果重量应大于0、区域编号不能超出0-4的围。 程序运行结果示例1: 4,4.5↙ Price: 55.00 程序运行结果示例2: 5,3.2↙ Error in Area Price: 0.00 输入格式: 用逗号分隔的两个数字,第一个表示区域、第二个是重量:"
20、d,%f"
输出格式:
价格的输出格式:"Price: %5.2f\n"
区域错误的提示信息:"Error in Area\n"
输入样例:
输出样例:
#include
21、 x2=ceil(weight-1); } if (area>0&&area<=4){ switch(area){ case(0):price=x1*10+x2*3;break; case(1):price=x1*10+x2*4;break; case(2):price=x1*15+x2*5;break; case(3):price=x1*15+x2*6.5;break; case(4):price=x1*15+x2*10;break;
22、 }
printf("Price: %5.2f\n",price);
}
else {
printf("Error in Area\n");
printf("Price: 0.00\n");
}
return 0;
}
4.3
数据区间判断(5分)
题目容:
从键盘输入一个int型的正整数n(已知:0 23、
Please enter the number:
2563↙
2563: 1000-9999
程序运行结果示例2:
Please enter the number:
156↙
156: 100-999
程序运行结果示例3:
Please enter the number:
36↙
36: 10-99
程序运行结果示例4:
Please enter the number:
3↙
3: 0-9
程序运行结果示例5:
Please enter the number:
10923↙
error!
输入格式:
"%d"
输出格式:
输 24、入提示信息:"Please enter the number:\n"
输出的区间判断:
"%d: 1000-9999\n"
"%d: 100-999\n"
"%d: 10-99\n"
"%d: 0-9\n"
输入错误提示信息:"error!\n"
输入样例:
输出样例:
#include 25、99) printf("%d: 1000-9999\n",x);
else if (x>=0&&x<=9) printf("%d: 0-9\n",x);
else if (x>=10&&x<=99) printf("%d: 10-99\n",x);
else if (x>=100&&x<=999) printf("%d: 100-999\n",x);
else printf("error!\n");
return 0;
}
4.4
计算一元二次方程的根v2.0(3分)
题目容:
根据下面给出的求根公式,计算并输出一元二次方程的两个实根,要 26、求精确到小数点后4位。其中a,b,c的值由用户从键盘输入。如果用户输入的系数不满足根的要求,输出错误提示 "error!"。
程序运行结果示例1:
Please enter the coefficients a,b,c:
1,2,1↙
x1=-1.0000, x2=-1.0000
程序运行结果示例2:
Please enter the coefficients a,b,c:
2,6,1↙
x1=-0.1771, x2=-2.8229
程序运行结果示例3:
Please enter the coefficients a,b,c:
2,1,6↙
erro 27、r!
输入格式:
"%f,%f,%f"
输出格式:
输入提示信息:"Please enter the coefficients a,b,c:\n"
输出格式:"x1=%7.4f, x2=%7.4f\n"
输入错误提示信息:"error!\n"
输入样例:
输出样例:
#include 28、f,%f,%f",&a,&b,&c);
m=b*b-4*a*c;
if (m<0){
printf("error!\n");
}
else{
x1=(-b+sqrt(m))/(2*a);
x2=(-b-sqrt(m))/(2*a);
printf("x1=%7.4f, x2=%7.4f\n",x1,x2);
}
return 0;
}
第五章
5.1
6位密码输入检测(3分)
题目容:
从键盘输入6位仅由数字0~9组成的密码。用户每输入一个密码并按回车 29、键后,程序给出判断:如果是数字,则原样输出该数字,并提示用户目前已经输入了几位密码,同时继续输入下一位密码;否则,程序提示"error",并让用户继续输入下一位密码。直到用户输入的密码全部是数字为止。
以下为程序的运行结果示例:
Input your password:
1↙
1, you have enter 1-bits number
6↙
6, you have enter 2-bits number
a↙
error
d↙
error
4↙
4, you have enter 3-bits number
6↙
6, you have enter 4-bits 30、 number
8↙
8, you have enter 5-bits number
2↙
2, you have enter 6-bits number
输入格式:
数字字符输入格式:"%c"
输出格式:
输入提示信息:"Input your password:\n"
如果输入的是数字,输出格式为:"%c, you have enter %d-bits number\n"
如果输入的不是数字,输出提示信息:"error\n"
输入样例:
输出样例:
#include 31、
int i=0;
printf("Input your password:\n");
while(i<6)
{
scanf("%c",&a);
if (a>=48&&a<=57)
{
printf("%c, you have enter %d-bits number\n",a,++i);
}
else
printf("error\n");
getchar();
}
return 32、 0;
}
5.2
判断一个整型数据有几位v1.0(4分)
题目容:
从键盘输入一个整型数据(int型),编写程序判断该整数共有几位。例如,从键盘输入整数16644,该整数共有5位。
程序运行结果示例1:
Please enter the number:
21125↙
21125: 5 bits
程序运行结果示例2:
Please enter the number:
-12234↙
-12234: 5 bits
输入格式:
"%d"
输出格式:
输入提示信息:"Please enter the number:\n"
判断该整数共有几位: "% 33、d: %d bits\n"
输入样例:
输出样例:
#include 34、的数据)。编写程序判断输入数据中奇数和偶数的个数。如果用户输入的第一个数据就是-1,则程序输出"over!"。否则。用户每输入一个数据,输出该数据是奇数还是偶数,直到用户输入-1为止,分别统计用户输入数据中奇数和偶数的个数。
程序运行结果示例1:
Please enter the number:
1↙
1:odd
5↙
5:odd
8↙
8:even
9↙
9:odd
12↙
12:even
17↙
17:odd
-1↙
The total number of odd is 4
The total number of even is 2
程序运行结果 35、示例2:
Please enter the number:
-1↙
over!
The total number of odd is 0
The total number of even is 0
输入格式:
"%d"
输出格式:
输入提示信息:"Please enter the number:\n"
用户输入的第一个数据就是-1,输出格式:"over!\n"
奇数的输出格式:"%d:odd\n"
偶数的输出格式:"%d:even\n"
输入数据中奇数的个数统计:"The total number of odd is %d\n"
输入数据中偶数的个数统计:" 36、The total number of even is %d\n"
输入样例:
输出样例:
#include 37、 else if (s%2==0){printf("%d:even\n",s);even++;}
else even+=0;
}while (s!=-1);
printf("The total number of odd is %d\n",odd);
printf("The total number of even is %d\n",even);
return 0;
}
5.4
计算球的反弹高度(4分)
题目容:
一个球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下并反弹......,求它在第5次和第10次落地 38、时,分别共经过了多少米?第5次和第10次反弹分别是多高?要求计算结果保留到小数点后3位。用户从键盘输入想要计算的第n次(n<=15)。
程序运行结果示例1:
input:
5↙
5 times:
287.500
3.125
程序运行结果示例2:
input:
10↙
10 times:
299.609
0.098
输入格式:
"%d"
输出格式:
反弹次数:"%d times:\n"
第n次反弹共经过多少米:"%.3f\n"
第n次的反弹高度:"%.3f\n"
输入提示信息:"input:\n"
输入样例:
输出样例:
39、
#include






