例题2-1 Hello World!

本题要求编写程序,输出一个短句“Hello World!”。

输入格式:

本题目没有输入。

输出格式:

在一行中输出短句“Hello World!”。

#includeint main (){printf("Hello World!");return 0;}

例题2-2 输出两行短句

作者 颜晖单位 浙大城市学院

本题要求编写程序,在屏幕上显示两个短句“Programming is fun.”和“And Programming in C is even more fun!”,每行显示一句。

输入格式:

本题目没有输入。

输出格式:

输出两个短句,每行显示一句。注意除了每行的回车不能有任何多余字符。

#includeint main (){printf("Programming is fun.\nAnd Programming in C is even more fun!");return 0;}

例题2-3 计算摄氏温度

作者 颜晖单位 浙大城市学院

本题要求编写程序,计算华氏温度100°F对应的摄氏温度。计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。

输入格式:

本题目没有输入。

输出格式:

fahr = 100, celsius = 计算所得摄氏温度的整数值

#include int main (){int celsius,fahr=100;celsius=5*(fahr-32)/9;printf("fahr = %d, celsius = %d",fahr,celsius);return 0;}

例题2-4 分段计算居民水费

作者 颜晖单位 浙大城市学院

为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−10.5。请编写程序实现水费的计算。

输入格式:

输入在一行中给出非负实数x

输出格式:

按照以下的格式在一行输出月用水量和应交的水费,都精确到小数点后2位。请注意等号的左右各有一个空格。

f(输入的月用水量) = 计算出的应交水费

输入样例1:

9.5

输出样例1:

f(9.50) = 12.67

输入样例2:

15

输出样例2:

f(15.00) = 20.00

输入样例3:

21.3

输出样例3:

f(21.30) = 42.75

#includeint main (){double x,y;scanf("%lf",&x);if(x<=15){y=4*x/3;printf("f(%.2lf) = %.2lf",x,y);}else{y=2.5*x-10.5;printf("f(%.2lf) = %.2lf",x,y);}return 0;}

例题2-5 坚持的力量

作者 颜晖单位 浙大城市学院

本题目要求计算坚持努力后达到的能力值,以第一天的能力值initial为基数,能力值相比前一天提高的值factor就是努力参数,坚持天数为day,让我们一起来看看坚持的力量。

计算公式为result=initial×(1+factor)day,其中result为坚持努力后达到的能力值,initial是能力的初始值,factor是努力参数,day是坚持天数。

输入格式:

输入在一行中顺序给出一个正实数initial、一个实数factor和一个正整数day,以空格分隔。

输出格式:

在一行中按“result = 能力值”的格式输出,其中能力值保留两位小数。请注意等号的左右各有一个空格。

输入样例1:

1.0 0.01 365

输出样例1:

result = 37.78

输入样例2:

1.0 -0.01 365

输出样例2:

result = 0.03

#include#includeint main (){double initial,factor,result;int day;scanf("%lf %lf %d",&initial,&factor,&day);result=initial*pow(1+factor,day);printf("result = %.2f",result); return 0;}

例题2-6 输出华氏-摄氏温度转换表

作者 颜晖单位 浙大城市学院

输入2个正整数lowerupper(lower≤upper≤100),请输出一张取值范围为[lowerupper]、且每次增加1华氏度的华氏-摄氏温度转换表。

温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。

输入格式:

在一行中输入2个整数,分别表示lowerupper的值,中间用空格分开。

输出格式:

第一行输出以下内容,中间有一个空格。

fahr celsius

接着每行输出一个华氏温度fahr(整型,占据4个字符宽度,靠右对齐)与一个摄氏温度celsius(实型,占据6个字符宽度,靠右对齐,保留1位小数)。

若输入的范围不合法,则输出Invalid.。

输入样例1:

31 33

输出样例1:

fahr celsius 31 -0.6 32 0.0 33 0.6

输入样例2:

40 30

输出样例2:

Invalid.

#includeint main(){int lower,upper,fahr;double celsius;scanf("%d %d",&lower,&upper);if(lower<=upper&&upper<=100){printf("fahr celsius\n");for(fahr=lower;fahr<=upper;fahr++){celsius=5.0*(fahr-32)/9;printf("%4d %6.1lf\n",fahr,celsius);}}else{printf("Invalid.");}return 0;}

例题2-7 求1到N的和

作者 颜晖单位 浙大城市学院

本题要求编写程序,计算序列 1 + 2 + 3 + … 的前N项之和。

输入格式:

输入在一行中给出一个正整数N

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,请注意等号的左右各有一个空格。题目保证计算结果不超过长整型整数的范围。

输入样例:

100

输出样例:

sum = 5050

#includeint main(){int sum=0,i,N;scanf("%d",&N);for(i=1;i<=N;i++){sum=sum+i;}printf("sum = %d",sum);return 0;}

例题2-8 求简单交错序列前N项和[1]

作者 颜晖单位 浙大城市学院

本题要求编写程序,计算序列 1 – 1/3 + 1/5 – 1/7 + … 的前N项之和

输入格式:

输入在一行中给出一个正整数N

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位,请注意等号的左右各有一个空格。题目保证计算结果不超过双精度范围。

输入样例:

5

输出样例:

sum = 0.834921

//m是分母,f是分数前面的正负号,item是完整的第N项

#include int main (){int N,m,f,i;double sum,item;scanf("%d",&N);f=1;m=1;item=1;sum=0;for(i=1;i<=N;i++){sum=sum+item;f=-f;m=m+2;item=f*1.0/m;}printf("sum = %0.6lf",sum); return 0; }

例题2-9 求N的阶乘

作者 颜晖单位 浙大城市学院

本题要求编写程序,计算N的阶乘。

输入格式:

输入在一行中给出一个非负整数N(0≤N≤21)。

输出格式:

在一行中按照“product = F”的格式输出阶乘的值F,请注意等号的左右各有一个空格。题目保证计算结果不超过双精度范围。

输入样例:

5

输出样例:

product = 120

#include int main (){int n,i;double sum=1;scanf("%d",&n);for(i=1;i<=n;i++)sum=i*sum;printf("product = %.lf",sum);return 0;}

例题2-10 生成2的乘方表

作者 颜晖单位 浙大城市学院

输入一个非负整数n,生成一张2的乘方表,输出2的零次幂~2的n次幂的值。可调用幂函数计算2的乘方。

输入格式:

输入在一行中给出一个非负整数n

输出格式:

按照幂的递增顺序输出n+1行,每行格式为“pow(2,i) = 2的i次幂的值”,请注意等号的左右各有一个空格。题目保证计算结果不超过整数的取值范围。

输入样例:

3

输出样例:

pow(2,0) = 1 pow(2,1) = 2 pow(2,2) = 4 pow(2,3) = 8

#include#includeint main (){int n,i,j;scanf("%d",&n);for(i=0;i<=n;i++){j=pow(2,i);printf("pow(2,%d) = %d\n",i,j);}return 0;

例题2-11日期格式化

分数 5

全屏浏览题目

切换布局

作者 陈越单位 浙江大学

世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。

输入格式:

输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。

输出格式:

在一行中按照“yyyy-mm-dd”的格式给出年、月、日。

输入样例:

03-15-2017

输出样例:

2017-03-15

#include int main (){int y,m,d;scanf("%d-%d-%d",&m,&d,&y);printf("%d-%02d-%02d",y,m,d);return 0;}