C语言程序设计
大林不要掉头发
勇敢大林,不怕困难
展开
-
SWUST OJ605 格雷码
swust oj 605题目描述在数字系统中只能识别0和1,各种数据要转换为二进制代码才能进行处理,格雷码是一种无权码,采用绝对编码方式,典型格雷码是一种具有反射特性和循环 特性的单步自补码,它的循环、单步特性消除了随机取数时出现重大误差的可能,它的反射、自补特性使得求反非常方便。格雷码属于可靠性编码,是一种错误最小 化的编码方式,因为,自然二进制码可以直接由数/模转换器转换成模拟信号,但某些情况,例如从十进制的3转换成4时二进制码的每一位都要变,使数字电路产 生很大的尖峰电流脉冲。而格雷码则没有这一缺原创 2021-07-14 22:52:05 · 200 阅读 · 0 评论 -
SWUST OJ 56 Hamming Distance
swust oj 56题目描述Have you ever heard of the Hamming distance? It is the number of positions for which the corresponding digits differ. Your task is to write a program that computes this distance for two binary strings.输入The input contains several test ca原创 2021-07-14 22:23:49 · 267 阅读 · 0 评论 -
SWUST OJ 1179 判断回文数
swust oj 1179题目描述一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ char a[5]; while(~scanf("%s",a)) { if(a[0]==a[4] && a[1]==a[3]) printf("Yes\n"); else printf("No\n"); } return原创 2021-02-24 12:11:43 · 258 阅读 · 0 评论 -
SWUST OJ 1175开仓救民
swust oj 1175题目描述有个王国在某年爆发了旱灾,于是那里的国王准备开仓济民。已知,第一天发一公斤粮食,第二天发两公斤粮食, 第三天发四公斤粮食。。。。。第二天发的粮食是前一天的两倍。我们已知安抚灾民一共需要m公斤粮食,问第几天国 王能够将宅民安抚好?输入输出样例输入样例输出源代码#include<stdio.h> int main(){ int m,n,sum,i,j; while(scanf("%d",&m)!=EOF) { sum=0原创 2021-02-24 11:58:02 · 285 阅读 · 0 评论 -
SWUST OJ 1172紧急措施
swust oj 1172题目描述近日,一些热门网站遭受黑客入侵,这些网站的账号、密码及email的数据惨遭泄露。你此时拿到了那份泄露的数据,希望尽快将自己的密码更改。策略如下:小写和大写交换,非字母字符保持不变。输入输出样例输入样例输出源代码#include<stdio.h>#include<string.h>int main(){ char a[100]; int i,n; while(~scanf("%s",a)) { n=strlen原创 2021-02-24 11:41:16 · 517 阅读 · 0 评论 -
SWUST OJ 1170 计算鸡的智商测试
swust oj 1170题目描述国王的计算鸡最近老是计算出问题,于是国王决定让程序猿对计算鸡进行测试,他们因特奈特人称之为“迪霸哥”。程序猿“迪霸哥”的方式是这样的:首先给计算鸡一个很长的数字N(N是特别大的数字,只比10^10001小一丁丁儿),让计算鸡说出N的位数以及他们各位的和。很简单吧?如果你觉得简单的话,那就快来帮助计算鸡编写一个小代码实现上述操作吧。输入输出样例输入样例输出源代码#include<stdio.h>#include<string.h&g原创 2021-02-24 11:22:58 · 727 阅读 · 0 评论 -
SWUST OJ 1168 喝可乐
swust oj 1168题目描述小明十分喜欢喝可乐,有一次店家搞促销,用三个可乐瓶盖便可换一瓶新可乐。现在告诉你小明身上的钱和 每瓶可乐的单价,问你小明最多可以喝多少瓶可乐?(不能向老板借瓶盖)输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int sum,s,n,m,a; while(~scanf("%d%d",&sum,&s)) { n=sum/s; m=n; while(n>=3)原创 2021-02-24 11:08:32 · 826 阅读 · 0 评论 -
SWUST OJ 1160存钱大作战
swust oj 1160题目描述输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int sum,n,c,m,t,s; int i,a[500],b[500]; while(~scanf("%d",&sum)) { c=0;m=0;t=0;s=0; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); c=c+原创 2021-02-22 13:02:20 · 384 阅读 · 0 评论 -
SWUST OJ 1159 吃披萨
swust oj 1159题目描述小明楼下新开了两家披萨店,价格都一样,不同的是A家披萨店的披萨是圆形,B家披萨店的披萨是三角形。为了知道 哪家披萨店的披萨面积更大一些,于是就找到你咯,你来帮帮他吧。输入输出样例输入样例输出源代码#include<stdio.h>#include<math.h>#define PI 3.14159int main(){ int a,b,c,d; float s1,s2,p; while(scanf("%d%d%d原创 2021-02-22 11:52:15 · 807 阅读 · 0 评论 -
SWUST OJ 1158 比成绩
swust oj 1158题目描述一班和二班是最好的两个班级,每次考试他们班总是要比一下平均成绩,现在告诉你他们两个班每个人的分数你 能告诉我每个班的平均成绩吗?输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int n,m,s; while(~scanf("%d",&n)) { int i,j=0,t=0,x=0,y=0; for(i=0;i<n;i++) { scanf("%d%d",&原创 2021-02-22 11:20:40 · 1468 阅读 · 3 评论 -
SWUST OJ 1156 A+B problem
swust oj 1156题目描述小明今年3岁了, 现在他已经能够认识100以内的非负整数, 并且能够进行100以内的非负整数的加法计算 对于大于等于100的整数(整数很大,可能超过long long), 小明仅保留该数的最前面两位进行计算. 例如, 对于小明来说 1234和12是相等的 给定非负整数A和B, 你的任务是代表小明计算出A+B的值.输入输出样例输入样例输出代码(1)#include<stdio.h>#include<string.h>int原创 2021-02-22 10:16:33 · 750 阅读 · 2 评论 -
SWUST OJ 606 sum
swust oj 606题目描述Your task is to find the sum of all integer numbers lying between 1 and N inclusive.(计算1到N的和)输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int a,i,sum=0; scanf("%d",&a); if(a<1)//样例输入中为负数,则说明有两种情况 { for(i=1;i&原创 2021-02-10 19:39:29 · 275 阅读 · 0 评论 -
SWUST OJ 489 平方和与立方和
swust oj 489题目描述给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和。输入输出样例输入样例输出源代码#include<stdio.h> int main(){ int a,b,i,j,m,s; while(~scanf("%d%d",&a,&b)) { if(b<a)//将a,b大小情况统一 { j=a; a=b; b=j; } m=0;//因为要多次输入,所以赋初值需要在wh原创 2021-02-10 19:17:44 · 538 阅读 · 0 评论 -
SWUST OJ 277统计二进制数中的1的个数
swust oj 277题目描述整数在计算机中使用二进制的形式表示,如整数7用二进制表示为:111,其中1的个数为3。输入输出样例输入样例输出源代码#include<stdio.h> int main() { int i,x,s=0; scanf("%d",&x); while(x!=0) { i=x;//最开始想先转换成二进制后判断当中1的个数,本来是能得结果,但提交上去他不承认 x=x/2; if(i!=2*x) s++; }原创 2021-02-10 17:48:25 · 310 阅读 · 0 评论 -
SWUST OJ 190 游程编码
swust oj 190题目描述游程编码又称“运行长度编码”或“行程长度编码”,是一种统计编码,该编码属于无损压缩编码。对于二值图有效。 RLE行程长度编码概述 目前, 压缩技术已经广泛应用于各种软件、声音、影像格式等领域。总的来说, 有两种截然不同的图像格式压缩类型: 有损压缩和无损压缩[1]。有损压缩利用视觉识别的原理可以大大地压缩文件的数据, 但是会影响图像质量。无损压缩的基本原理是相同的颜色信息只需保存一次, 可以删除一些重复数据, 大大减少要在磁盘上保存的图像的容量。无损压缩方法的优点原创 2021-02-10 12:30:29 · 533 阅读 · 0 评论 -
SWUST OJ 45 分数求和
swust oj 45题目描述有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13… 求出这个数列的前N项之和,保留两位小数。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int N,i; double s=2,j=1,t; double sum=0; scanf("%d",&N); for(i=0;i<N;i++)//搞懂这个数列的规律就行 { sum+=s/j; t=s;原创 2021-02-10 11:43:10 · 530 阅读 · 0 评论 -
SWUSTOJ#46自由落体
swust oj 46题目描述一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 保留两位小数输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int m,n,i; float a,b; scanf("%d%d",&m,&n); a=0; b=m; for(i=0;i<n;i++) { a=a+b;//这里用float变量进行计算 b原创 2021-01-13 12:44:02 · 392 阅读 · 0 评论 -
SWUSTOJ#39字符个数
SWUST OJ 39题目描述输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ char a; int n=0,m=0,s=0,d=0; while((a=getchar())!='\n') { if(a>='a' && a<='z')//这里只考虑小写字母,大写的不会通过 n++; else if(a>='0'原创 2021-01-13 00:13:50 · 1020 阅读 · 0 评论 -
SWUSTOJ#26翻转数的和
swust oj 26题目描述喜欢数学的Lucy经常向哥哥LF请教一些题目,哥哥总能很快就帮她解决。这不,Lucy又有难题要请教哥哥了Lucy的难题。Lucy的难题是有关翻转数的:翻转数就是把一个数的所有数字以相反顺序写出来,即原来的第一个数字成为最后一个,而原来的最后一个则成为第一个。我们把未翻转的数称为翻转数的原数。例 如:6789的翻转数是9876,而6789就是9876的原数。你一定注意到了,一个翻转数的原数可以有很多个,例如18的原数可以是81、810、8100等等。因此我们假定:通过原创 2021-01-12 23:50:44 · 1032 阅读 · 0 评论 -
SWUSTOJ#72Optimal Service
swust oj 72题目描述设有n 个顾客同时等待一项服务。顾客i需要的服务时间为t i, 1<=i<=n 。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是n 个顾客等待服务时间的总和除以n。对于给定的n个顾客需要的服务时间,编程计算最优服务次序。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int n,i,j,t; float sum=0; int a[1000]; scanf原创 2021-01-12 21:29:01 · 1088 阅读 · 2 评论 -
SWUSTOJ#616排序查找
swust oj 616题目描述用选择法对N个学生的成绩按从大到小的顺序排序,N个学生的成绩整数用scanf 输入,输入的成绩在[0,100]之间。排序完成后,输入一个成绩,要求用逐个比较查找的方式找出该成绩是该组中第几个元素的值(即第几名)。如果该成绩不在数组中,则输出“no this score!”。 要求: 1、把排序算法写成函数形式,在主函数中输入N个数据,然后调用排序函数排序。 2、在排序过程中尽量减少数据的交换和移动。 3、把查找算法写成函数形式,在主函数中输入1个数据,然后调用查找函数查找原创 2021-01-12 15:34:40 · 2319 阅读 · 0 评论 -
SWUSTOJ#288统计出现次数最多的字母
swust oj 288题目描述给定一个只有小写英文字母组成的字符串,串长为n。请你编写程序求出这个字符串中出现次数最多的字母输入输出样例输入样例输入源代码#include<stdio.h>int main(){ char a[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'}; char b[10原创 2021-01-11 15:06:50 · 964 阅读 · 0 评论 -
swust oj#160促销计算
SWUST OJ#160题目描述某百货公司为了促销,采用购物打折的优惠方法,每位顾客一次购物:在1000元以上者,按9.5折优惠;在2000以上者,按9折优惠;在3000以上者,按8.5折优惠;在5000以上者,按8折优惠;编写程序,购物款数,计算并输出优惠价。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int n; float discount,pay; scanf("%d",&n); if(n<=1原创 2021-01-08 20:50:34 · 1650 阅读 · 1 评论 -
SWUSTOJ#287one+two=3
SWUSTOJ#287题目描述读入两个小于100的正整数A和B,计算A+B。需要注意的是:A和B的每一位数字由对应的英文单词给出。输入输出样例输入样例输出源代码#include <stdio.h>#include <string.h>int main(){ char a[20]; while(1) { int sum=0, A=0, B=0; scanf("%s", a); A=num(a); scanf("%s", a); i原创 2021-01-11 14:05:24 · 1183 阅读 · 0 评论 -
SWUST OJ #74矩阵相乘
swust oj 74题目描述将两个给定的距阵(3*3)相乘得到另一个距阵并将其打印出来。输入输出思路(1)明白矩阵相乘的定义(不会的,可以自己搜索一下)(2)初步代码#include<stdio.h>int main(){ int a[3][3],b[3][3],c[3][3]={0}; for(line=0;line<3;line++) for(list=0;list<3;list++) for(s=0;s<3;s++) c[line][s原创 2021-01-11 00:14:33 · 1348 阅读 · 0 评论 -
SWUST OJ#321 函数的递归调用
swust oj 321题目描述阶乘(factorial)是基斯顿·卡曼(Christian Kramp, 1760 – 1826)于1808年发明的运算符号。 任何大于1的自然数n阶乘可以表示为以下形式: n!=n×(n-1)! 另外,数学家定义,0!=1,所以0!=1! 你的任务是编写一个程序来计算一个给定数字n的阶乘n!(n<14)输入输出样例输入样例输出源代码因为题目要求用函数,故先用函数。但是,本人认为不用函数,也是可以的。不过如果是考试,要按试卷要求,不然程序通过也原创 2021-01-10 20:08:39 · 911 阅读 · 2 评论 -
SWUST OJ#281逃跑的蠕虫
swust oj 281题目描述装在瓶子(瓶子高度为h)的蠕虫都想从瓶子底部向瓶口处爬出去。它每分钟向上爬行u厘米,之后会休息一分钟,这一分钟它会向下滑行d厘米,当蠕虫到了瓶口或者超出瓶口后便出了瓶口,成功逃离(每分钟计算一次位置)。编写一个函数,帮助蠕虫计算它在什么时候能够爬出瓶子。输入输出样例输入样例输出满足条件和思路(1)输入0 0 0 时 没有输出(2)h<d时,不符合题意(3)顺序是先加u,再减d,设置函数时,要体现先后顺序(4)需要注意的是在向上爬的u厘米内,原创 2021-01-10 19:41:15 · 2454 阅读 · 3 评论 -
SWUSTOJ#82求组合数
swust oj 82题目输入编写一个函数,求从n 个不同的数中取r 个数的所有选择的个数。输入输出样例输入样例输出源代码#include<stdio.h> int main(){ int n,r; int c(int n,int r); while(scanf("%d%d",&n,&r)!=EOF) { if(n==0 && r==0) break; else if(n<r) printf("error!原创 2021-01-10 18:57:31 · 1967 阅读 · 1 评论 -
SWUSTOJ#1178密码翻译
swust oj 1178题目输入在情报传递过程中,为了防止情报被截获,往往需要对情报用一定的方式加密,简单的加密算法虽然不足以完全避免情报被破译,但仍然能防止情报被轻易的识别。我们给出一种最简的的加密方法,对给定的一个字符串,把其中从a-y,A-Y的字母用其后继字母替代,把z和Z用a和A替代,其他非字母字符不变,则可得到一个简单的加密字符串。输入输出样例输入样例输出源代码#include<stdio.h>#include<string.h>int ma原创 2021-01-10 18:20:06 · 1784 阅读 · 3 评论 -
SWUSTOJ#1167分离字符串
SWUSTOJ 1167题目描述分离字符串中的不同字符单独成行输出输入输出样例输入样例输出源代码#include<stdio.h> #include<string.h>int main(){ char s[200],a[200],b[200],c[200]; int i,e,f,g,h; while(~scanf("%s",s)) { e=0,f=0,g=0; h=strlen(s); for(i=0;i<h;i++) {原创 2021-01-10 16:57:47 · 1211 阅读 · 0 评论 -
SWUSTOJ#171字符串的倒序
SWUSTOJ171题目描述设计函数,实现字符串的倒序输出。输入输出样例输入样例输出源代码#include<stdio.h> #include<string.h>int main() { char a[100]; int i,j; scanf("%s",a); j=strlen(a); for(i=j-1;i>=0;i--) { printf("%c",a[i]); } printf("\n"); return 0;}..原创 2021-01-10 15:01:14 · 462 阅读 · 0 评论 -
SWUSTOJ#148陶陶摘苹果
swustoj148题目描述陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。 现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int a[10],i; in原创 2021-01-10 13:20:56 · 718 阅读 · 0 评论 -
SWUSTOJ#276简单计算器
swustoj 276题目描述一个具有两个数加减乘除功能的计算器。输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int a,b; char s; scanf("%d%c%d",&a,&s,&b);//%c是字符形式输入 switch(s) { case'+': printf("%d+%d=%d\n",a,b,a+b);break;//break可以结束当前switch语句 cas原创 2021-01-10 11:43:51 · 1144 阅读 · 0 评论 -
SWUSTOJ#78计算生日星期几
SWUSTOJ78题目描述输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int year,month,day,allday=0; int i,j; while(scanf("%d %d %d",&year,&month,&day)!=EOF)//保证输入格式符合要求 { for(i=1;i<year;i++) { if((i%4==0 && i%100!=0)原创 2021-01-09 14:08:27 · 1671 阅读 · 4 评论 -
SWUST OJ#77计算员工周工资
SWUST OJ77题目描述如果时间小于0或大于一周的总时间,输出 input is wrong! ;若雇员周工作小时超过40 小时,则超过部分按原工资的1.5 倍的加班工资来计算;若雇员每周工作小时超过60 小时,则超过60 的部分按原工资的3 倍的加班工资来计算,而40 到60 小时的工资仍按照原工资的1.5 倍的加班工资来计算。输入输出样例输入样例输出源代码#include<stdio.h> int main(){ int time; float mon原创 2021-01-09 13:34:04 · 937 阅读 · 0 评论 -
SWUSTOJ#320鸡兔同笼
SWUST OJ320题目描述一个笼子里关了鸡和兔(鸡有2只脚,兔又4只脚,没有例外)。已知笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物?输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int i,m; scanf("%d",&m); for (i=0;i<m;i++) { int a; scanf("%d",&a); if (a%2!=0)//将不符合条件的输入(原创 2021-01-09 12:58:26 · 2658 阅读 · 0 评论 -
SWUST OJ#189素数判定
SWUST OJ189题目描述给你两个数a、b,现在的问题是要判断这两个数组成的区间内共有多少个素数输入输出样例输入样例输出源代码#include<stdio.h>int main(){ int a,b,i; int m,n,p; while(scanf("%d %d",&a,&b)!=EOF)//保证输入值格式正确 { if(a>b)//用if语句使a,b值大小统一,便于利用for语句判断 { m=a; a=b; b原创 2021-01-09 00:39:43 · 1068 阅读 · 0 评论 -
SWUST OJ#614求圆柱体的体积
SWUSTOJ 614题目描述请编写一个程序实现以下的题目要求:1、输入圆柱体的半径(radius)和高(high);2、定义PI为3.14159;3、求出圆柱体的体积。输入输出样例输入样例输出源代码#include<stdio.h>#define PI 3.14159//定义宏常量,须知PI和数值之间不能用等号int main(){ float r,h; scanf("%f %f",&r,&h);//由样例输入可知需要浮点型数,%f单精度原创 2021-01-08 22:41:08 · 1350 阅读 · 0 评论 -
SWUST OJ#613数字转换成字符
SWUST OJ 613题目描述本题目非常简单,请编写一个程序实现以下功能: 1、输出整型和字符型在内存中所占的字节数; 2、输入两个数字,输出其相对应的字符。输入输出样例输入样例输出源代码#include<stdio.h> int main(){ int a,b; scanf("%d %d",&a,&b); printf("%d %d\n",sizeof(int),sizeof(char));//sizeof()可求字节数,单位bite pr原创 2021-01-08 21:07:49 · 994 阅读 · 0 评论 -
SWUST OJ#318进制转换
SWUST OJ 318题目输入:输入一个十进制数,用程序将其变换成2进制数和8进制数。输入每一组数据只有一行,即需要被变换的十进制整数。(输入有多组测试数据)输出对应每一组数据,输出对应的2进制和8进制,第一行输出2进制,第二行输出8进制数样例输入3样例输出113源代码#include<stdio.h>//头文件int main(){ int n,i,j; while(~scanf("%d",&n))//在满足输入为整型时运行程序 {原创 2021-01-08 20:11:52 · 535 阅读 · 0 评论