c语言程序设计(第三版)题目
是晴天呐
努力学代码
展开
-
习题4-7 最大公约数和最小公倍数 (15 分)
本题要求两个给定正整数的最大公约数和最小公倍数。输入格式:输入在一行中给出两个正整数M和N(≤1000)。输出格式:在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。输入样例:511 292输出样例:73 2044#include<stdio.h>int max(int x,int y){ int max; if(x>y){max=x;} else{max=y;} return max;}int min(int x,int y){原创 2021-04-03 23:33:55 · 342 阅读 · 0 评论 -
习题5-5 使用函数统计指定数字的个数 (15 分)
int CountDigit( int number, int digit ){ scanf("%d %d",&number,&digit); if (number<0){ number=-number; } int a=number,cnt=0,b; if (a==0&&digit==0){ cnt=1; } while(a>0){ b=a%10; if(b==digit){ cnt++; } a=a/10.原创 2021-03-19 22:47:34 · 152 阅读 · 0 评论 -
习题5-4 使用函数求素数和 (20 分)
int prime( int p ){ int prime=1; if(p>1){ for(int i=2;i<p;i++){ if(p%i==0){ prime=0; } } } else{ prime=0; } return prime;}int PrimeSum( int m, int n ){ .原创 2021-02-18 17:48:29 · 396 阅读 · 0 评论 -
习题5-3 使用函数计算两点间的距离 (10 分)
double dist( double x1, double y1, double x2, double y2 ){ double dist; dist=(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2); dist=sqrt(dist); return dist;}原创 2021-02-18 17:01:24 · 157 阅读 · 0 评论 -
习题5-2 使用函数求奇数和 (15 分)
本题要求实现一个函数,计算N个整数中所有奇数的和,同时实现一个判断奇偶性的函数。函数接口定义:int even( int n );int OddSum( int List[], int N );其中函数even将根据用户传入的参数n的奇偶性返回相应值:当n为偶数时返回1,否则返回0。函数OddSum负责计算并返回传入的N个整数List[]中所有奇数的和。裁判测试程序样例:#include <stdio.h>#define MAXN 10int even( int n );原创 2021-02-18 16:46:02 · 144 阅读 · 0 评论 -
习题5-1 符号函数 (10 分)
本题要求实现符号函数sign(x)。函数接口定义:int sign( int x );其中x是用户传入的整型参数。符号函数的定义为:若x大于0,sign(x) = 1;若x等于0,sign(x) = 0;否则,sign(x) = −1。裁判测试程序样例:#include <stdio.h>int sign( int x );int main(){ int x; scanf("%d", &x); printf("sign(%d) = %d\n原创 2021-02-16 16:56:09 · 147 阅读 · 0 评论 -
练习5-3 数字金字塔 (15 分)
本题要求实现函数输出n行数字金字塔。函数接口定义:void pyramid( int n );其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行数字金字塔。注意每个数字后面跟一个空格。裁判测试程序样例:#include <stdio.h>void pyramid( int n );int main(){ int n; scanf("%d", &n); pyramid(n); return原创 2021-02-16 14:53:37 · 118 阅读 · 0 评论 -
练习5-2 找两个数中最大者 (10 分)
本题要求对两个整数a和b,输出其中较大的数。函数接口定义:int max( int a, int b );其中a和b是用户传入的参数,函数返回的是两者中较大的数。裁判测试程序样例:#include <stdio.h>int max( int a, int b );int main(){ int a, b; scanf("%d %d", &a, &b); printf("max = %d\n", max(a, b));原创 2021-02-16 14:25:02 · 120 阅读 · 0 评论 -
练习5-1 求m到n之和 (10 分)
本题要求实现一个计算m~n(m<n)之间所有整数的和的简单函数。函数接口定义:int sum( int m, int n );其中m和n是用户传入的参数,保证有m<n。函数返回的是m~n之间所有整数的和。裁判测试程序样例:#include <stdio.h>int sum(int m, int n);int main(){ int m, n; scanf("%d %d", &m, &n); printf("sum原创 2021-02-16 14:12:54 · 89 阅读 · 0 评论 -
习题3-1 比较大小 (10 分)
#include<stdio.h>int main(){ int x,y,z; scanf("%d %d %d",&x,&y,&z); int min,max,mid; if(x<=y){ min=x;max=y; if(z<=min){ min=z;mid=x; } else if(z>=max){ max=z;mid=y; } else{ mid=z; } } else{ min=.原创 2021-02-15 12:51:30 · 105 阅读 · 0 评论 -
练习3-8 查询水果价格 (15 分)
#include<stdio.h>int main(){ printf("[1] apple\n[2] pear\n[3] orange\n[4] grape\n[0] exit\n"); int cnt=1,n; while(cnt<=5){ scanf("%d",&n); if(n==1){ printf("price = 3.00"); } else if(n==2){ printf("price = 2.50"); } el.原创 2021-02-15 12:33:52 · 153 阅读 · 0 评论 -
练习3-7 成绩转换 (15 分)
#include<stdio.h>int main(){ int x; scanf("%d",&x); if(x>=90){ printf("A"); } else if(x>=80){ printf("B"); } else if(x>=70){ printf("C"); } else if(x>=60){ printf("D"); } else{ printf("E"); } return 0;}原创 2021-02-15 12:15:27 · 76 阅读 · 0 评论 -
练习3-5 输出闰年 (15 分)
#include<stdio.h>int main(){ int x; scanf("%d",&x); int i,cnt=0; if(x>=2001&&x<=2100){ for(i=2001;i<=x;i++){ if(i%4==0&&i%100!=0||i%400==0){ if(cnt==0){ printf("%d",i); } else{ printf("\n.原创 2021-02-14 22:01:57 · 217 阅读 · 0 评论 -
*练习3-4 统计字符 (15 分)
#include<stdio.h>int main(){ char a; int i; int letter=0,blank=0,digit=0,other=0; for(i=1;i<=10;i++){ scanf("%c",&a); if((a>='a'&&a<='z')||(a>='A'&&a<='Z')){ letter++; }//a-z;A-Z else if(a==' '||.原创 2021-02-14 21:44:36 · 199 阅读 · 0 评论 -
*练习3-3 统计学生平均成绩与及格人数 (15 分)
#include<stdio.h>int main(){ int n; scanf("%d",&n); int count=0,i,score,sum=0; double average; if(n==0){ average=0; count=0; }//n为0 else{ for(i=1;i<=n;i++){ scanf("%d",&score); if(score>=60){ count++; }.原创 2021-02-14 21:08:46 · 177 阅读 · 0 评论 -
练习3-2 计算符号函数的值 (10 分)
#include<stdio.h>int main(){ int n; scanf("%d",&n); int y; if(n<0){ y=-1; } else if(n==0){ y=0; } else{ y=1; } printf("sign(%d) = %d",n,y); return 0;}原创 2021-02-14 20:36:03 · 377 阅读 · 0 评论 -
习题2-6 求阶乘序列前N项和 (15 分)
#include<stdio.h>int main(){ int n; scanf("%d",&n); int i,k,a=1,sum=0; for(i=1;i<=n;i++){ for(k=1;k<=i;k++){ a=a*k; } sum=sum+a; a=1; } printf("%d",sum); return 0;}原创 2021-02-14 19:51:59 · 82 阅读 · 0 评论 -
习题2-5 求平方根序列前N项和 (15 分)
#include<stdio.h>#include<math.h>int main(){ int n; scanf("%d",&n); double sum=0.0; int i; for(i=1;i<=n;i++){ sum+=sqrt(i); } printf("sum = %.2lf",sum); return 0;}原创 2021-02-14 19:42:47 · 66 阅读 · 0 评论 -
习题2-4 求交错序列前N项和 (15 分)
#include<stdio.h>int main(){ int n; scanf("%d",&n); int i; double sum=0.0; double a=1.0; for(i=1;i<=n;i++){ sum=sum+a*i/(2*i-1); a=-1*a; } printf("%.3lf",sum); return 0;}原创 2021-02-14 19:37:11 · 91 阅读 · 1 评论 -
习题2-3 求平方与倒数序列的部分和 (15 分)
#include<stdio.h>int main(){ int m,n; scanf("%d %d",&m,&n); int i; double sum=0.0; for(i=m;i<=n;i++){ sum=sum+i*i+1.0/i; } printf("sum = %.6lf",sum); return 0;}原创 2021-02-14 18:49:30 · 98 阅读 · 0 评论 -
*习题4-3 求分数序列前N项和 (15 分)
#include<stdio.h>int main(){ int n; scanf("%d",&n); double t; int cnt=1; double sum=2.0; double a=2,b=1;//a分子,b分母 //分子分母不能用int来定义,因为其值变化很快,超过整型界限,会变成负数。 //因此要设置成浮点数double (float也不可以) while(cnt<=n-1){ t=a; a=a+b; b=t; su.原创 2021-02-03 12:35:21 · 161 阅读 · 0 评论 -
*练习4-6 猜数字游戏 (15 分)
#include<stdio.h>#include<stdlib.h>#include<time.h>int main(){// srand(time(0));//先撒随机种子 // int a=rand()%100+1; //%100是得到0-99的数,再加1包括了100; int number,n; scanf("%d %d",&number,&n); int x; int cnt=0; do{ scanf("%d",&.原创 2021-02-03 12:04:49 · 200 阅读 · 0 评论 -
*练习4-11 统计素数并求和 (20分)
看起来简单,但是易错,容易考虑不到1 和2 的情形。1 不是素数,而2 是素数。1 1结果为0 0如果m=1或者2,n>2要记得算上2这个素数代码如下:#include<stdio.h>int main(){ int m,n; scanf("%d %d",&m,&n); int cnt=0; int i,j=1; int sum=0; if(m<=2){//1不是素数,2是素数 if(m==1&&n==1).原创 2021-01-28 11:59:47 · 301 阅读 · 0 评论 -
*习题4-6 水仙花数 (20分)
很综合性的题目。对于我这种菜鸡新手来说,想要一次写好这个代码十分不现实,所以最好的办法就是分成一块一块的来写,在写的过程中不断调试或者设置一些输出语句来检查。每一块都写对了总的结果就出来了。代码如下:#include<stdio.h>int main(){ int n,i,k,p=1,sum=0,q,g; int x=1; int cnt=0; scanf("%d",&n); for(i=1;i<n;i++){ x=10*x; }//x最小n位数 .原创 2021-01-28 09:14:36 · 128 阅读 · 0 评论 -
浙大版《C语言程序设计(第3版)》题目笔记(更新中)
练习2-1 Programming in C is fun! (5分)#include<stdio.h>int main(){ printf("Programming in C is fun!"); return 0;}练习2-3 输出倒三角图案 (5分)#include<stdio.h>int main(){ printf("* * * *\n"); printf(" * * *\n"); printf(" * *\n"); prin原创 2020-12-13 19:57:00 · 404 阅读 · 0 评论