文章目录

  • 1 求复合条件整数集
  • 2 水仙花数
  • 3 打印九九口诀表
  • 4 统计素数的个数并求和
  • 5 猜数字游戏
  • 6 求数列的前N项和
  • 7 约分最简分式
  • 8 念数字(switch练习)

1 求复合条件整数集

给定不大于5的正整数n,考虑由n开始的连续5个数字,输出所有由他们组成的无重复数字的3位数
输入样例:
5
输出样例:
567 568 569 576 578 579
586 587 589 596 597 598
657 658 659 675 678 679
685 687 689 695 697 698
756 758 759 765 768 769
785 786 789 795 796 798
856 857 859 865 867 869
875 876 879 895 896 897
956 957 958 965 967 968
975 976 978 985 986 987

参考代码:

#include <stdio.h>main()
{int n = 5;int spans = 5;int inc = 0;int max_inc = 6;int i,j,k;for ( i=n; i < n+spans; i++ ){for ( j = n; j < n+spans; j++ ){for ( k = n; k < n+spans; k++ ){if ( i != j && i != k && j != k ){printf("%d%d%d",i,j,k);inc++;if ( inc == max_inc ){printf("\n");inc = 0;}else{printf(" ");  //注意区分空格和\t效果}}}}}return 0;
}

2 水仙花数

水仙花数是指一个N位正整数(N>=3),他的每个位上的数字的N次幂之和等于它本身。例如:153 = 13 + 53 + 33。请计算所有N位水仙花数。
输入样例:
3
输出样例:
153
370
371
407

参考代码:

#include <stdio.h>main()
{int n = 3;int i;int first =1;for ( i=1;i<n;i++ ){first *=10;}i = first;for ( i=first;i<first*10;i++){int sum = 0;int p;int j;int t = i;for ( j=1;j<=n;j++ ){p = t%10;int k;int pn = p;if (p !=0 ){for ( k=1;k<n;k++ ){pn *= p;}sum += pn;}t = t/10;}if ( i == sum )printf("%d\n",i);}return 0;
}

3 打印九九口诀表

本题要求对任意给定的正整数N,输出由1*1到N*N的部分口诀表。
输入样例:
5
输出样例:
输出下三角N*N部分口诀表,要求左对齐。

参考代码:

#include <stdio.h>main()
{int n = 5,j = 1,i;while ( j<=n ){i = 1;while ( i<=j ){printf("%d*%d=%d\t",i,j,i*j);i++;}printf("\n");j++;}return 0;
}

4 统计素数的个数并求和

统计给定整数M和N区间内素数的个数并对他们求和。
输入样例:
1 10
输出样例:
4 17
参考代码

#include <stdio.h>
main()
{int m = 1,n = 10;int count = 0;int sum = 0;int i;if ( m ==1 ){   //1不是素数m = 2;}for ( i=m;i<=n;i++ ){int isPrime = 1;int j;for ( j=2;j<=i/2;j++ ){if ( i%j == 0 ){isPrime = 0;break;}}if ( isPrime == 1 ){sum += i;count++;}}printf("%d %d\n",count,sum);return 0;
}

5 猜数字游戏

系统随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要编写程序自动对其进行比较,并提示大了(too big),或者小了(too small),相等表示猜到了。如果猜到,则结束程序。程序还需要统计猜的次数,1次猜中提示“perfect!”,3次以内猜中提示“good!”,次数大于3小于N(N>3)提示“not bad”;超过N次没有猜到提示“Game Over”,并结束程序。如果输入负数也会提示“Game Over”结束程序。
输入格式:
输入的第一行给出不超过100的正整数,分别表示用户第一个猜测的数字、以及猜测的最大次数N。随后每行给出一个数字直到游戏结束。(为方便调试程序可以打印出系统随机生成的数值)
输出格式:
在每行中输出每次猜测的结果直到游戏结束。
输入输出样例

参考代码

#include <stdio.h>
#include <stdlib.h>
#include <time.h>main()
{int randnum;srand(time(0));randnum = rand()%100;      /*100以内的随机数*///printf("产生的随机数是(这里作弊了)%d\n",randnum);int guess,n;int count = 0;int finish = 0;do {if ( count == 0 ){scanf("%d %d",&guess,&n);  //注意加&符号} else {scanf("%d",&guess);}count++;//负数的判断放在最前面要不第一个参数是负数时无法判断if ( guess < 0 ){break;} else if ( guess > randnum ){printf("too big!\n");} else if ( guess < randnum ){printf("too small!\n");} else {if ( count == 1 ){printf("perfect job!!!\n");}else if ( count <= 3 ){printf("good job!!\n");}else {printf("not bad!\n");}finish = 1;}if ( count == n ){if ( finish != 1 ){break;}}} while ( finish != 1 );printf("Game Over!!!\n");return 0;
}

6 求数列的前N项和

计算2/1+3/2+5/3+8/8+…的前N项之和,注:由第2项起,每一项的分子是前一项的分子与分母之和,分母是前一项的分子。
输入样例:
20
输出样例:
32.66
参考代码:

#include <stdio.h>main()
{int n;scanf("%d",&n);double sub,mom,sum,t,i;sub = 2;mom = 1;for ( i=1;i<=n;i++ ){sum += sub/mom;t = sub;sub = sub + mom;mom = t;}printf("%0.2f\n",sum);return 0;
}

7 约分最简分式

关键:求分子分母的最大公约数
输入样例:
4/8
输出样例:
1/2
参考代码:

#include <stdio.h>main()
{int sub,mom,a,b,t;scanf("%d/%d",&sub,&mom);a = sub;b = mom;//辗转相除法求最大公约数while ( b > 0 ){t = a%b;a = b;b = t;}printf("%d/%d\n",sub/a,mom/a);return 0;
}

8 念数字(switch练习)

数字和拼音对应关系
-:fu
0:ling
1:yi
2:er
3:san
4:si
5:wu
6:liu
7:qi
8:ba
9:jiu
输入样例:
-5201314
输出样例:

参考代码:

#include <stdio.h>main()
{int n;printf("请输入数字:");scanf("%d",&n);printf("输入的数字:%d",n);if ( n < 0 ){printf("fu ");n = -n;}//此方式不支持0开头的数字int m = 1;int t = n;while ( t > 9 ){t /= 10;m *= 10;}do{int p = n/m;switch (p){case 0: printf("ling");break;case 1: printf("yi");break;case 2: printf("er");break;case 3: printf("san");break;case 4: printf("si");break;case 5: printf("wu");break;case 6: printf("liu");break;case 7: printf("qi");break;case 8: printf("ba");break;case 9: printf("jiu");break;}if ( m >9 )printf(" ");n %= m;m /= 10;} while ( m > 0 );printf("\n");return 0;
}

Python版本的移步:
Python基础练习

【C语言】基础练习题相关推荐

  1. c语言中的字符变量用什么保留字来说明,第1、2章C语言基础练习题

    第1章 C语言基础 第2章 顺序结构 练习题 学号: 姓名: 45. 已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是[1]. 46. 已知 i=5.6;写出语句 a=(int ...

  2. C语言的叙述大小写字母e1相同,第1、2章C语言基础练习题

    第1章 C语言基础 第2章 顺序结构 练习题 学号: 姓名: 单选: 1. 当代电子计算机能够自动地处理指定的问题是因 为( ). A. 计算机是电动的 B. 有解决该问题的计算机程序 C. 事先存储 ...

  3. a=10a=0C语言,C语言基础练习题(含答案)

    第一章 C语言基础知识 ·5· A.2.500000 B.2.750000 C.3.500000 D.0.000000 29.在C语言中,char型数据在内存中的存储形式是( ). A.补码 B.反码 ...

  4. c语言基础练习题 字符串输入scanf/gets 字符串赋值、比大小

    PTA上C语言程序设计练习题,包含查找书籍.字符串排序.主要用到字符串输入scanf/gets 字符串赋值.比大小等知识. 1.查找书籍 习题9-4 查找书籍 (20 分) 给定n本书的名称和定价,本 ...

  5. C语言-基础练习题详解

    目录 前言 一.模拟用户登录情景 1.要求 2.代码 二.求两数的最大公约数 1.方法简介 2.代码 三.打印闰年 1.要求与概念 2.代码 四.打印100-200之间的素数 1.方法与概念 2.代码 ...

  6. Go语言基础练习题系列2

    1.练习1 生成一个随机数,让一个用户去猜这个数是多少? 代码示例如下: package mainimport ("fmt""math/rand" //math ...

  7. mypow等于1什么意思c语言,C语言基础练习题总结

    1.     从源代码helloworld.c经历 预编译,汇编,编译,连接四个过程到可执行文件helloworld.并写出使用gcc编译器对应每个过程的语句.连接的时候 -l gcc –o  a.i ...

  8. c语言基础练习题及答案,C语言基础练习题(含答案)

    1 A.12 B.34 C.12345 D.提示出错.无结果 41.若x和y均定义为int 型,z定义为double型,以下不合法的scanf()函数调用语句为 ( ). A.scanf(" ...

  9. Go语言基础练习题系列1

    1.练习1 题目:使用fmt分别打印字符串.二进制.十进制.十六进制.浮点数. package mainimport ("fmt" )func main() {var a = &q ...

  10. 河北专升本——C语言基础练习题

    目录 一.求100~200之间的素数 二.给出一个大于或等于3的整数,判断它是不是素数 三.判断2000-2500年中的每一年是否为闰年,并将结果输出 四.判断一个数是否能被3和5整除 五.求1+2+ ...

最新文章

  1. python使用input函数时、必须添加提示文字-Python基础教程(4)使用input函数实现用户交互...
  2. 41、Power Query-Text.Combine函数进阶2
  3. C#中主窗体Panel中加载其他多个窗体Panel控件
  4. Android 播放raw文件夹下音频文件,本地MP3文件播放,播放云端MP3文件,获取MP3文件播放时长
  5. 中断函数 printf_嵌入式中断服务函数的一些特点
  6. abaqus利用python实现部件合并_在abaqus python中使用Element()构造函数创建部件元素...
  7. 用matlab读取raw并做出图像,image - 如何在MATLAB中读取RAW图像? - 堆栈内存溢出
  8. 【pytorch】RuntimeError: 1only batches of spatial targets supported (3D tensors) but got targets of si
  9. Mimics 21安装
  10. 《游戏设计、原型与开发——基于Unity与C#从构思到实现》学习笔记一
  11. 接口压力测试工具JMeter
  12. php网页怎么设置背景音乐,怎么给网页添加背景音乐
  13. matlab 泊松分布作图,matlab用一组数据画泊松分布图
  14. python实现图形旋转_图像随机旋转及坐标进行旋转原理及Python实现
  15. LabVIEW编程LabVIEW控制研华PCI-1739U例程与相关资料
  16. wps去除登陆_如何去掉wps中的登录页面
  17. 电脑上怎么把mov转换成mp4?
  18. 帝国cms 首页php,帝国CMS新增加专题页面
  19. unsteady_rel_perm案例学习
  20. 京剧《断密涧》中李密和王伯当的唱段

热门文章

  1. Python 3 迁移怨声载道
  2. 2023年安徽省职业院校“磐云杯”网络安全竞赛任务书
  3. React Ant Design 通过 DatePicker获取一周的起止时间
  4. 3D NAND 前沿
  5. allegro中动态铜皮一键倒圆角
  6. Theil-Sen Median斜率估计和Mann-Kendall趋势分析:以多年NPP数据为例
  7. 湘潭市古城中学《西游记》手抄报活动作品展示
  8. Ubuntu安装VMware Tools后不起作用
  9. AI杀入影视圈:算法再造李佳琦,中戏开招AI博士
  10. Citrix联机插件配置管理器:找不到满足所有锁定要求的值