
浙大版程序设计
GJINW
这个作者很懒,什么都没留下…
展开
-
6-1 简单输出整数 (10分)
本题要求实现一个函数,对给定的正整数N,打印从1到N的全部正整数。函数接口定义:void PrintN ( int N );其中N是用户传入的参数。该函数必须将从1到N的全部正整数顺序打印出来,每个数字占1行。裁判测试程序样例:#include <stdio.h>void PrintN ( int N );int main (){ int N; scanf("%d", &N); PrintN( N ); return 0;}原创 2020-05-25 09:57:47 · 637 阅读 · 0 评论 -
练习2-6 计算物体自由下落的距离 (5分)
一个物体从100米的高空自由落下。编写程序,求它在前3秒内下落的垂直距离。设重力加速度为10米/秒2。输入格式:本题目没有输入。输出格式:按照下列格式输出height = 垂直距离值结果保留2位小数。#include<stdio.h>int main(){ int t=3,g=10; printf("height = %.2f",1.0/2*g*t*t); return 0;} ...原创 2020-05-18 11:08:57 · 225 阅读 · 0 评论 -
习题11-6 查找子串 (20分)
本题要求实现一个字符串查找的简单函数。函数接口定义:char *search( char *s, char *t );函数search在字符串s中查找子串t,返回子串t在s中的首地址。若未找到,则返回NULL。裁判测试程序样例:#include <stdio.h>#define MAXS 30char *search(char *s, char *t);void ReadString( char s[] ); /* 裁判提供,细节不表 */int main(){原创 2020-05-18 11:07:10 · 559 阅读 · 0 评论 -
练习2-8 计算摄氏温度 (10分)
给定一个华氏温度F,本题要求编写程序,计算对应的摄氏温度C。计算公式:C=5×(F−32)/9。题目保证输入与输出均在整型范围内。输入格式:输入在一行中给出一个华氏温度。输出格式:在一行中按照格式“Celsius = C”输出对应的摄氏温度C的整数值。输入样例:150输出样例:Celsius = 65#include<stdio.h>int main(){ int F,C; scanf("%d",&F); C=5*(F-32)/9; printf("Ce原创 2020-05-16 17:10:46 · 240 阅读 · 0 评论 -
习题11-5 指定位置输出字符串 (20分)
本题要求实现一个函数,对给定的一个字符串和两个字符,打印出给定字符串中从与第一个字符匹配的位置开始到与第二个字符匹配的位置之间的所有字符。函数接口定义:char *match( char *s, char ch1, char ch2 );函数match应打印s中从ch1到ch2之间的所有字符,并且返回ch1的地址。裁判测试程序样例:#include <stdio.h>#define MAXS 10char *match( char *s, char ch1, char ch2原创 2020-05-16 17:08:59 · 407 阅读 · 0 评论 -
练习2-9 整数四则运算 (10分)
本题要求编写程序,计算2个正整数的和、差、积、商并输出。题目保证输入和输出全部在整型范围内。输入格式:输入在一行中给出2个正整数A和B。输出格式:在4行中按照格式“A 运算符 B = 结果”顺序输出和、差、积、商。输入样例:3 2输出样例:3 + 2 = 53 - 2 = 13 * 2 = 63 / 2 = 1#include<stdio.h>int main(){ int A,B; scanf("%d%d",&A,&B); printf("原创 2020-05-15 16:49:13 · 180 阅读 · 0 评论 -
习题11-4 字符串的连接 (15分)
本题要求实现一个函数,将两个字符串连接起来。函数接口定义:char *str_cat( char *s, char *t );函数str_cat应将字符串t复制到字符串s的末端,并且返回字符串s的首地址。裁判测试程序样例:#include <stdio.h>#include <string.h>#define MAXS 10char *str_cat( char *s, char *t );int main(){ char *p; char原创 2020-05-15 16:46:27 · 810 阅读 · 0 评论 -
练习2-10 计算分段函数[1] (10分)
本题目要求计算下列分段函数f(x)的值:输入格式:输入在一行中给出实数x。输出格式:在一行中按“f(x) = result”的格式输出,其中x与result都保留一位小数。输入样例1:10输出样例1:f(10.0) = 0.1输入样例2:0输出样例2:f(0.0) = 0.0#include<stdio.h>int main(){ double x; double result1,result2; scanf("%lf",&x); if (原创 2020-05-15 10:38:52 · 408 阅读 · 0 评论 -
习题11-3 计算最长的字符串长度 (15分)
本题要求实现一个函数,用于计算有n个元素的指针数组s中最长的字符串的长度。函数接口定义:int max_len( char *s[], int n );其中n个字符串存储在s[]中,函数max_len应返回其中最长字符串的长度。裁判测试程序样例:#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAXN 10#define MAXS 20int max_len( cha原创 2020-05-15 10:37:01 · 1608 阅读 · 0 评论 -
练习2-11 计算分段函数[2] (10分)
本题目要求计算下列分段函数f(x)的值:注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂。输入格式:输入在一行中给出实数x。输出格式:在一行中按“f(x) = result”的格式输出,其中x与result都保留两位小数。输入样例1:10输出样例1:f(10.00) = 3.16输入样例2:-0.5输出样例2:f(-0.50) = -2.75#include<stdio.h>#include<math.h>in原创 2020-05-14 16:12:51 · 968 阅读 · 0 评论 -
习题11-2 查找星期 (15分)
本题要求实现函数,可以根据下表查找到星期,返回对应的序号。序号 星期0 Sunday1 Monday2 Tuesday3 Wednesday4 Thursday5 Friday6 Saturday函数接口定义:int getindex( char *s );函数getindex应返回字符串s序号。如果传入的参数s不是一个代表星期的字符串,则返回-1。裁判测试程序样例:#include <stdio.h>#include <string.h>#defi原创 2020-05-14 16:09:36 · 547 阅读 · 1 评论 -
练习2-12 输出华氏-摄氏温度转换表 (15分)
输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper]、且每次增加2华氏度的华氏-摄氏温度转换表。温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。输入格式:在一行中输入2个整数,分别表示lower和upper的值,中间用空格分开。输出格式:第一行输出:“fahr celsius”接着每行输出一个华氏温度fahr(整型)与一个摄氏温度celsius(占据6个字符宽度,靠右对齐,保留1位小数)。若输原创 2020-05-14 10:47:58 · 356 阅读 · 0 评论 -
习题11-1 输出月份英文名 (15分)
本题要求实现函数,可以返回一个给定月份的英文名称。函数接口定义:char *getmonth( int n );函数getmonth应返回存储了n对应的月份英文名称的字符串头指针。如果传入的参数n不是一个代表月份的数字,则返回空指针NULL。裁判测试程序样例:#include <stdio.h>char *getmonth( int n );int main(){ int n; char *s; scanf("%d", &n); s原创 2020-05-14 10:45:48 · 604 阅读 · 0 评论 -
练习2-13 求N分之一序列前N项和 (15分)
本题要求编写程序,计算序列 1 + 1/2 + 1/3 + … 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。输入样例:6输出样例:sum = 2.450000#include<stdio.h>int main(){ int N,n=1; double S=0; scanf("%d",&N); for(n=1;n<=N;n+原创 2020-05-13 15:34:11 · 316 阅读 · 0 评论 -
练习2-14 求奇数分之一序列前N项和 (15分)
本题要求编写程序,计算序列 1 + 1/3 + 1/5 + … 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。输入样例:23输出样例:sum = 2.549541#include<stdio.h>int main(){ int N,n=1,d=1; double S=0; scanf("%d",&N); for(n=1;n<原创 2020-05-12 10:37:51 · 176 阅读 · 0 评论 -
习题10-7 十进制转换二进制 (15分)
本题要求实现一个函数,将正整数n转换为二进制后输出。函数接口定义:void dectobin( int n );函数dectobin应在一行中打印出二进制的n。建议用递归实现。裁判测试程序样例:#include <stdio.h>void dectobin( int n );int main(){ int n; scanf("%d", &n); dectobin(n); return 0;}/* 你的代码将被嵌在这里 */原创 2020-05-12 10:36:02 · 434 阅读 · 0 评论 -
练习2-15 求简单交错序列前N项和 (15分)
本题要求编写程序,计算序列 1 - 1/4 + 1/7 - 1/10 + … 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后三位。题目保证计算结果不超过双精度范围。输入样例:10输出样例:sum = 0.819#include<stdio.h>int main(){ int N,n=1,d=1; double S=0; double f=1; int cnt=0; scanf原创 2020-05-11 19:24:42 · 177 阅读 · 0 评论 -
习题10-6 递归求Fabonacci数列 (10分)
本题要求实现求Fabonacci数列项的函数。Fabonacci数列的定义如下:f(n)=f(n−2)+f(n−1) (n≥2),其中f(0)=0,f(1)=1。函数接口定义:int f( int n );函数f应返回第n个Fabonacci数。题目保证输入输出在长整型范围内。建议用递归实现。裁判测试程序样例:#include <stdio.h>int f( int n );int main(){ int n; scanf("%d", &n);原创 2020-05-11 19:23:30 · 3390 阅读 · 0 评论 -
练习2-17 生成3的乘方表 (15分)
输入一个非负整数n,生成一张3的乘方表,输出30 ~3n 的值。可调用幂函数计算3的乘方。输入格式:输入在一行中给出一个非负整数n。输出格式:按照幂的递增顺序输出n+1行,每行格式为“pow(3,i) = 3的i次幂的值”。题目保证输出数据不超过长整型整数的范围。输入样例:3输出样例:pow(3,0) = 1pow(3,1) = 3pow(3,2) = 9pow(3,3) = 27#include<stdio.h>#include<math原创 2020-05-11 10:36:29 · 216 阅读 · 0 评论 -
习题10-5 递归计算Ackermenn函数 (15分)
本题要求实现Ackermenn函数的计算,其函数定义如下:函数接口定义:int Ack( int m, int n );其中m和n是用户传入的非负整数。函数Ack返回Ackermenn函数的相应值。题目保证输入输出都在长整型范围内。裁判测试程序样例:#include <stdio.h>int Ack( int m, int n );int main(){ int m, n; scanf("%d %d", &m, &n); prin原创 2020-05-11 10:34:16 · 461 阅读 · 0 评论 -
练习2-18 求组合数 (15分)
本题要求编写程序,根据公式添加链接描述 算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。输入格式:输入在一行中给出两个正整数m和n(m≤n),以空格分隔。输出格式:按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。输入样例:2 7输出样例:result = 21#include<stdio.h> double fact (int n)原创 2020-05-09 16:17:41 · 376 阅读 · 0 评论 -
习题10-4 递归求简单交错幂级数的部分和 (15分)
本题要求实现一个函数,计算下列简单交错幂级数的部分和:f(x,n)=x−x2+x3−x4+⋯+(−1)n−1xn函数接口定义:double fn( double x, int n );其中题目保证传入的n是正整数,并且输入输出都在双精度范围内。函数fn应返回上述级数的部分和。建议尝试用递归实现。裁判测试程序样例:#include <stdio.h>double fn( double x, int n );int main(){ doub原创 2020-05-09 16:14:34 · 1052 阅读 · 0 评论 -
习题2-1 求整数均值 (10分)
本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。输入格式:输入在一行中给出4个整数,其间以空格分隔。输出格式:在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位。输入样例:1 2 3 4输出样例:Sum = 10; Average = 2.5#include<stdio.h>int main(){ int a,b,c,d; int Sum; double Average;原创 2020-05-09 10:49:02 · 420 阅读 · 0 评论 -
习题10-3 递归实现指数函数 (15分)
本题要求实现一个计算x的n次方(n≥1)的函数。函数接口定义:double calc_pow( double x, int n );函数calc_pow应返回x的n次幂的值。建议用递归实现。题目保证结果在双精度范围内。裁判测试程序样例:#include <stdio.h>double calc_pow( double x, int n );int main(){ double x; int n; scanf("%lf %d", &x, &a原创 2020-05-09 10:47:20 · 387 阅读 · 0 评论 -
习题2-2 阶梯电价 (15分)
为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。请编写程序计算电费。输入格式:输入在一行中给出某用户的月用电量(单位:千瓦时)。输出格式:在一行中输出该用户应支付的电费(元),结果保留两位小数,格式如:“cost...原创 2020-05-08 15:35:40 · 531 阅读 · 0 评论 -
习题10-2 递归求阶乘和 (15分)
本题要求实现一个计算非负整数阶乘的简单函数,并利用该函数求 1!+2!+3!+…+n! 的值。函数接口定义:double fact( int n );double factsum( int n );函数fact应返回n的阶乘,建议用递归实现。函数factsum应返回 1!+2!+…+n! 的值。题目保证输入输出在双精度范围内。裁判测试程序样例:#include <stdio.h...原创 2020-05-08 15:33:16 · 263 阅读 · 0 评论 -
习题2-3 求平方与倒数序列的部分和 (15分)
本题要求对两个正整数m和n(m≤n)编写程序,计算序列和m输入格式:输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。输入样例:5 10输出样例:sum = 355.845635#include<stdio.h>#include<...原创 2020-05-08 12:35:42 · 216 阅读 · 0 评论 -
习题10-1 判断满足条件的三位数 (15分)
本题要求实现一个函数,统计给定区间内的三位数中有两位数字相同的完全平方数(如144、676)的个数。函数接口定义:int search( int n );其中传入的参数int n是一个三位数的正整数(最高位数字非0)。函数search返回[101, n]区间内所有满足条件的数的个数。裁判测试程序样例:#include <stdio.h>#include <math....原创 2020-05-08 12:32:04 · 286 阅读 · 0 评论 -
练习10-1 使用递归函数计算1到n之和 (10分)
本题要求实现一个用递归计算1+2+3+…+n的和的简单函数。函数接口定义:int sum( int n );该函数对于传入的正整数n返回1+2+3+…+n的和;若n不是正整数则返回0。题目保证输入输出在长整型范围内。建议尝试写成递归函数。裁判测试程序样例:#include <stdio.h>int sum( int n );int main(){ int ...原创 2020-05-07 14:32:23 · 892 阅读 · 1 评论 -
习题2-4 求交错序列前N项和 (15分)
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+… 的前N项之和。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,结果保留三位小数。输入样例:5输出样例:0.917#include<stdio.h>int main(){ int N,cnt; double S=0; int n=1; double...原创 2020-05-07 10:54:51 · 455 阅读 · 0 评论 -
习题9-6 按等级统计学生成绩 (20分)
本题要求实现一个根据学生成绩设置其等级,并统计不及格人数的简单函数。函数接口定义:int set_grade( struct student *p, int n );其中p是指向学生信息的结构体数组的指针,该结构体的定义为:struct student{ int num; char name[20]; int score; char grade;};...原创 2020-05-07 10:52:53 · 638 阅读 · 0 评论 -
习题2-5 求平方根序列前N项和 (15分)
本题要求编写程序,计算平方根序列的前N项之和。可包含头文件math.h,并调用sqrt函数求平方根。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后两位。题目保证计算结果不超过双精度范围。输入样例:10输出样例:sum = 22.47#include<stdio.h>#include<m...原创 2020-05-06 16:47:58 · 196 阅读 · 0 评论 -
习题9-2 计算两个复数之积 (15分)
本题要求实现一个计算复数之积的简单函数。函数接口定义:struct complex multiply(struct complex x, struct complex y);其中struct complex是复数结构体,其定义如下:struct complex{ int real; int imag;};裁判测试程序样例:#include <stdio.h...原创 2020-05-06 16:44:50 · 425 阅读 · 0 评论 -
习题2-6 求阶乘序列前N项和 (15分)
本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。输入格式:输入在一行中给出一个不超过12的正整数N。输出格式:在一行中输出整数结果。输入样例:5输出样例:153#include<stdio.h>int fact(int n)//定义函数{ int i,result=1;//result不定义会被当做0 for(i=1;i<=n;i++...原创 2020-05-06 10:07:37 · 354 阅读 · 0 评论 -
习题8-9 分类统计各类字符个数 (15分)
本题要求实现一个函数,统计给定字符串中的大写字母、小写字母、空格、数字以及其它字符各有多少。函数接口定义:void StringCount( char *s );其中 char *s 是用户传入的字符串。函数StringCount须在一行内按照大写字母个数 小写字母个数 空格个数 数字个数 其它字符个数的格式输出。裁判测试程序样例:#include <stdio.h>#d...原创 2020-05-06 10:04:12 · 274 阅读 · 0 评论 -
练习3-2 计算符号函数的值 (10分)
对于任一整数n,符号函数sign(n)的定义如下:请编写程序计算该函数对任一输入整数的值。输入格式:输入在一行中给出整数n。输出格式:在一行中按照格式“sign(n) = 函数值”输出该整数n对应的函数值。输入样例1:10输出样例1:sign(10) = 1输入样例2:0输出样例2:sign(0) = 0输入样例3:-98输出样例3:sign(-98)...原创 2020-05-05 15:59:34 · 241 阅读 · 0 评论 -
习题8-8 判断回文字符串 (20分)
本题要求编写函数,判断给定的一串字符是否为“回文”。所谓“回文”是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。函数接口定义:bool palindrome( char *s );函数palindrome判断输入字符串char *s是否为回文。若是则返回true,否则返回false。裁判测试程序样例:#include <stdio.h>#incl...原创 2020-05-05 15:57:18 · 209 阅读 · 0 评论 -
练习3-3 统计学生平均成绩与及格人数 (15分)
本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。输入格式:输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。输出格式:按照以下格式输出:average = 成绩均值count = 及格人数其中平均值精确到小数点后一位。输入样例:577 54 92 73 60...原创 2020-05-05 09:50:55 · 857 阅读 · 0 评论 -
习题8-6 删除字符 (20分)
本题要求实现一个删除字符串中的指定字符的简单函数。函数接口定义:void delchar( char *str, char c );其中char *str是传入的字符串,c是待删除的字符。函数delchar的功能是将字符串str中出现的所有c字符删除。裁判测试程序样例:#include <stdio.h>#define MAXN 20void delchar( cha...原创 2020-05-05 09:45:49 · 332 阅读 · 0 评论 -
练习3-4 统计字符 (15分)
本题要求编写程序,输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。输入格式:输入为10个字符。最后一个回车表示输入结束,不算在内。输出格式:在一行内按照letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数 的格式输出。输入样例:aZ &09 Az输出样例:letter =...原创 2020-05-04 16:31:45 · 255 阅读 · 0 评论