C语言习题
C语言学习习题集
周末不上称
这个作者很懒,什么都没留下…
展开
-
C语言习题:实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,输入9,输出9*9口诀表,输入12,输出12*12的乘法口诀表
C语言习题:实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,输入9,输出9*9口诀表,输入12,输出12*12的乘法口诀表 简化版本如下:C语言习题:输出9*9乘法口诀表 思路:将输出乘法口诀表封装成一个函数,大致思路于上述文章类似,可参考原创 2022-04-06 23:26:32 · 999 阅读 · 4 评论 -
C语言习题:编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。
C语言习题:编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。思路:在 ASCII码表中,‘A'与‘a’之间相差97-65=32个序号,其他大小写相差也是32则:给定大写输出小写需要加上32,给定小写输出大写需要减去32代码如下:#include <stdio.h>int main() { // insert code here... int ch = 0; ..原创 2022-04-05 18:20:32 · 569 阅读 · 0 评论 -
C语言习题:猜数字游戏(C语言随机数)
C语言习题:猜数字游戏(C语言随机数)需要了解C语言随机数的生成方法:在C语言中比较常用的随机函数是 rand 函数,它可以随机的产生 0 ~ rand_max 的随机数,定义类型不同最大值也不同,rand 函数包含在头文件stdlib.h中。注意点:rand 函数产生的随机数是伪随机数,是根据一个数按照某个公式推算出来的,这个数在系统启动之后就是一个定值。要想每次产生的随机数不一样,那么就要用到 srand 函数。【注意强制类型转换!】可以借助time函数,具体代码在下有体..原创 2022-04-05 16:41:31 · 4315 阅读 · 0 评论 -
C语言习题:有序数组查找某具体数字n(折半查找)
C语言习题:有序数组查找某具体数字n(折半查找)折半查找:也称为二分查找法,是一种在有序数组中查找某一特定元素的搜索算法。 搜索从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于该元素的那一半中查找,并且重复该步骤,从中间元素开始比较。若某1个步骤中数组为空,则代表找不到。 这种搜索算法每一次比较都使搜索范围缩小一半#include <stdio.h>int ma...原创 2022-04-05 14:55:42 · 689 阅读 · 0 评论 -
C语言习题:计算1到10的阶乘之和
C语言习题:计算1!+2!+3!+...+10!思路:先计算n的阶乘,再用for循环从1~10进行累加#include <stdio.h>int fac(int n){ int i = 0; int res = 1; for (i = 1; i <= n; i++) { res *= i; } return res;}int main() { // insert code here... ...原创 2022-04-04 22:47:17 · 2558 阅读 · 0 评论 -
C语言习题:求出0〜999之间的所有“水仙花数”并输出
C语言习题:求出0〜999之间的所有“水仙花数”并输出“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身例如153、370、371及407就是三位数的水仙花数,其各个数之立方和等于该数:153 = 1^3 + 5^3 + 3^3。370 = 3^3 + 7^3 + 0^3。371 = 3^3 + 7^3 + 1^3。407 = 4^3 + 0^3 + 7^3。思路一:math.h中的pow函数#include <stdio.h>#incl...原创 2022-04-03 19:55:44 · 636 阅读 · 0 评论 -
C语言习题:编写程序数一下 1到 100 的所有整数中出现多少个数字9
C语言习题:编写程序数一下 1到 100 的所有整数中出现多少个数字9原创 2022-04-03 13:48:05 · 666 阅读 · 0 评论 -
C语言习题:计算1/1-1/2+1/3-1/4+1/5 ⋯⋯ + 1/99 - 1/100 的值
C语言习题:计算1/1-1/2+1/3-1/4+1/5 ⋯⋯ + 1/99 - 1/100 的值思路:原创 2022-04-02 23:53:57 · 1014 阅读 · 0 评论 -
C语言习题:将数组A中的内容和数组B中的内容进行交换。(数组一样大)
C语言习题:将数组A中的内容和数组B中的内容进行交换。(数组一样大)思路一:创建一个辅助数组C,将A中的元素存储在C中,之后B->A,C->B思路二:创建一个辅助变量temp,逐一替换代码如下://方法一#include <stdio.h>int main() { // insert code here... int A[5] = {1,2,3,4,5}; int B[5] = {6,7,8,9,10}; int C[5].原创 2022-04-02 23:03:37 · 594 阅读 · 0 评论 -
C语言习题:求两个数的最大公约数
C语言习题:求两个数的最大公约数基本思路:输入两个数,先判断两个数的大小,用大数除以小数如果余数为0,则最大公约数为小数如果余数不为0,则小数--,再重复上述步骤优化:将上述做法封装成一个函数,代码如下:#include <stdio.h>int greatest_common_divisor = 0;//在a > b的情况下判断a和b的最大公约数void judge(int a, int b){ int i = 0; for(...原创 2022-04-01 19:19:39 · 819 阅读 · 0 评论 -
C语言习题:将三个数按从大到小输出
C语言习题:将三个数按从大到小输出思路一:由于是输出三个数,则分别判断a,b,c的大小,分情况讨论,对每种情况进行不同的输出(代码很冗余)思路二: 先进行排序,再进行输出对(a,b)进行判断,如果a>b,位置不变,如果a<b,则位置交换需要注意:可以借助中间变量存储交换,如下图所示:#include <stdio.h>int main() { // insert code here... printf("请输入三个数字:"...原创 2022-04-01 17:32:15 · 3809 阅读 · 0 评论 -
C语言习题:求10个整数中最大值
求10个整数中最大值思路:用数组存储,循环输入10个数字对其逐一与数组中的第一个元素进行比较如果比a[0]大的话就把该数值存到a[0]中,否则不变则最后a[0]中存储的数据为数组中最大值1、直接进行比较大小#include <stdio.h>int main() { // insert code here... int a[10] = {}; int i = 0; int max = 0; for(i = 0; ...原创 2022-03-31 10:36:02 · 1258 阅读 · 0 评论 -
C语言习题:给定两个整形变量的值,将两个值的内容进行交换
给定两个整形变量的值,将两个值的内容进行交换思路:不考虑空间复杂度时使用一个中间变量存储,再交换#include <stdio.h>int main() { // insert code here... int a = 0, b = 0, change = 0; scanf("%d%d", &a, &b); change = a; a = b; b = change; printf("交换后,a ...原创 2022-03-31 10:04:13 · 347 阅读 · 0 评论 -
C语言习题:判断1000年---2000年之间的闰年
C语言习题:判断1000年---2000年之间的闰年定义:普通闰年:公历年份是4的倍数的,且不是100的倍数。世纪闰年:公历年份是整百数的,必须是400的倍数才是世纪闰年思路:对于1000---2000年的每一年进行循环遍历整百数对400取余,其他对4取余并判断不是100的倍数#include <stdio.h>int main() { // insert code here... int i = 0; printf("请输入1...原创 2022-03-30 12:43:58 · 866 阅读 · 1 评论 -
C语言习题:输出乘法口诀表
C语言习题:输出乘法口诀表思路:嵌套循环(双层),格式化输出#include <stdio.h>int main() { // insert code here... int i = 0; int j = 0; for(i = 1; i < 10; i++){ for(j = 1; j <= i; j++) printf("%d*%d=%d ", i, j, i*j); ...原创 2022-03-30 11:42:35 · 395 阅读 · 0 评论 -
C语言习题:打印100~200之间的素数
C语言习题:打印100~200之间的素数原创 2022-03-29 22:25:42 · 1144 阅读 · 0 评论