一、百钱百鸡问题

问题描述:

中国古代数学家张丘建在他的《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?

#include<stdio.h>
int main()
{int i,j,k;for(i=0;i<=100;i++{for(j=0;j<=100;j++){for(k=0;k<=100;k++){if(i+j+k==100  &&  k%3==0  &&  i*5+j*3+k/3==100){printf("公鸡%d只,母鸡%d只,雏鸡%d只n",i,j,k);}}}}return 0;
}

二、求三个数的最小公倍数

问题描述

输入 3 个数 a、b、c, 求这 3 个数的最小公倍数。

#include<stdio.h>
int main()
{int a,b,c;scanf("%d%d%d",&a,&b,&c);int max;max=a;if(max<b){max=b;}if(max<c){max=c;}for(int i=max;;i++){if(i%a==0&&i%b==0&&i%c==0){printf("%d,%d和%d的最小公倍数是%d",a,b,c,i);break;}}return 0;
}

三、韩信点兵问题

问题描述

求韩信一共有多少兵。

韩信有一队兵,他想知道有多少人,便让士兵排队报数。

  • 按从 1 至5报数,最末一个士兵报的数为 1;
  • 按从 1 至 6 报数,最末一个士兵报的数为 5;
  • 按从 1 至 7 报数,最末一个士兵报的数为 5;
  • 按从 1 至 11 报数,最末一个士兵报的数为 10;
  • 按从 1 至 13 报数,最末一个士兵报的数为 11。

请问韩信至少有多少兵?

#include<stdio.h>
int main()
{int i;for(i=1;;i++){if(i%5==1&&i%6==5&&i%7==5&&i%11==10&&i%13==11){printf("士兵最少有%d个",i);break;}}return 0;
}

四、猴子吃桃问题

问题描述:

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个;以此往后,到第十天早上想再吃时,就只剩一个桃子了。

#include<stdio.h>
int main()
{int n,sum=0;scanf("%d",&n);for(int i=1;i<=n;i++){sum=(sum+1)*2;}printf("原有%d个桃子",sum);return 0;
}

五、水仙花数问题

问题描述:

水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。例如:153=1^​3​​+5^​3​​+3^​3​​。 本题要求编写程序,计算所有N位水仙花数。

#include<stdio.h>
#include<math.h>int main()
{int n,count=0;scanf("%d",&n);printf("%d位数得水仙花数如下:n",n);for(int i=pow(10,n-1);i<=pow(10,n);i++){int p=i;int sum=0;while(p){int temp=p%10;int ever=1;for(int y=0;y<n;y++){ever*=temp;}sum+=ever;p/=10;}if(sum==i){printf("%dn",i);count++;}}printf("%d位数得水仙花数有%d个",n,count);
}

六、判断日期是否合法

问题描述:

编写一个能判断输入的日期是否合法的小程序。如果合法,则按照年月日的输出此日期,比如1998年6月26日。;否则提示用户:您输入的日期有误,请重新输入!

#include <stdio.h>
int main(){int y, m, d;int tag=0;int sign=0;int dayvalid;scanf("%d,%d,%d", &y, &m, &d);if(y%4==0&&y%100!=0||y%400==0){sign==1;}if(m>=1&&m<=12){switch(m){case 1:case 3:case 5:case 7:case 8:case 10:case 12:dayvalid=31;break;case 4:case 6:case 9:case 11:dayvalid=30;break;case 2:if(sign==1)dayvalid=29;elsedayvalid=28;break;deflault:break;}if(d>=0&&d<=dayvalid)tag=1;}if ( tag == 1 )printf("%d年%d月%d日。", y, m, d );elseprintf("您输入的日期有误,请重新输入!");return 0;
} 

七、求矩阵的对角线和

问题描述:

编写一个能计算4∗4矩阵2条对角线元素之和的小程序。

#include <stdio.h>
int main()
{int i, j;float a[4][4], sum = 0;for(i=0;i<4;i++){for(j=0;j<4;j++){scanf("%f",&a[i][j]);}}for(i=0;i<4;i++){sum+=a[i][i]+a[i][3-i];}printf("sum=%f", sum );return 0;
}

八、输入区间内的素数

问题描述:

输出给定区间内的全部素数,并计算给定区间内有多少个素数。

#include<stdio.h>
#include<math.h>int judgment_prime(int n);
int main()
{int m,n;scanf("%d %d",&m,&n);if(m==1){m=2;}printf("区间内的素数如下:n");int i,k=0;for(i=m;i<=n;i++){if(judgment_prime(i)==1){printf("%d ",i);k++;}}printf("n%d到%d共有%d个素数。",m,n,k);
}int judgment_prime(int n)
{int i,k=1;for(i=2;i<=sqrt(n);i++){if(n%i==0){k=0;break;}}return k;
}

九、分解质因数

问题描述:

每个合数都可以写成几个素数相乘的形式,这些素数就是合数的质因数,利用的代码对一个给定的合数进行分解成质因数。

#include<stdio.h>
#include<math.h>
int main()
{int n,i;scanf("%d",&n);printf("%d = ",n);for(i=2;i<=n;i++){while(n!=i){if(n%i==0){printf("%d*",i);n/=i;}else{break;}}}printf("%d",n);
}

十、某个日期是一年中的多少天

问题描述:

输入任意一个日期,编写一个程序输出该日期是一年的第多少天。

#include<stdio.h>
int main()
{int y,m,d;int m_2,i,sum=0;printf("今天是:n");scanf("%d_%d_%d",&y,&m,&d);if((y%100!=0&&y%4==0)||y%400==0){m_2=29;}else{m_2=28;}for(i=1;i<m;i++)switch(i){case 2:sum+=m_2;break;case 1:case 3:case 5:case 7:case 8:case 10:case 12:sum+=31;break;default:sum+=30;break;}sum+=d;printf("是一年中的第%d天",sum);return 0;
}

十一、十进制转化为二进制

问题描述:

输入一个整数,编写程序输入所对应的二进制数。

#include<stdio.h>int binary(int n);int main()
{int n;scanf("%d",&n);printf("十进制的%d对应二进制为:",n);binary(n);return 0;
}
int binary(int n)
{if(n==0)printf("%d",0);else if(n==1)printf("%d",1);else{binary(n/2);printf("%d",n%2);}return 0;
}

十二、学生名次排列

问题描述:

输入n个学生的学号、姓名和分数,并且按照分数从高到低给学生排名次。

#include<stdio.h>struct student
{int id;char name[10];float score;
};//定义结构体变量 int main()
{int i,j,len;scanf("%d",&len);struct student temp;struct student stu[len];for(i=0;i<len;i++){scanf("%d %s %f",&stu[i].id,stu[i].name,&stu[i].score);}//输入学生信息 for(i=0;i<len-1;i++){for(j=0;j<len-1-i;j++){if(stu[j].score<stu[j+1].score){temp=stu[j];stu[j]=stu[j+1];stu[j+1]=temp;}}}//利用冒泡排序按学生分数由高到低排列 printf("*********排序后的学生信息**********n");for(i=0;i<len;i++){printf("%d %s %.2fn",stu[i].id,stu[i].name,stu[i].score);}//输出 return 0;
}

十三、 平均成绩

问题描述:

给定一所学校学生的体育成绩,请你统计全班的平均成绩和男生、女生的平均成绩。
输入格式:

输入首先在第一行中给出一个正整数 N(≤10000),即全校学生人数。最后 N 行,每行按照格式 性别 成绩 给出一位学生的信息。其中 性别 为 1 表示男生,0 表示女生;成绩 是一个 0 到 100 之间的整数。
输出格式:

在一行中依次输出全班的平均成绩、男生的平均成绩、女生的平均成绩。输出小数点后1位,数字间有一个空格分隔。

注意:如果全是男生或全是女生,则缺少的性别就没有办法计算平均分,相应的位置应该输出一个 X 表示没有。(来源PTA520钻石争霸赛)

#include<stdio.h>
int main()
{int len;int sex,score;double sum_1,sum_2,sum;int cnt_1,cnt_2;sum=sum_1=sum_2=0;cnt_1=cnt_2=0;scanf("%d",&len);for(int i=0;i<len;i++){scanf("%d %d",&sex,&score);if(sex==0){sum_1+=score;cnt_1++;}else{sum_2+=score;cnt_2++;}}sum=sum_1+sum_2;printf("%.2lf  ",(double)(sum/(cnt_1+cnt_2)));if(cnt_1){printf("%.2lf  ",(double)(sum_1/cnt_1));}else{printf("X");}if(cnt_2){printf("%.2lf  ",(double)(sum_2/cnt_2));}else{printf("X");}return 0;}

十四、特殊a串数列求和

问题描述:

给定两个均不超过9的正整数an,要求编写程序求a+aa+aaa++⋯+aaana)之和。要求输入在一行中给出不超过9的正整数an。(来源:pta)

#include<stdio.h>
int main()
{int a,n;double sum,x;int i;sum=0;x=1;scanf("%d %d",&a,&n);if(a>9||a<0||n>9||n<0){return 0;}for(i=1;i<=n;i++){sum += x * a;x=x*10+1;}printf("s = %.0lf",sum);return 0;
}

十五、统计数字

问题描述:

请输入一个整数n,统计[1 , n]范围内各数字之和能被15整除的整数个数,并输出满足条件的整数。(来源Educoder)

#include<stdio.h>
int main()
{int n,i,sum,p,cnt;cnt=0;scanf("%d",&n);for(i=1;i<=n;i++){sum=0;p=i;while(p!=0){sum+=p%10;p/=10;}if(sum%15==0){cnt++;printf("%dt",i);}}printf("n%d",cnt);return 0;}

十六、打印菱形

问题描述:

输入打印行数N,输出共2N-1行的菱形。

#include<stdio.h>
int main()
{int n;scanf("%d",&n);int i,j,k;for(i=1;i<=n;i++){for(j=1;j<=n-i;j++){printf(" ");}for(k=1;k<=2*i-1;k++){printf("*");}printf("n");}for(i=1;i<n;i++){for(j=1;j<=i;j++){printf(" ");}for(k=1;k<=2*(n-i)-1;k++){printf("*");}printf("n");}
}

十七、三个数排序

问题描述:

将输入的任意三个数按从小到大顺序排列;

#include<stdio.h>
int main()
{int a,b,c;int temp;printf("输入三个数:");scanf("%d %d %d",&a,&b,&c);if(a>b){temp=a;a=b;b=temp;}if(a>c){temp=a;a=c;c=temp;}if(b>c){temp=b;b=c;c=temp;}printf("排列后的顺序为%d<-%d<-%d",a,b,c);return 0;
}

十八、作业评分

问题描述:

有N个评委打分,去掉一个最高分和一个最低分之后求平均分;

#include<stdio.h>
int main()
{int n,score_1,score;scanf("%d",&n);int i=0;int max,min,sum=0;scanf("%d",&score_1);max=min=score_1;while(i<n-1){scanf("%d",&score);if(max<score){max=score;}if(min>score){min=score;}sum+=score;i++;}sum+=score_1;printf("%.2lf",(double)(sum-max-min)/(n-2));return 0;
}

十九、输出月份英文

编程要求:编写一个用指针数组处理的程序,然后输出月份相应的英文名。

#include<stdio.h>
int main()
{int n;char *p[12]={"January","February","March","April","May","June","July","August","September","October","November","December"};scanf("%d",&n);printf("%s",*(p+n-1));return 0;}

二十、求奇数和

编程要求:在一行输入一系列整数,当读到非正数时表示结束,该数字不做处理;

#include<stdio.h>
int main()
{int sum,n;sum=0;scanf("%d",&n);do{if(n%2==1){sum+=n;}scanf("%d",&n);}while(n>0);printf("%d",sum);return 0;
}

c语言求区间内素数个数_C语言题目相关推荐

  1. python acm 素数个数_湘潭大学OJ-1098求区间内素数个数问题

    求区间内素数个数问题 题目描述 Description 给定两个非负整数a,b,其中0<= a,b<=1,000,000,请计算这两个数之间有多少个素数.限制:Time Limit : 1 ...

  2. c语言求100内素数

    求100内素数这里两种赋值方法(解析都在注释里面,源码都放下面了): 一:代码解析 源码: //输出100内素数 #include<stdio.h> int main() {int i,j ...

  3. Golang 实现求素数【 输入N,求N内素数个数 】

    简介 什么是素数?    素数也叫质数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 判断素数的方法:    思路一:判断一个数是否素数,只需要把m 被 2~m-1之间的每一个整 ...

  4. c语言素数个数_C语言试题及答案

    试题分享来啦!! C语言试题 新思路 2020年秋季大一招新机试试题 一.选择题(每题 5 分,共 20 分) 1.以下说法正确的是( ) A._9cpp 是正确的变量名 B. k=++n 与 k=n ...

  5. 输出区间内素数的c语言程序,1137C/C++经典程序训练7---求某个范围内的所有素数...

    题目描述 求小于n的所有素数,按照每行10个显示出来. 输入 输入整数n(n<10000). 输出 每行10个依次输出n以内的所有素数.如果一行有10个素数,每个素数后面都有一个空格. 示例输入 ...

  6. c语言求1000以内素数个数的方法

    求解的方法有很多,本文只介绍一种比较简单的方法. 算法:当输入的数字 n 不能被 2~(n - 1)整除时,n 为素数            反之,则 n 不为素数  源代码: #include< ...

  7. c语言一个整数各位数字个数_C语言编写程序输出10个整数中最小值或最大值

    C语言编写程序输出10个整数中最小值或最大值 这是一个比较基础,同时也包含C语言中诸多特点的程序,仔细体会有很多的格式规则和技巧.其中包括:输入语句,输出语句,数组,分支结构,循环结构.希望广大C语言 ...

  8. c语言指针查找数组一个数_C语言快速入门——指针与数组

    与数组有关的地址 我本来打算以一个程序开始,让我们直接理解相关概念.但转念一想,如果引导你思考问题而得出结论,或许会有另一种效果,因此,我们的讨论以下面的定义为基础. int a = 9;int b[ ...

  9. c语言求字符串转换成双精度_C语言如何输出双精度浮点型数据

    展开全部 double,双精度浮点型,输出使用%lf.e68a843231313335323631343130323136353331333365666166short int,短整型,输出对应%d. ...

  10. c语言一个整数各位数字个数_C语言实现把字符串中的数字转换成整数

    ===Tips:点击上方 蓝字 关注并查看历史消息===   本题实现的功能是把字符串中的数字提取转换成整型数字,例如:若输入字符串"ab56cd87",则输出结果:以%d格式输出 ...

最新文章

  1. 如何实现对ELK各组件的监控?试试Metricbeat
  2. Leetcode刷题 232题:用栈实现队列(基于python3和c++两种语言)
  3. JQuery 总结(6) 锋利的jQuery
  4. UDT协议实现分析——bind、listen与accept
  5. 程序员修神之路--它可能是分布式系统中最重要的枢纽
  6. MySQL中实现连续日期内数据统计,缺省天数0补全
  7. oracle删除实例步骤,命令行删除Oracle实例
  8. TechSmith Camtasia Mac v2021屏幕录制剪辑软件
  9. java多线程常用面试_Java多线程常用面试题(含答案,精心总结整理)
  10. GreaseMonkey批量删除微博代码
  11. 集合论—集合的基本运算与主要算律
  12. Software Testing - UI自动化测试常用设计模式之原型(Java)
  13. Docker命令(二)
  14. win10开机无响应 无服务器,win10开机假死-状态栏和开始菜单无响应
  15. 【leetcode-贪心】加油站/柠檬水找零/分发糖果/跳跃游戏/分发饼干/种花问题/非递减数列
  16. android 搜狗地图包名,搜狗地图
  17. php垃圾回收,PHP垃圾回收机制的理解
  18. 华科计算机学院专业课,华中科技大学计算机专业课程表.xls
  19. 查看Oracle sys_lob,system表空间满的处理-SYS_LOB0003450292C00039$$
  20. HTML入门零基础教程(二)

热门文章

  1. BZOJ3561 DZY Loves Math VI
  2. [2018.07.26 T1] 航线规划
  3. 三态门三个状态vhdl_人防门施工方案
  4. 两级联动mysql怎样查询_我的二级联动下拉框(方便以后查询)
  5. python函数定义和调用练习_python函数的定义和调用
  6. Java基本数据类型与包装数据类型的使用标准
  7. King Arthur's Birthday Celebration
  8. miniprogrampatch 提供 watch 和 computed 特性
  9. 跟对人,走对路,做对事!
  10. 定义一个内核panic问题