1、 C语言例题 目录 1 输入两个整数,求第一个数除以第二个数所得到的余数 2输入圆的半径,求圆的周长与面积,输出计算结果,输出时要求按题目案例说明,取小数点后2位数字,其中∏=3.14。 3 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。 4 输入一个华氏温度,要求输出摄氏温度。公式为C=(5/9)*(F-32),F为华氏温度,C为摄氏温度。输出取2位小数。 5 小学数学中,我们了解到在自然数中,2,4,8......之类的数为偶数,1,3,5......为奇数。 下面的任务是让计算机来完成,判断所输入的数
2、据是否是奇数。 6 计算购货款,根据输入的购货金额,输出实际付款金额。购货折扣率如下: 购货金额<=500元 不打折 500元<购货金额<=1000元 打9折 1000元<购货金额 打8折 7 有一函数 x (x<1) y= 2x-1 (1≤x<10) 3x-11 (x≥10) 编程实现输入x的值,输出y的值。 8 给出三个整数,请你设计一个程序,求出这三个数的和、乘积和平均数。 9 小瑜是个爱吃糖果的馋鬼,天天嚷着要
3、爸爸买糖果,可是爸爸很忙,哪有时间啊,于是就让小瑜自己去了,糖果3角钱一块,爸爸给小瑜n元钱,请你告诉小瑜最多能买几块糖,还剩几角钱 10 以两个输入为一组,两个浮点数之间用空格分隔。 11 输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下: 90~100为A; 80~89为B; 70~79为C; 60~69为D; 0~59为E; 12 有一函数 x (x<1) y= 2x-1 (1≤x<10) 3x-11 (x≥10) 编程实现输入x的值,输出
4、y的值 13 从键盘接受任一字符, 如果是小写字母转换为大写输出; 如果是大写转换为小写输出; 如果是数字原样输出; 否则显示“error”。 14 输入年和月,判断该月有几天? 15 三角形具有稳定性,现在有三个木棍.要用来搭个三角形。现在从键盘接收三个浮点数,代表三条边,问能否组成三角形,并求其面积。 16 输入三个整数a,b,c。并进行两两相加,最后比较相加和的最大值。 17 春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^
5、3+5^3+3^3 现在要求输出所有在m和n范围内的水仙花数。 18 青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。 19 求n个数的平均值 20 求n以内的所有素数。n(2<=n<=1000) 21 多项式的描述如下: 1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + ... 22 找出数组a中能被3整除的数,要求用数组完成。 23 输入n(n<=100)个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对
6、值都不相等。 24 将给定的一维数组进行逆置,即第一个元素与最后一个元素互换,第二个元素与倒数第二个互换,其余类推。 25 输入n(n<100)个数,找出其中最小的数,将它与第一个数交换后输出这些数 26 找出一个一维数组中的最大值,最小值,并交换其位置。 27 找出一个一维数组中的第一个负数。 28 数组排序 29 我们在键盘上输入的任意一个字符,在计算机中均是由数值保存的,且是固定的。我们称其为ASCII码值。 我们知道,字母a在计算机中存放的时候是按97存放的;字母A是65。但有些字母是我们不知道的。 下面的任务是要
7、求输入任意个字符(不考虑回车符的转换),字符用回车分隔,输出它们的ASCII码,每个数值后带一个空格。每五个一行。 如果超过五个,换另一行。 30 输入多个三位整数,分别倒置后并输出。例如:输入356,输出653 31 制作一个简单的计算机程序,可实现的加减乘除运算('+','-','*','/') 32 大家都知道,手机号是一个11位长的数字串,同时,作为学生,还可以申请加入校园网,如果加入成功,你将另外拥有一个短号。假设所有的短号都是是 6+手机号的后5位,比如号码为13512345678的手机,对应的短号就是645678。 现在,如果给你一个11位长的手
8、机号码,你能找出对应的短号吗 33 从键盘上输入数字星期,然后输出它的英文: 其对应关系是 1 Monday 2 Tuesday 3 Wednesday 4 Thursday 5 Friday 6 Saturday 7 Sunday 34 输入n(n<100)个数,找出其中最小的数,将它与第一个数交换后输出这些数 35 找出一个一维数组中的最大值,最小值,并交换其位置。 36 找出一个一维数组中的第一个负数。 37 数组排序 1 输入两个整数,求第一个数除以第二个数所得到的余数。 Input 输入数据有多组
9、每组占一行,每行中有两个数,用空格分隔。
Output
对于每组输入数据,输出一行
Sample Input
5 2
6 4
7 5
8 2
Sample Output
1
2
2
0
#include
10、3.14。
Input
输入数据有多组,每组占一行,每行中有1个数
Output
对于每组输入数据,输出一行,需要有必要的提示
Sample Input
2
3.5
5
4.2
Sample Output
2.00,long:12.56,area:12.56
3.50,long:21.98,area:38.47
5.00,long:31.40,area:78.50
4.20,long:26.38,area:55.39
#include
11、"%lf",&r)!=EOF) { l=2*3.14*r; s=3.14*r*r; printf("%.2lf,long:%.2lf,area:%.2lf\n",r,l,s); } return 0; } 3 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。 Input 输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。 Output 对于每组输入数据,输出一行,结果保留两位小数。 Sample Input 0 0 0 1 0 1 1 0 Sample Outp
12、ut
1.00
1.41
#include
13、put
输入数据有多组,每组占一行,由1个实数组成
Output
对于每组输入数据,输出一行,要求输出摄氏温度,结果保留两位小数。
Sample Input
78
132
Sample Output
25.56
55.56
#include
14、8......之类的数为偶数,1,3,5......为奇数。
下面的任务是让计算机来完成,判断所输入的数据是否是奇数。
Input
输入整数N,代表下面有N组测试数据。
接下来的N行,每行为一个整数。
Output
输出N个整数的奇偶性,如果是奇数请输出"YES!",否则输出"NO!"。
每个结果占一行。
Sample Input
3
45
75643
5786
Sample Output
YES!
YES!
NO!
#include
15、N); while(N--) { scanf("%d",&a); if(a%2==0) printf("NO!\n",a); else printf("YES!\n",a); } return 0; } 6 计算购货款,根据输入的购货金额,输出实际付款金额。购货折扣率如下: 购货金额<=500元 不打折 500元<购货金额<=1000元 打9折 1000元<购货金额 打8折 Input 输入数据有多组,每组占一行,每行的一个数。 Output 对于每
16、组输入数据,输出一个数,保留一位小数,每组输出占一行。
Sample Input
450
879
2000
Sample Output
450.0
791.1
1600.0
#include
17、}
7 有一函数
x (x<1)
y= 2x-1 (1≤x<10)
3x-11 (x≥10)
编程实现输入x的值,输出y的值。
Input
输入数据有多组,每组占一行,由一个整数组成。
Output
对于每组输入数据,输出一行。
Sample Input
-5
8
17
Sample Output
-5
15
40
#include
18、d",&x)!=EOF) { if(x<1) y=x; else if(x<=10) y=2*x-1; else y=3*x-11; printf("%d\n",y); } return 0; } 8 给出三个整数,请你设计一个程序,求出这三个数的和、乘积和平均数。 Input 输入数据有多组,每组占一行,每行包含3个实验数,分别表示三个正整数a、b、c,数据之间用空格隔开。 Output 输出一行,包括三个的和、乘积、平均数。 数据之间用一个空格隔开,其中平均数保留小数后面两位
19、
Sample Input
1 2 3
Sample Output
6 6 2.00
#include
20、有时间啊,于是就让小瑜自己去了,糖果3角钱一块,爸爸给小瑜n元钱,请你告诉小瑜最多能买几块糖,还剩几角钱
Input
输入数据有多组,每组表示爸爸给小瑜的钱n元,n为整数。
Output
小瑜最多能买回的糖块数以及剩下的钱(单位为:角),用空格分隔。
Sample Input
2
Sample Output
6 2
#include
21、b,c);
}
return 0;
}
10 以两个输入为一组,两个浮点数之间用空格分隔。
Input
对每一组数据输出计算后的结果,一个输出占一行,保留3位小数。如果分母为0的话,就输出“devisor is zero !”。
Output
对每一组数据输出计算后的结果,一个输出占一行,保留3位小数。如果分母为0的话,就输出“devisor is zero !”。
Sample Input
1 2
1 0
3 4
Sample Output
0.500
devisor is zero !
0.750
#include 22、dio.h>
#include 23、ut
输入数据有多组,每组占一行,由一个整数组成。
Output
对于每组输入数据,输出一行。如果输入数据不在0~100范围内,请输出一行:“Score is error!”。
Sample Input
56
67
100
123
Sample Output
E
D
A
Score is error!
#include 24、<70)
printf("D\n");
if(a>=70&&a<80)
printf("C\n");
if(a>=80&&a<90)
printf("B\n");
if(a>=90&&a<=100)
printf("A\n");
if(a<0||a>100)
printf("Score is error!\n");
}
return 0;
}
12 有一函数
x (x<1)
y= 2x-1 (1≤x<10)
3x-11 25、 (x≥10)
编程实现输入x的值,输出y的值。
Input
输入数据有多组,每组占一行,由一个整数组成。
Output
对于每组输入数据,输出一行。
Sample Input
-5
8
17
Sample Output
-5
15
40
#include 26、
y=2*a-1;
printf("%d\n",y);
}
if(a>=10)
{
y=3*a-11;
printf("%d\n",y);
}
}
return 0;
}
13 从键盘接受任一字符,
如果是小写字母转换为大写输出;
如果是大写转换为小写输出;
如果是数字原样输出;
否则显示“error”。
Input
输入一行字符,以回车结束。
Output
每一行为针对输入的每一个字符输出其相应结果。
Sample Input
H5*a
Sample Output 27、
h
5
error
A
#include 28、eturn 0;
}
14 输入年和月,判断该月有几天?
Input
输入数据有多组,每组占一行,表示年和月,格式为年\月。
Output
输出该月的天数。
Sample Input
2009\1
Sample Output
31
#include 29、0&&b==2)
printf("29\n");
if(a%4==0&&b==2&&a%100!=0)
printf("29\n");
if(a%4!=0&&b==2&&a%100!=0)
printf("28\n");
if(b!=2)
{
if(b<=7&&b%2==0)
printf("30\n");
if(b<=7&&b%2!=0)
printf("31\n");
if(b>=8&&b<=12&&b%2==0)
printf("31\n");
if(b>=8 30、b<=12&&b%2!=0)
printf("30\n");
}
}
return 0;
}
15 三角形具有稳定性,现在有三个木棍.要用来搭个三角形。现在从键盘接收三个浮点数,代表三条边,问能否组成三角形,并求其面积。
Input
多组测试数据。
一行输入三个数,数之间用空格分割。
输入0,0,0时表示结束。
Output
一行分两个域,分别是形状描述和面积显示(若不能形成三角形,则不用显示形状描述)。
判断它们是否可以形成一个三角形,若可以,显示“triangle:”,再计算出其面积并紧接着显示面积值,否则显示“fa 31、il to form a triangle.”。
Sample Input
3 4 5.0
1 2 9
6 7 8
0 0 0
Sample Output
triangle:6.000000
fail to form a triangle.
triangle:20.333163
#include 32、b+c)>a&&(a+c)>b)
{
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("triangle:%f\n",s);
}
else
printf("fail to form a triangle.\n");
}
return 0;
}
16 输入三个整数a,b,c。并进行两两相加,最后比较相加和的最大值。
Input
输入多组数据,每组输入数据包含三个整数,用空格分开。
Output
输出两两相加后的最大值。每组占一行
S 33、ample Input
1 2 3
Sample Output
5
#include 34、
17
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3
现在要求输出所有在m和n范围内的水仙花数。
Input
输入数据有多组,每组占一行,包括两个整数m和n(100<=m<=n<=999)。
Output
对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,每个数据后面均有空
格;
如果给定的范围内不 35、存在水仙花数,则输出no;
每个测试实例的输出占一行。
Sample Input
100 120
300 380
Sample Output
no
370 371
#include 36、)
{
printf("%d ",t);
f=1;
}
}
if(f==0)
printf("no\n");
else
printf("\n");
}
return 0;
}
18
青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
Input
输入数据有多组,每组占一行,每行的第一个整数是n(2 37、结果保留2位小数,每组输出占一行。
Sample Input
3 99 98 97
4 100 99 98 97
Sample Output
98.00
98.50
#include 38、
for(i=0;i 39、 Input
3 99 98 97
4 100 99 98 97
Sample Output
98.00
98.50
#include 40、 求n以内的所有素数。n(2<=n<=1000)
Input
输入数据有多组,每组占一行,每行的一个数,表示n。
Output
对于每组输入数据,输出2~n所有的素数,每个数后面带一个空格,每组输出占一行。
Sample Input
10
20
Sample Output
2 3 5 7
2 3 5 7 11 13 17 19
#include 41、 for(i=2;i<=n;i++)
{
s=1;
for(j=2;j<=sqrt(i);j++)
if(i%j==0)
{
s=0;
break;
}
if(s)
printf("%d ",i);
} printf("\n");
}
return 0;
}
21 多项式的描述如下:
1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + ...
Input
42、
输入数据由2行组成,首先是一个正整数m(m<100),表示测试实例的个数,第二行包含m个正整数,对于每一个整数(不妨设为n,n<1000),求该多项式的前n项的和。
Output
对于每个测试实例n,要求输出多项式前n项的和。每个测试实例的输出占一行,结果保留2位小数。
Sample Input
2
1 2
Sample Output
1.00
0.50
#include 43、i=1;i<=m;i++)
{
s=0;
scanf("%d",&n);
for(j=1;j<=n;j++)
{
if(j%2==0)
s=s-(double)1/j;
else
s=s+(double)1/j;
}
printf("%.2lf\n",s);
}
}
return 0;
}
22 找出数组a中能被3整除的数,要求用数组完成。
Input
输入整数N,代表N组数据。接下来的N行中,每行的第一个整数M代表这一行共有M个测试数据(M<100),接 44、下来是这M个数据的数值。
Output
输出每一组数据中能被3整除的数值,及其所在数组中的位置。注意,按生活中的习惯,下标从1算起。如果该测试数据中不含有被3整除的数值,则输出“not found!”每一组数据对应一行输出。
Sample Input
3
3 9 34 12
4 1 2 4 5
2 6 5
Sample Output
a[1]=9 a[3]=12
not found!
a[1]=6
#include 45、while(n--)
{
j=0;f=0;
scanf("%d",&m);
i=1;
while(i<=m)
{
scanf("%d",&a[i]);
j=a[i];
if(j%3==0)
{ printf("a[%d]=%d ",i,j);
f=1;
}
i++;
}
if(f==0)
printf("not found!\n");
else
printf("\n");
}
return 0;
}
23 输入n(n<=100 46、)个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。
Input
输入数据有多组,每组占一行,每行的第一个数字为n,接着是n个整数,n=0表示输入数据的结束,不做处理。
Output
对于每个测试实例,输出排序后的结果,每个数后带一个空格。每个测试实例占一行。
Sample Input
3 3 -4 2
4 0 1 2 -3
0
Sample Output
-4 3 2
-3 2 1 0
Hints
绝对值用数学函数abs,例如变量a的绝对值:abs(a)
#include 47、clude 48、}
for(i=0;i 49、 Sample Output
5 4 3 2 1
1 2 3 4 5 6
#include 50、1)
printf("%d ",a[i]);
else
printf("%d \n",a[i]);
}
}
return 0;
}
25 输入n(n<100)个数,找出其中最小的数,将它与第一个数交换后输出这些数
Input
输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数。n=0表示输入的结束,不做处理。
Output
对于每组输入数据,输出交换后的数列,每组输出占一行。
Sample Input
4 2 1 3 4
5 5 4 3 2 1






