C语言的简单应用(一)
2017-07-13 18:38
316 查看
最近得到一份C语言的简单题库,感觉学一学还是挺不错的,打算每天更新10题,不定期天数。
第一天
1、题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔
子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数
为多少?
2、 题目:判断100以内有多少个素数,并输出所有素数。
程序分析:一个数如果是合数,那么它的因数不会超过该合数的平方根。此题可用简单素数筛选法—–筛选法百度百科
3、题目:打印出100—1000之间所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方
4、题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
5、题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
————————————————————————————————
6、题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
定理:设两个数是a,b最大公约数是p,最小公倍数是q,那么有这样的关系:ab=pq,所以q=ab/p
7、题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
8、题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如
2+22+222+2222+22222(此时共有5个数相加),个数由n来控制。
9、题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。
10、题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
总结
第一天的题目相对比较简单,都是经典题目,当然,有些确实是十分的灵活,以后需要多多注意一下。
第一天
1、题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔
子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数
为多少?
#include<stdio.h> int main() { int i,f1=1,f2=1; for(i=1;i<=20;i++) { printf("%10d %10d",f1,f2); if(i%2==0) putchar('\n'); f1=f1+f2; f2=f1+f2; } return 0; }
2、 题目:判断100以内有多少个素数,并输出所有素数。
程序分析:一个数如果是合数,那么它的因数不会超过该合数的平方根。此题可用简单素数筛选法—–筛选法百度百科
#include<stdio.h> #define max 100 int main() { int i,j=1,a[max]={0}; a[0]=a[1]=1; for(i=2;i*i<=max;i++) { if(!a[i]) for(j=i+i;j<=max;j+=i) a[j]=1; } printf("2 "); for(i=3;i<=max;i+=2) { if(!a[i]) { printf("%3d ",i); j++; } if(j%10==0) putchar('\n'); } return 0; }
3、题目:打印出100—1000之间所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方
#include<stdio.h> int main() { int i,j,k,n,m=1; for(n=100;n<1000;n++) { i=n/100; j=n/10%10; k=n%10; if(n==i*i*i+j*j*j+k*k*k) { m++; if(m%2==0) putchar('\n'); printf("%d ",n); } } return 0; }
4、题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
#include<stdio.h> int main() { int n,i; printf("input a number:\n"); scanf("%d",&n); printf("%d=",n); for(i=2;i<=n;i++) { while(n!=i) { if(n%i==0) { printf("%d*",i) ; n=n/i; } else break; } } printf("%d",n); return 0; }
5、题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
#include<stdio.h> int main() { int grade,score; printf("input the score:");scanf("%d",&score); grade=score>=90?'A':score>=60?'B':'C'; printf("%d belongs to %c",score,grade); return 0; }
————————————————————————————————
6、题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
定理:设两个数是a,b最大公约数是p,最小公倍数是q,那么有这样的关系:ab=pq,所以q=ab/p
#include<stdio.h> int main() { int num1,num2,a,b,temp; printf("input num1,num2:");scanf("%d,%d",&num1,&num2); if(num1<num2) { temp=num1; num1=num2; num2=temp; } a=num1;b=num2; while(b) { temp=a%b; a=b; b=temp; } printf("the common measure:%d\nthe common multiple:%d",a,num1*num2/a); return 0; }
7、题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
#include<stdio.h> int main() { char c; int letters=0,space=0,digit=0,others=0; printf("input some characters:"); while((c=getchar())!='\n') { if(c>='a'&&c<='z'||c>='A'&&c<='Z') letters++; else if(c==' ') space++; else if(c>='0'&&c<='9') digit++; else others++; } printf("the char=%d space=%d digit=%d others=%d\n",letters,space,digit,others); return 0; }
8、题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字。例如
2+22+222+2222+22222(此时共有5个数相加),个数由n来控制。
#include<stdio.h> int main() { int a,n,t,count=1; long s; printf("input a and n:");scanf("%d,%d",&a,&n); while(count<=n) { t+=a; s+=t; a*=10; count++; } printf("a+aa+....=%ld",s); return 0; }
9、题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。
#include<stdio.h> int main() { int i,n,sum; for(n=6;n<=1000;n++) { sum=1; for(i=2;i<=n/2;i++) if(n%i==0) sum+=i; if(n==sum) { printf("%d 's perfect number is:",n); for(i=1;i<n/2;i++) if(n%i==0) printf(",%d",i); putchar('\n'); } } retur ab78 n 0; }
10、题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
#include<stdio.h> int main() { int n; float s=100,h=s/2; for(n=2;n<=10;n++) { s+=2*h; h/=2; } printf("the sum:%f\nthe heigh:%f",s,h); return 0; }
总结
第一天的题目相对比较简单,都是经典题目,当然,有些确实是十分的灵活,以后需要多多注意一下。
相关文章推荐
- C语言中三角函数的简单应用——HDU2080
- 3ff0 C语言实现一种简单的应用服务器内部数据结构的思路(二)
- 简单的Linux扫描仪应用:C语言实现
- 【C语言】实现一个简单SHELL应用
- 堆栈的简单实现之二:进制转换方面的简单应用(C语言实现)
- c语言简单应用
- C语言的简单应用(三)
- 简单结构体的应用(商品排序C语言)
- C语言中移位、逻辑运算符的简单应用
- 二叉树的应用:利用C语言编写简单的家谱管理系统
- c语言 双向循环链表的简单应用
- C语言对搜索的简单应用(迷宫问题
- 【学习ios之路:C语言】①指针及其简单的应用
- 使用纯C语言开发简单的Direct3D 12应用
- C语言简单函数应用:数学计算
- 浅谈C语言2级指针的简单应用
- 【学习ios之路:C语言】函数及递归的简单应用
- C语言对DFS简单应用(Red and Black
- C语言指针应用简单实例
- C语言的简单应用(二)