C语言基础算法案例
- 格式:docx
- 大小:17.36 KB
- 文档页数:7
C程序经典算法50例1.二分查找算法:在有序数组中查找指定元素。
2.冒泡排序算法:通过不断比较相邻元素并交换位置,将较大的元素向后冒泡。
3.快速排序算法:通过选择一个基准元素,将数组分割为左右两部分,并递归地对两部分进行快速排序。
4.插入排序算法:将数组划分为已排序和未排序两部分,每次从未排序中选择一个元素插入到已排序的合适位置。
5.选择排序算法:遍历数组,每次选择最小元素并放置在已排序部分的末尾。
6.希尔排序算法:将数组按照一定间隔进行分组并分别进行插入排序,然后逐步减小间隔并重复这个过程。
7.归并排序算法:将数组递归地划分为两部分,然后将两个有序的部分进行合并。
8.桶排序算法:将元素根据特定的映射函数映射到不同的桶中,然后对每个桶分别进行排序。
9.计数排序算法:统计每个元素的出现次数,然后根据计数进行排序。
10.基数排序算法:从低位到高位依次对元素进行排序。
11.斐波那契数列算法:计算斐波那契数列的第n项。
12.阶乘算法:计算给定数字的阶乘。
13.排列问题算法:生成给定数组的全排列。
14.组合问题算法:生成给定数组的所有组合。
15.最大连续子序列和算法:找出给定数组中和最大的连续子序列。
16.最长递增子序列算法:找出给定数组中的最长递增子序列。
17.最长公共子序列算法:找出两个给定字符串的最长公共子序列。
18.最短路径算法:计算给定有向图的最短路径。
19.最小生成树算法:构建给定连通图的最小生成树。
20.汉诺塔算法:将n个圆盘从一个柱子移动到另一个柱子的问题。
21.BFS算法:广度优先算法,用于图的遍历和查找最短路径。
22.DFS算法:深度优先算法,用于图的遍历和查找连通分量。
23.KMP算法:字符串匹配算法,用于查找一个字符串是否在另一个字符串中出现。
24.贪心算法:每次都选择当前情况下最优的方案,适用于求解一些最优化问题。
25.动态规划算法:将一个大问题划分为多个子问题,并通过子问题的解求解整个问题,适用于求解一些最优化问题。
加减乘除括号运算顺序c语言算法
加减乘除括号运算顺序是一个非常基础的数学算法问题,而在C 语言中,实现这个算法也非常简单,只需要用到基础的算术运算符和判断语句即可。
具体实现过程如下:
1. 由于括号具有最高优先级,因此我们首先需要处理括号。
可以通过递归函数的方式来实现,每当遇到一个左括号,就递归调用本身,直到遇到右括号。
在递归过程中,可以将括号内的表达式作为一个整体进行后续的计算。
2. 接下来,处理乘除运算。
由于乘除运算的优先级高于加减运算,因此我们需要先处理乘除运算。
可以使用一个变量来保存上一次处理的运算符,如果上一个运算符为乘号或者除号,则将它们与下一个数字相乘或者相除。
3. 最后,处理加减运算。
将所有运算符和数字存储在一个栈中,同时遍历栈中的元素,依次取出两个数字和一个运算符进行计算,然后将结果再次压回栈中,直到最终得到一个结果为止。
这就是加减乘除括号运算顺序的C语言算法实现过程。
c语言算法100例以下是一些经典的C语言算法题目,总共提供100个例子供你练习和学习:1.编写一个程序,计算并输出斐波那契数列的前20个数。
2.编写一个程序,判断一个数是否为素数。
3.编写一个程序,计算并输出一个数的阶乘。
4.编写一个程序,实现两个数的交换(不使用第三个变量)。
5.编写一个程序,找出一个数组中的最大值。
6.编写一个程序,将一个字符串反转。
7.编写一个程序,判断一个字符串是否为回文字符串。
8.编写一个程序,实现冒泡排序算法对一个数组进行排序。
9.编写一个程序,实现二分查找算法在一个有序数组中查找指定的元素。
10.编写一个程序,计算并输出斐波那契数列的第n个数。
11.编写一个程序,将一个二维数组顺时针旋转90度。
12.编写一个程序,计算并输出一个数的平方根。
13.编写一个程序,判断一个字符串中是否包含重复字符。
14.编写一个程序,实现插入排序算法对一个数组进行排序。
15.编写一个程序,将一个有序数组合并为一个有序数组。
16.编写一个程序,判断一个数是否为完全数(即所有因子之和等于该数本身)。
17.编写一个程序,计算并输出一个数的倒数。
18.编写一个程序,判断一个字符串是否是另一个字符串的子串。
19.编写一个程序,实现选择排序算法对一个数组进行排序。
20.编写一个程序,计算并输出两个数的最大公约数。
21.编写一个程序,实现快速排序算法对一个数组进行排序。
22.编写一个程序,将一个字符串中的所有空格替换为指定的字符。
23.编写一个程序,判断一个数是否是回文数。
24.编写一个程序,计算并输出两个数的最小公倍数。
25.编写一个程序,实现归并排序算法对一个数组进行排序。
26.编写一个程序,判断一个字符串是否是有效的括号串。
27.编写一个程序,计算并输出一个数的立方根。
28.编写一个程序,实现堆排序算法对一个数组进行排序。
29.编写一个程序,判断一个数是否是质数。
30.编写一个程序,计算并输出一个数的二进制表示。
10个经典的C语言面试基础算法及代码10个经典的C语言面试基础算法及代码算法是一个程序和软件的灵魂,下面店铺为大家整理了10个经典的C语言面试基础算法及代码,希望能帮到大家!1、计算Fibonacci数列Fibonacci数列又称斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21。
C语言实现的代码如下:/* Displaying Fibonacci sequence up to nth term where n is entered by user. */#includeint main(){int count, n, t1=0, t2=1, display=0;printf("Enter number of terms: ");scanf("%d",&n);printf("Fibonacci Series: %d+%d+", t1, t2); /* Displaying first two terms */count=2; /* count=2 because first two terms are already displayed. */while (count<n){display=t1+t2;t1=t2;t2=display;++count;printf("%d+",display);}return 0;}结果输出:Enter number of terms: 10Fibonacci Series: 0+1+1+2+3+5+8+13+21+34+也可以使用下面的.源代码:/* Displaying Fibonacci series up to certain number entered by user. */#includeint main(){int t1=0, t2=1, display=0, num;printf("Enter an integer: ");scanf("%d",&num);printf("Fibonacci Series: %d+%d+", t1, t2); /* Displaying first two terms */display=t1+t2;while(display<num){printf("%d+",display);t1=t2;t2=display;display=t1+t2;}return 0;}结果输出:Enter an integer: 200Fibonacci Series: 0+1+1+2+3+5+8+13+21+34+55+89+144+2、回文检查源代码:/* C program to check whether a number is palindrome or not */#includeint main(){int n, reverse=0, rem,temp;printf("Enter an integer: ");scanf("%d", &n);temp=n;while(temp!=0){rem=temp%10;reverse=reverse*10+rem;temp/=10;}/* Checking if number entered by user and it's reverse number is equal. */if(reverse==n)printf("%d is a palindrome.",n);elseprintf("%d is not a palindrome.",n);return 0;}结果输出:Enter an integer: 1232112321 is a palindrome.3、质数检查注:1既不是质数也不是合数。
c语言数组小案例C语言是一种广泛应用的编程语言,数组是C语言中常用的数据结构之一。
它可以存储多个相同类型的数据,并通过索引访问和操作这些数据。
下面列举了10个关于C语言数组的小案例,以帮助读者更好地理解和掌握数组的使用。
1. 计算数组元素的总和编写一个程序,从用户输入一组整数,并计算它们的总和。
使用数组来存储输入的整数,并通过循环遍历数组来计算总和。
2. 查找数组中的最大值和最小值编写一个程序,从用户输入一组整数,并找到其中的最大值和最小值。
使用数组来存储输入的整数,并通过循环遍历数组来找到最大值和最小值。
3. 数组的逆序排列编写一个程序,从用户输入一组整数,并将它们按逆序排列。
使用数组来存储输入的整数,并通过循环遍历数组来实现逆序排列。
4. 数组的去重编写一个程序,从用户输入一组整数,并去除其中的重复元素。
使用数组来存储输入的整数,并通过循环遍历数组来去除重复元素。
5. 数组的排序编写一个程序,从用户输入一组整数,并将它们按升序或降序排序。
使用数组来存储输入的整数,并通过循环遍历数组来实现排序。
6. 数组的拷贝编写一个程序,从用户输入一组整数,并将它们拷贝到另一个数组中。
使用两个数组分别存储输入的整数,并通过循环遍历数组来实现拷贝。
7. 数组的搜索编写一个程序,从用户输入一组整数,并在数组中搜索指定的值。
使用数组来存储输入的整数,并通过循环遍历数组来搜索指定的值。
8. 数组的合并编写一个程序,从用户输入两组整数,并将它们合并为一个数组。
使用两个数组分别存储输入的整数,并通过循环遍历数组来实现合并。
9. 数组的平均值和方差编写一个程序,从用户输入一组整数,并计算它们的平均值和方差。
使用数组来存储输入的整数,并通过循环遍历数组来计算平均值和方差。
10. 数组的矩阵操作编写一个程序,从用户输入一个矩阵,并实现矩阵的转置、矩阵的相加和矩阵的乘法等操作。
使用二维数组来存储输入的矩阵,并通过循环遍历数组来实现矩阵操作。
C语言经典算法100例C语言经典算法100例题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?__________________________________________________________________程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....__________________________________________________________________ _程序源代码:main(){long f1,f2;int i;f1=f2=1;for(i=1;ii++){ printf(“%12ld %12ld",f1,f2);if(i%2==0) printf("\n");/*控制输出,每行四个*/f1=f1+f2;/*前两个月加起来赋值给第三个月*/f2=f1+f2;/*前两个月加起来赋值给第三个月*/}}上题还可用一维数组处理,you try!题目:判断101-200之间有多少个素数,并输出所有素数。
__________________________________________________________________程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
__________________________________________________________________ _程序源代码:#include "math.h"main(){int m,i,k,h=0,leap=1;printf("\n");for(m=101;m=200;m++){ k=sqrt(m+1);for(i=2;ii++)if(m%i==0){leap=0;break;}if(leap) {printf("%-4d",m);h++;if(h%10==0)printf("\n");}leap=1;}printf("\nThe total is %d",h);}题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
数位求和c语言1、引言数位求和是计算机科学中非常基础、重要的一个算法问题。
其主要目的是将一个整数的每一位数字相加,得到一个结果。
在实际应用中,数位求和广泛应用于加密算法、校验码计算、数字签名等领域。
因此,深入了解数位求和的算法原理和实现方法,对于理解计算机科学的基础原理和算法设计与优化具有重要意义。
2、算法原理数位求和的算法思想很简单:将一个整数的每一位数字相加,得到一个和。
例如,对于整数1234,数位求和的结果是1+2+3+4=10。
实现数位求和的算法主要有两种方法:一是将整数转换为字符串,然后依次遍历字符串中的每一个字符,将其转换为数字,并相加;二是使用数学方法,通过不断地取模和除法操作,获取整数的每一位数字,并相加。
采用字符串遍历的方法显然更为简单直接,但由于字符串操作的复杂度较高,效率不及数学方法。
下面以数学方法为例,介绍数位求和的算法实现原理。
(1)取模运算取模运算指将一个整数a,对另一个整数b取余数的运算,通常用符号“%”表示。
例如,10%3=1,表示将10除以3,余数为1。
在数位求和的算法中,取模运算是获取原数的最低位数字的主要方法。
例如,对于整数1234,用10取模的结果是4,表示该数最低位是4。
(2)除法运算除法运算指将一个整数a,对另一个整数b进行整除的运算,通常用符号“/”表示。
例如,10/3=3,表示将10除以3,得到商为3,余数为1。
在数位求和的算法中,除法运算是获取更高位数字的主要方法。
例如,对于整数1234,先用10取模得到最低位4,然后用10整除,得到剩余部分123,再用10取模得到次低位3,以此类推。
(3)循环迭代利用上述两种运算,数位求和的算法具体实现过程中,一般采用循环迭代的方式。
即从最低位开始,通过取模和除法运算获取每一位数字,并累加求和。
当原数变成0时,算法结束。
3、算法实现下面以C语言为例,实现基于数学方法的数位求和算法。
代码如下:```cinclude <stdio.h>int digitSum(int n) {int sum = 0;while(n > 0) {sum += n % 10;n /= 10;}return sum;}int main() {int n;printf("请输入一个整数:");scanf("%d", &n);printf("%d的数位之和是:%d\n", n, digitSum(n));return 0;}```4、算法应用数位求和广泛应用于加密算法、校验码计算、数字签名等领域,在软件开发、信息安全、计算机网络等方面都有很重要的应用。
【任务描述】任意输入四个整数,数值范围(1~10),只能够用加、减、乘、除以及适当的括号来进行连接计算,无论顺序如何,使得计算结果为24,或者宣布根本就是无解的。
需要注意的是,每个数值必须都参与运算,并且只能够运算一次。
若输入数据小于1或者大于10,则提示输入错误,请重新输入。
若输入数据符合要求,且经过加、减、乘、除运算后,运算结果能得到24,则打印出该结果的计算表达式。
若输入不能运算出24的数据,则提示“输入的四位数据经过运算后不能得到24”。
【主要算法设计】应用穷举法搜索整个解空间,筛选出符合题目要求的全部解。
关键的问题是如何确定该题的解空间。
假设输入的4个整数为A、B、C、D,如果不考虑括号优先级的情况,仅用四则运算符将它们连接,例如:A+B*C/D…,共有43=64种表达式情形。
如果考虑加括号的情况,暂不考虑运算符,共有以下5种情形:((A□B)□C)□D(A□(B□C))□DA□(B□(C□D))A□((B□C)□D)(A□B)□(C□D)其中□代表(+-*/)任意的运算符。
将上面两种情况综合起来考虑,每输入4个整数,其构成的解空间为64*5=320种表达式。
也就是说,每输入4个整数,无论以什么方式或优先级进行四则运算,其结果都会在这320种答案之中。
我们的任务就是在这320种表达式中寻找出计算结果为24的表达式。
【程序流程框图】【详细设计】#include "stdio.h"char op[5]={'#','+','-','*','/',};float cal(float x,float y,int op){switch(op){case 1:return x+y;case 2:return x-y;case 3: return x*y;case 4: return x/y;}}float calculate_model1(float i,float j,float k,float t,int op1,int op2,int op3){ /*对应表达式类型:((A□B)□C)□D*/ float r1,r2,r3;r1 = cal(i,j,op1);r2 = cal(r1,k,op2);r3 = cal(r2,t,op3);return r3;}float calculate_model2(float i,float j,float k,float t,int op1,int op2,int op3){ /*对应表达式类型:(A□(B□C))□D */ float r1,r2,r3;r1 = cal(j,k,op2);r2 = cal(i,r1,op1);r3 = cal(r2,t,op3);return r3;}float calculate_model3(float i,float j,float k,float t,int op1,int op2,int op3){ /*对应表达式类型:A□(B□(C□D))*/ float r1,r2,r3 ;r1 = cal(k,t,op3);r2 = cal(j,r1,op2);r3 = cal(i,r2,op1);return r3;}float calculate_model4(float i,float j,float k,float t,int op1,int op2,int op3){ /*对应表达式类型:A□((B□C)□D)*/ float r1,r2,r3;r1 = cal(j,k,op2);r2 = cal(r1,t,op3);r3 = cal(i,r2,op1);return r3;}float calculate_model5(float i,float j,float k,float t,int op1,int op2,int op3){ /*对应表达式类型:(A□B)□(C□D)*/float r1,r2,r3 ;r1 = cal(i,j,op1);r2 = cal(k,t,op3);r3 = cal(r1,r2,op2);return r3;}int get24(int i,int j,int k,int t){int op1,op2,op3;int flag=0;for(op1=1;op1<=4;op1++) /*4重循环枚举出不考虑括号情况的64种表达式类型*/ for(op2=1;op2<=4;op2++)for(op3=1;op3<=4;op3++){if(calculate_model1(i,j,k,t,op1,op2,op3)==24) /*5种加括号形式共320个表达式筛选24点*/{printf("((%d%c%d)%c%d)%c%d=24\n",i,op[op1],j,op[op2],k,op[op3],t);flag = 1;}if(calculate_model2(i,j,k,t,op1,op2,op3)==24){printf("(%d%c(%d%c%d))%c%d=24\n",i,op[op1],j,op[op2],k,op[op3],t);flag = 1;}if(calculate_model3(i,j,k,t,op1,op2,op3)==24){printf("%d%c(%d%c(%d%c%d))=24\n",i,op[op1],j,op[op2],k,op[op3],t);flag = 1;}if(calculate_model4(i,j,k,t,op1,op2,op3)==24){printf("%d%c((%d%c%d)%c%d)=24\n",i,op[op1],j,op[op2],k,op[op3],t);flag = 1;}if(calculate_model5(i,j,k,t,op1,op2,op3)==24&&!(op2==4&&k==t)) /*排除分母为零的情况*/{printf("(%d%c%d)%c(%d%c%d)=24\n",i,op[op1],j,op[op2],k,op[op3],t);flag = 1;}}return flag;}void main(){int i,j,k,t;do{printf("Please input four integer (1~10)\n");loop: scanf("%d %d %d %d",&i,&j,&k,&t);}while(i<1||i>10||j<1||j>10||k<1||k>10||t<1||t>10);if(get24(i,j,k,t));else printf("Sory, the four integer cannot be calculated to get 24\n");getche();}【测试用例】测试输入4、5、6、7测试输入6、7、8、9【调试运行结果】。
C语言入门必学—10个经典C语言算法C语言是一种广泛使用的编程语言,具有高效、灵活和易学的特点。
它不仅在软件开发中被广泛应用,也是计算机科学专业的必修课。
在学习C语言的过程中,掌握一些经典的算法是非常重要的。
本文将介绍10个经典C语言算法,帮助读者更好地了解和掌握C语言。
一、冒泡排序算法(Bubble Sort)冒泡排序算法是最简单、也是最经典的排序算法之一。
它通过不断比较相邻的元素并交换位置,将最大(或最小)的元素逐渐“冒泡”到数组的最后(或最前)位置。
二、选择排序算法(Selection Sort)选择排序算法是一种简单但低效的排序算法。
它通过不断选择最小(或最大)的元素,并与未排序部分的第一个元素进行交换,将最小(或最大)的元素逐渐交换到数组的前面(或后面)。
三、插入排序算法(Insertion Sort)插入排序算法是一种简单且高效的排序算法。
它通过将数组分为已排序和未排序两个部分,依次将未排序部分的元素插入到已排序部分的合适位置。
四、快速排序算法(Quick Sort)快速排序算法是一种高效的排序算法。
它采用了分治的思想,通过将数组分为较小和较大两部分,并递归地对两部分进行排序,最终达到整个数组有序的目的。
五、归并排序算法(Merge Sort)归并排序算法是一种高效的排序算法。
它采用了分治的思想,将数组一分为二,递归地对两个子数组进行排序,并将结果合并,最终得到有序的数组。
六、二分查找算法(Binary Search)二分查找算法是一种高效的查找算法。
它通过不断将查找范围折半,根据中间元素与目标值的大小关系,缩小查找范围,最终找到目标值所在的位置。
七、递归算法(Recursive Algorithm)递归算法是一种通过自我调用的方式解决问题的算法。
在C语言中,递归算法常用于解决树的遍历、问题分解等情况。
八、斐波那契数列算法(Fibonacci Sequence)斐波那契数列是一列数字,其中每个数字都是前两个数字的和。
C 语言基本算法第一章 最简单的问题和算法1、 求N 的N 次方的最后三位数1 main(){2 int i,x,y,k=1;3 scanf("%d %d",&x,&y);4 for(i=1;i<=y;i++)5 k=k*x%1000;6 printf("%d",k);7 }2、100!的末尾多少个零1 main(){2int count=0,i; 3for(i=5;i<=100;i+=5){ 4count++; 5if(!(i%25))count++;6} 7printf("%d",count); 8}思考:修改程序中求因子5的数目的算法,使程序可以求出任意N !的末尾有多少个零。
3、 将任意一整数转换为二进制形式1 printb(int x,int n){2 if(n>0){3 putchar('0'+((unsigned)(x&1<<(n-1))>>(n-1))); //取第N-1位的二进制值,并打印出来4 printb(x,n-1);}5 }6 main(){7 int x;8 scanf("%d",&x);9 printb(x,sizeof(int)*8);10 }4、 第一个人将鱼分成五份,把多余的一条鱼扔掉,拿走自己的一份,第二个人同样将鱼分成五份。
拿走自己的一份,依次下去,问共有多少鱼? main(){ int i,n,x,flag=1; for(n=6;flag;n++){ for(i=1,x=n;flag&&i<=5;i++)1 2 3 4 56789if((x-1)%5==0)x=x*4/5;else flag=0;if(flag)break;else flag=1;} printf("%d",n);}问题进一步讨论:程序采用试探法,试探的初值为6,每次试探的步长为1,这是过分保守的做法,可以在进一步深入分析题目的基础上修改初值,增大试探的步长值,以减少试探次数。
C语言基础算法案例C语言基础算法案例(精选)C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
下面整理了一些C语言基础算法案例,希望对大家有所帮助!1、C语言打印一条语句源代码:/* C Program to print a sentence. */#includeint main(){printf("C Programming"); /* printf() prints the content inside quotation */return 0;}输出:C Programming2、C语言打印用户输入的一个整数#includeint main(){int num;printf("Enter a integer: ");scanf("%d",&num); /* Storing a integer entered by user in variable num */printf("You entered: %d",num);return 0;}输出:Enter a integer: 25You entered: 253、C语言实现两个整数相加/*C programming source code to add and display the sum of two integers entered by user */#includeint main( ){int num1, num2, sum;printf("Enter two integers: ");scanf("%d %d",&num1,&num2); /* Stores the two integer entered by user in variable num1 and num2 */sum=num1+num2; /* Performs addition and stores it in variable sum */printf("Sum: %d",sum); /* Displays sum */return 0;}输出:Enter two integers: 1211Sum: 234、C语言实现两个小数相乘/*C program to multiply and display the product of two floating point numbers entered by user. */#includeint main( ){float num1, num2, product;printf("Enter two numbers: ");scanf("%f %f",&num1,&num2); /* Stores the two floatingpoint numbers entered by user in variable num1 and num2 respectively */product = num1*num2; /* Performs multiplication and stores it */printf("Product: %f",product);return 0;}输出:Enter two numbers: 2.41.1Product: 2.6400005、C语言查找字符的.ASCII值/* Source code to find ASCII value of a character entered by user */#includeint main(){char c;printf("Enter a character: ");scanf("%c",&c); /* Takes a character from user */printf("ASCII value of %c = %d",c,c);return 0;}输出:Enter a character: GASCII value of G = 716、C语言根据用户输入的整数做商和余数/* C Program to compute remainder and quotient */#includeint main(){int dividend, divisor, quotient, remainder;printf("Enter dividend: ");scanf("%d",÷nd);printf("Enter divisor: ");scanf("%d",&divisor);quotient=dividend/divisor; /* Computes quotient */remainder=dividend%divisor; /* Computes remainder */printf("Quotient = %d ",quotient);printf("Remainder = %d",remainder);return 0;}输出:Enter dividend: 25Enter divisor: 4Quotient = 6Remainder = 17、C语言获取整型、单精度浮点型、双精度浮点型和字符型的长度基本语法:/* This program computes the size of variable using sizeof operator.*/#includeint main(){int a;float b;double c;char d;printf("Size of int: %d bytes ",sizeof(a));printf("Size of float: %d bytes ",sizeof(b));printf("Size of double: %d bytes ",sizeof(c));printf("Size of char: %d byte ",sizeof(d));return 0;}输出:Size of int: 4 bytesSize of float: 4 bytesSize of double: 8 bytesSize of char: 1 byte8、C语言获取关键字long的长度范围#includeint main(){int a;long int b; /* int is optional. */long long int c; /* int is optional. */printf("Size of int = %d bytes ",sizeof(a));printf("Size of long int = %ld bytes ",sizeof(b)); printf("Size of long long int = %ld bytes",sizeof(c)); return 0;}输出:Size of int = 4 bytesSize of long int = 4 bytesSize of long long int = 8 bytes9、C语言交换数值#includeint main(){float a, b, temp;printf("Enter value of a: ");scanf("%f",&a);printf("Enter value of b: ");scanf("%f",&b);temp = a; /* Value of a is stored in variable temp */a = b; /* Value ofb is stored in variable a */b = temp; /* Value of temp(which contains initial value of a) is stored in variable b*/printf(" After swapping, value of a = %.2f ", a);printf("After swapping, value of b = %.2f", b);return 0;}输出:Enter value of a: 1.20Enter value of b: 2.45After swapping, value of a = 2.45After swapping, value of b = 1.210、C语言检查数值是奇数还是偶数/*C program to check whether a number entered by user is even or odd. */#includeint main(){int num;printf("Enter an integer you want to check: ");scanf("%d",&num);if((num%2)==0) /* Checking whether remainder is 0 or not. */printf("%d is even.",num);elseprintf("%d is odd.",num);return 0;}输出1:Enter an integer you want to check: 2525 is odd.输出2:Enter an integer you want to check: 1212 is even.也可以用条件运算符解决:/* C program to check whether an integer is odd or even using conditional operator */#includeint main(){int num;printf("Enter an integer you want to check: ");scanf("%d",&num);((num%2)==0) ? printf("%d is even.",num) : printf("%d is odd.",num);return 0;}【C语言基础算法案例(精选)】。