C语言程序汇总
C语言程序大全

C语言程序大全一、概述C语言是一种十分常用的编程语言,广泛应用于多个领域,包括操作系统、嵌入式系统、游戏开发等。
本文将为您提供一份C语言程序大全,涵盖了常见的C语言程序示例,帮助您更好地理解和运用C语言。
二、基本语法1. Hello, World! 程序示例```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```以上代码是C语言的经典入门示例,它会在控制台输出"Hello, World!"。
通过此示例,您可以了解到C语言的基本语法,如#include 指令、main函数等。
2. 变量和数据类型示例```c#include <stdio.h>int main() {int num1 = 10;float num2 = 3.14;char ch = 'A';printf("num1 = %d\n", num1);printf("num2 = %f\n", num2);printf("ch = %c\n", ch);return 0;}```以上代码展示了如何声明和初始化变量,并输出它们的值。
通过此示例,您可以学习到C语言的基本数据类型,如整型、浮点型、字符型等。
3. 条件语句示例```c#include <stdio.h>int main() {int num = 10;if (num > 0) {printf("num is positive.\n");} else if (num < 0) {printf("num is negative.\n");} else {printf("num is zero.\n");}return 0;}```以上代码展示了如何使用条件语句来进行判断。
C语言常用算法程序汇总

C语言常用算法程序汇总C语言是一门广泛应用于计算机编程的语言,具有较高的效率和灵活性。
在C语言中,常见的算法程序包括排序算法、查找算法、递归算法等等。
以下是一些常用的C语言算法程序的汇总:1.排序算法:-冒泡排序:通过多次迭代比较相邻元素并交换位置,将最大的元素逐渐移动到正确的位置。
-插入排序:将待排序的元素与已排序的部分依次比较并插入到正确的位置。
-选择排序:每次从待排序的元素中选择最小的元素并与已排序的部分交换位置。
-快速排序:通过选择一个基准元素,将数组划分为两个子数组进行递归排序。
2.查找算法:-顺序查找:逐个比较数组中的元素,直到找到目标元素或到数组末尾。
-二分查找:通过比较目标元素与数组中间元素的大小,逐步缩小范围,直到找到目标元素。
-哈希查找:通过散列函数将目标元素映射到哈希表的索引位置进行查找。
3.递归算法:-阶乘:通过递归调用自身计算一个正整数的阶乘。
-斐波那契数列:通过递归调用自身计算斐波那契数列的第n个数。
-二叉树遍历:通过递归调用自身遍历二叉树的各个节点。
4.图算法:- 最短路径算法:如Dijkstra算法和Floyd算法,用于计算图中两个节点之间的最短路径。
-拓扑排序:通过对有向无环图进行排序,使得所有的边从排在前面的节点指向排在后面的节点。
- 最小生成树:如Prim算法和Kruskal算法,用于找到图中连接所有节点的最小子树。
5.动态规划:-最长公共子序列:通过寻找两个字符串中的最长公共子序列,解决字符串匹配问题。
-背包问题:通过动态规划解决在给定容量下选取物品使得总价值最大的问题。
-最大子序列和:通过动态规划解决一个数组中选取连续子序列使得和最大的问题。
以上只是一些C语言中常用的算法程序的汇总,实际上,还有很多其他的算法,如逆波兰表达式、霍夫曼编码、最小割等等。
通过学习这些算法,可以更好地理解C语言的应用和开发。
C语言必背18个经典程序

C语言必背18个经典程序(总10页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除C语言必背18个经典程序1、/*输出9*9口诀。
共9行9列,i控制行,j控制列。
*/#include "stdio.h"main(){int i,j,result;for (i=1;i<10;i++){ for(j=1;j<10;j++){result=i*j;printf("%d*%d=%-3d",i,j,result);/*-3d表示左对齐,占3位*/ }printf("\n");/*每一行后换行*/}system("pause");}2、/*古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?兔子的规律为数列1,1,2,3,5,8,13,21....*/main(){long f1,f2;int i;f1=f2=1;for(i=1;i<=20;i++){ printf("%12ld %12ld",f1,f2);if(i%2==0) printf("\n");/*控制输出,每行四个*/f1=f1+f2; /*前两个月加起来赋值给第三个月*/f2=f1+f2; /*前两个月加起来赋值给第三个月*/}}3、/*判断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);for(i=2;i<=k;i++)if(m%i==0){leap=0;break;}if(leap) /*内循环结束后,leap依然为1,则m是素数*/{printf("%-4d",m);h++;if(h%10==0)printf("\n");}leap=1;}printf("\nThe total is %d",h);system("pause");}4、/*一个数如果恰好等于它的因子之和,这个数就称为“完数”。
C语言程序大全

四、编写程序题及参考答案【4.41】从键盘输入十个整数,用插入法对输入的数据按照从小到大的顺序进行排序,将排序后的结果输出。
【4.42】输入一个正整数,要求以相反的顺序输出该数。
例如输入12345,输出位54321。
【4.43】编写程序,读入一个整数N;若N为非负数,则计算N到2×N之间的整数和;若N为一个负数,则求2×N到N之间的整数和。
分别利用for和while写出两个程序。
【4.44】求解爱因斯坦数学题。
有一条长阶梯,若每步跨2阶,则最后剩余1阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶,若每步跨7阶,最后才正好一阶不剩。
请问,这条阶梯共有多少阶?【4.45】一个自然数被8除余1,所得的商被8除也余1,再将第二次的商被8除后余7,最后得到一个商为a。
又知这个自然数被17除余4,•所得的商被17除余15,最后得到一个商是a的2倍。
编写程序求这个自然数。
【4.46】编写程序,用二分法求一元二次方程2x3-4x2+3x-6=0在(10,10)区间的根。
【4.47】中国古代科学家祖冲之采用正多边形逼近的割圆法求出了π的值。
请编写一程序,采用割圆法求出π的值,要求精确到小数点之后的第十位。
【4.48】A、B、C、D、E五人在某天夜里合伙去捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方睡觉。
日上三竿,A第一个醒来,他将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。
B第二个醒来,也将鱼分为五份,把多余的一条鱼扔掉,拿走自己的一份。
C、D、E依次醒来,也按同样的方法拿鱼。
编写程序求出他们合伙至少捕了多少条鱼。
【4.49】一辆卡车违犯交通规则,撞人逃跑。
现场三人目击事件,但都没记住车号,只记下车号的一些特征。
甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号刚好是一个整数的平方。
请根据以上线索求出车号。
c语言必背18个经典程序

c语言必背18个经典程序
C语言是一种广泛使用的计算机编程语言,它的灵活性和可移植性使其成为许多软件开发的首选语言。
C语言的经典程序有18个,
它们是:1. Hello World程序;2. 求和程序;3. 求最大值程序;
4. 求最小值程序;
5. 求平均值程序;
6. 求阶乘程序;
7. 求阶
乘和程序;8. 求最大公约数程序;9. 求最小公倍数程序;10.
求素数程序;11. 求素数和程序;12. 求斐波那契数列程序;13. 求菲波那切数列程序;14. 求欧几里得算法程序;15. 求欧几里
得算法程序;16. 求欧几里得算法程序;17. 求欧几里得算法程序;18. 求欧几里得算法程序。
C语言的经典程序是计算机编程语言中的重要组成部分,它们可以帮助开发者更好地理解和掌握C语言的基本概念,从而更好地实
现自己的软件开发目标。
其中,Hello World程序是C语言学习的第一步,它可以帮助开发者了解C语言的基本语法,从而更好地
开发软件。
C语言常用算法程序汇总

C程序设计的常用算法算法(Algorithm):计算机解题的基本思想方法和步骤。
算法的描述:是对要解决一个问题或要完成一项任务所采取的方法和步骤的描述,包括需要什么数据(输入什么数据、输出什么结果)、采用什么结构、使用什么语句以及如何安排这些语句等。
通常使用自然语言、结构化流程图、伪代码等来描述算法。
一、简单数值类算法此类问题都要使用循环,要注意根据问题确定循环变量的初值、终值或结束条件,更要注意用来表示计数、和、阶乘的变量的初值。
1、求阶乘:n!=1*2*384…..*n; n!= n*(n-1)!=下列程序用于求n的阶乘.在累乘之前,一定要将用于存放乘积的变量的值初始化为1.long func(int n){int i;long t=1;for(i=2;i<=n;i++)t*=i;return t;}printf("\n");}main(){ int n;scanf("%d", &n);printf("n!=%ld\n", fac(n));}2、整数拆分问题:把一个整数各个位上的数字存到数组中#define N 4 /* N代表整数位数*/viod split(int n, int a[ ])/* 1478: a[ 3]=8, a[2 ]=7, a[1 ]=4…*/{int i;for(i=N-1;i!=0; i--){ a[i]=n%10;n=n/10;}}main(){int i,m=1478,b[N-1];split(m, b);for(i=0;i<4; i++)printf(“%5d”, b[i]);}3、求整数的因子之和12=1*2*3*4 long factor(int n){int i;long sum=0;for(i=1;i<=n;i++)if(n%i= =0)sum+=i;return sum;}注意:因子包括1和自身。
c语言案例100例

c语言案例100例C语言是一种广泛应用于系统软件开发和嵌入式系统编程的高级编程语言。
它以其简洁、高效和可移植性而闻名,因此被广泛用于各种应用领域。
本文将为您介绍100个C语言案例,旨在帮助您更好地理解和运用C语言。
案例一:Hello World```c#include <stdio.h>int main() {printf("Hello, World!");return 0;}```这是C语言中最简单的程序,它会输出"Hello, World!"。
案例二:求和```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数的和为:%d", sum);return 0;}```这个程序会要求用户输入两个整数,然后计算并输出它们的和。
案例三:判断奇偶数```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("%d是偶数", num);} else {printf("%d是奇数", num);}return 0;}```这个程序会要求用户输入一个整数,然后判断它是奇数还是偶数,并输出相应的结果。
......(继续介绍更多的案例)通过以上100个C语言案例,您可以系统地学习和掌握C语言的各个方面。
每个案例都涉及不同的主题,从简单的Hello World程序到复杂的数据结构和算法,涵盖了C语言中的各种常见用法和技巧。
大学选修课程C语言程序设计汇总

一,选择题,1, 设有以下定义:#define d 2int a=0;double b=1.25;char c='A';则下面语句中错误的是()。
A.a=a+1; B.b=b+1; C.c=c+1; D.d=d+1;2, C语言中的标识符只能由字母、数字、下划线三种字母组成,且第一个字符( )A.必需为字母B.必需为下划线C.必需为字母或下划线D.可以是字母、数字或下划线3, 已定义int num=sum=7, (sum=num++, sum++, ++num)表达式的结果是( )A.7B.8C.9D.104, 设有定义:int x=2;,以下表达式中,值不为6的是()。
A.x*=x+1 B.x++,2*x C.x*=(1+x) D.2*x,x+=25, 执行下面程序中的输出语句后,a的值是()。
main(){ int a=5; printf("%d\n",(a=3*5,a*4,a+5)); }A.45B.20C.15D.106, 用逻辑表达式表示“大于10而小于20的数”,正确的是( )A. 10< x < 20B. x > 10 || x < 20C. x >10 & x < 20D. !(x <= 10 || x >= 20)7, x=1,y=1,z=1, 执行表达式w=++x||++y&&++z 后,x、y、z的值分别为( )A. x=2, y=1, z=1B. x=2, y=2, z=2C. x=1, y=1, z=1D. x=2, y=2, z=18, 设int a = 10, b = 11, c = 12;表达式(a + b )<c && b==c的值是( )A. 2B. 0C. -2D. 19, 为了避免在嵌套的条件语句if...else中产生歧义,C语言规定的if...else语句的匹配原则是A. else子句与所排位置相同的if配对B. else子句与其之前最近的尚未配对if配对C. else子句与其之后最近的if配对D. else子句与同一行上的if配对10, 判断char型变量ch是否为大写字母的正确表达式是()A.’A’<=ch<=’Z’B.(ch>=’A’)&(ch<=’Z’)C.(ch>=’A’)&&(ch<=’Z’)D.(’A’<=ch)AND(’Z’<=ch)11, 为表示关系x≥y≥z,应使用的C语言表达式为()A.(x>=y)&&(y>=z)B. (x>=y)and (y>=z)C. x>=y>=zD. (x>=y)&(y>=z)12, 设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是( )A.'x'&&'y'B. x<=yC. x||y+z&&y-zD. !((x<y)&&!z||1)13, 下述程序段的输出结果是()int a=2,b=3,c=4,d=5;int m=2,n=2;a=(m=a>b)&&(n=c>d)+5;printf(“%d,%d”,m,n);A.0,2B.2,2C.0,0D.1,114, 已知int x=10,y=20,z=30;以下语句执行后,x,y,z的值是()if(x>y)z=x;x=y;y=z;printf(“%d,%d,%d”,x,y,z);A.10,20,30B.20,30,30C.20,30,10D.20,30,2015 , 下列语句段将输出字符’*’的个数为()int i = 100;while(1){i --;if ( i==0) break;printf(“*”);}A.98个B. 99个C. 100个D. 101个16, t为int类型,进入循环while(t=1){...}之前,t的值为0。
c语言代码大全

c语言代码大全C语言代码大全。
C语言作为一种通用的高级语言,被广泛应用于系统程序设计和应用程序开发。
它具有高效的系统编程能力和灵活的应用程序编程能力,因此备受程序员们的喜爱。
在本文中,我们将为您介绍一些常见的C语言代码,帮助您更好地理解和运用C语言。
首先,让我们来看一个简单的C语言程序示例:```c。
#include <stdio.h>。
int main() {。
printf("Hello, World!\n");return 0;}。
```。
在这个示例中,我们使用了`#include`指令来包含标准输入输出库文件`stdio.h`,然后定义了一个`main`函数,函数内部使用`printf`函数打印了一条简单的消息,并通过`return 0`语句返回了程序执行的结果。
接下来,让我们看一下如何使用C语言实现一个简单的计算器功能:```c。
#include <stdio.h>。
int main() {。
char operator;double firstNumber,secondNumber;printf("Enter an operator (+, -, , /): ");scanf("%c", &operator);printf("Enter two operands: ");scanf("%lf %lf",&firstNumber, &secondNumber);switch(operator) {。
case '+':printf("%.1lf + %.1lf = %.1lf",firstNumber, secondNumber, firstNumber + secondNumber);break;case '-':printf("%.1lf %.1lf = %.1lf",firstNumber, secondNumber, firstNumber secondNumber);break;case '':printf("%.1lf %.1lf = %.1lf",firstNumber, secondNumber, firstNumber secondNumber);break;case '/':printf("%.1lf / %.1lf = %.1lf",firstNumber, secondNumber, firstNumber / secondNumber);break;default:printf("Error! operator is not correct");}。
c语言18个经典程序

c语言18个经典程序1. Hello, World! - 这是经典的C语言第一个程序,用于输出"Hello, World!"。
2. 求两个整数的和 - 用户输入两个整数,程序将计算并输出它们的和。
3. 判断一个数是奇数还是偶数 - 用户输入一个整数,程序将判断并输出该数是奇数还是偶数。
4. 求一个数的平方 - 用户输入一个数,程序将计算并输出该数的平方。
5. 求两个数的最大公约数 - 用户输入两个整数,程序将计算并输出它们的最大公约数。
6. 判断一个数是否为质数 - 用户输入一个正整数,程序将判断并输出该数是否为质数。
7. 求一个数的阶乘 - 用户输入一个正整数,程序将计算并输出该数的阶乘。
8. 生成斐波那契数列 - 用户输入一个正整数n,程序将生成并输出前n个斐波那契数。
9. 判断一个数是否为完全数 - 用户输入一个正整数,程序将判断并输出该数是否为完全数。
10. 判断一个字符串是否为回文字符串 - 用户输入一个字符串,程序将判断并输出该字符串是否为回文字符串。
11. 求一个数的倒数 - 用户输入一个非零实数,程序将计算并输出该数的倒数。
12. 求两个数的最小公倍数 - 用户输入两个正整数,程序将计算并输出它们的最小公倍数。
13. 判断一个年份是否为闰年 - 用户输入一个年份,程序将判断并输出该年份是否为闰年。
14. 生成九九乘法表 - 程序将生成并输出九九乘法表。
15. 判断一个数是否为负数、零或正数 - 用户输入一个实数,程序将判断并输出该数是负数、零还是正数。
16. 判断一个数是否为偶数的平方 - 用户输入一个整数,程序将判断并输出该数是否为偶数的平方。
17. 判断一个数是否为回文数 - 用户输入一个正整数,程序将判断并输出该数是否为回文数。
18. 判断一个字符串是否为回文句子 - 用户输入一个句子,程序将判断并输出该句子是否为回文句子。
这些经典的C语言程序涵盖了基本的输入输出、数学运算、条件判断、循环、字符串处理等方面的知识点。
100个经典C语言程序

100个经典C语言程序1.绘制余弦曲线:在屏幕上用“*”显示0~360度的余弦函数cos(x)曲线分析:在余弦曲线在0~360度的区间内,一行中要显示两个点,为了同时得到余弦函数cos(x)图形在一行上的两个点,考虑利用cos(x)的左右对称性。
将屏幕的行方向定义为x,列方向定义为y,则0~180度的图形与180~360度的图形是左右对称的,若定义图形总宽度为62列,计算出x行0~180度时y点的坐标m,则同一行与之对称的180~360度的y点坐标就是62-m。
程序中利用反余弦函数acos计算坐标(x,y)的对应关系。
#include<stdio.h>#include<math.h>void main( ){ double y; int x, m;for(y=1;y>=-1;y-=0.1) //y为列方向,值从1到-1,步长为0.1{ m=acos(y)*10; //计算出y对应的弧度m,乘以10为图形放大倍数for(x=1; x<m; x++) printf(" ");printf("*"); //控制打印左侧的* 号for( ; x<62-m; x++) printf(" ");printf("*\n"); //控制打印同一行中对称的右侧*号}}2.绘制余弦曲线和直线:在屏幕上显示0~360度的cos(x)曲线与直线f(x)=45*(y-1)+31的迭加图形。
其中cos(x)图形用“*”表示,f(x)用“+”表示,两个图形相交的点上用“+”。
分析:图形迭加的关键是在分别计算出同一行中两个图形的列方向点坐标后,正确判断相互的位置关系。
可以先判断图形的交点,再分别控制打印两个不同的图形。
#include<stdio.h>#include<math.h>void main( ){ double y; int x, m, n, yy;for (yy=0; yy<=20; yy++) //对于第一个y坐标进行计算并在一行中打印图形 { y=0.1*yy; //y:屏幕行方向坐标m=acos(1-y)*10; //m: cos(x)曲线上y点对应的屏幕列坐标n=45*(y-1)+31; //n: 直线上y点对应的列坐标for(x=0;x<=62;x++) //x: 屏幕列方向坐标if(x==m&&x==n) printf("+"); //直线与cos(x)相交时打印“+”else if(x==n) printf("+"); //打印不相交时的直线图形else if (x==m|| x==62-m) printf("*"); //打印不相交时的cos(x)图形else printf(" "); //其它情况打印空格printf("\n");}}3.绘制圆:在屏幕上用“*”画一个空心的圆分析:打印圆可利用图形的左右对称性。
(完整word版)C++必背18个经典程序

c语言入门经典必背18个程序1 、 /* 输出 9*9 口诀。
共 9 行 9 列, i 控制行, j 控制列。
*/#include "stdio.h"main(){int i,j,result;for (i=1;i<10;i++){ for(j=1;j<10;j++){result=i*j;printf("%d*%d=%-3d",i,j,result);/*-3d 表示左对齐,占 3 位 */}printf("\n");/* 每一行后换行 */}}2 、 /* 古典问题:有一对兔子,从出生后第3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?兔子的规律为数列 1,1,2,3,5,8,13,21....*/main(){long f1,f2;int i;f1=f2=1;for(i=1;i<=20;i++){ printf("%12ld %12ld",f1,f2);if(i%2==0) printf("\n");/* 控制输出,每行四个 */f1=f1+f2; /* 前两个月加起来赋值给第三个月 */f2=f1+f2; /* 前两个月加起来赋值给第三个月 */}}3 、 /* 判断 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;i<=k;i++)if(m%i==0){leap=0;break;}if(leap) /* 内循环结束后, leap 依然为 1 ,则 m 是素数 */{printf("%-4d",m);h++;if(h%10==0)printf("\n");}leap=1;}printf("\nThe total is %d",h);}4 、 /* 一个数如果恰好等于它的因子之和,这个数就称为“完数”。
C程序代码大全

C程序代码大全Prepared on 21 November 2021<<endl;cout<<"------------------"<<endl;<<endl;cout<<"pi="<<pi<<" r="<<r<<" s="<<s<<endl;}#include <> 1 c<<endl;;int a[10];double xy[10];cout<<"sizeof(str)="<<sizeof(str)<<endl;cout<<"sizeof(a)="<<sizeof(a)<<endl;cout<<"sizeof(xy)="<<sizeof(xy)<<endl;<<endl;else if (score>=80)cout<<"Your grade is a B."<<endl;else if (score>=70)cout<<"Your grade is a C."<<endl;else if (score>=60)cout<<"Your grade is a D."<<endl;elsecout<<"Your grade is a E."<<endl;}#include <>main(){int n;cout<<"n=";cin>>n;if (n>=0 && n<=100 &&n%2==0)cout<<"n="<<n<<endl;elsecout<<"The "<<n<<" is out of range!"<<endl; }#include <>main(){int a,b,Max;.10for(int i=1;i<=10;i++)cout<<i<<" ";cout<<endl;.1for(int j=10;j>=1;j--)cout<<j<<" ";cout<<endl;.9for(int k=1;k<=10;k=k+2)cout<<k<<" ";cout<<endl;.Zfor(char c='A';c<='Z';c++)cout<<c;cout<<endl;.for(float x=0;x<=;x=x+cout<<x<<" ";cout<<endl;.for(float x1=0;x1<=+2;x1=x1+cout<<x1<<" ";cout<<endl;.+100int s=0;for(int n=1;n<=100;n++)s=s+n;cout<<"s="<<s<<endl;}#include<>main(){.+100int s=0,n=1;while(n<=100) {s=s+n;n++;}cout<<"s="<<s<<endl;.+100int s=0,n=0;do {n++;s+=n;}while(n<100);cout<<"s="<<s<<endl;um;cin>>st[i].name;cin>>st[i].maths;cin>>st[i].physics;cin>>st[i].chemistry;}otal=st[i].maths+st[i].physics+st[i].chemistry; um<<'\t';cout<<st[i].name<<'\t';cout<<st[i].maths<<'\t';cout<<st[i].physics<<'\t';cout<<st[i].chemistry<<'\t';cout<<st[i].total<<endl;}}#include<>main(){ame="<<(*p).name<<endl;cout<<"(*p).sex="<<(*p).sex<<endl;cout<<"(*p).age="<<(*p).age<<endl;cout<<"p->name="<<p->name<<endl;cout<<"p->sex="<<p->sex<<endl;cout<<"p->age="<<p->age<<endl;ame;cout<<"sex:";cin>>(*p).sex;cout<<"age:";cin>>(*p).age;ame="<<(*p).name<<endl;cout<<"(*p).sex="<<(*p).sex<<endl;cout<<"(*p).age="<<(*p).age<<endl;cout<<"-------------------------"<<endl;ame<<'\t';cout<<x[i].sex<<'\t';cout<<x[i].age<<endl;}cout<<"----------------"<<endl;;int int_values[] = {51, 23, 2, 44, 45,0,11};float float_values[] = {, , , , };student st_arr[]={101,"WangLin",92,102,"LiPing",85,103,"ZhaoMin",88};um<<" ";cout<<st_arr[i].name<<" ";cout<<st_arr[i].grade<<endl;}}#include<>otal<a[j].total)swap_Rec(&a[i],&a[j]); <<"\t"<<str_len("This is a test.")<<endl; }#include<>void disp(void); <<endl;}#include<><<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); um;cin>>st[i].name;cin>>st[i].grade;fprintf(fp1,"%d %s %f\n",st[i].num,st[i].name,st[i].grade);}fclose(fp1); <<endl; cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); <<endl;cout<<"Exiting program."<<endl;exit(1); */putc( 'A', stdin );if( ferror( stdin ) ){perror( "Write error" );clearerr( stdin );}/* See if read causes an error. */printf( "Will input cause an error " );c = getc( stdin );if( ferror( stdin ) ){perror( "Read error" );clearerr( stdin );}}#include<>#include<><<endl;for (i=1; i<=MAX; i++) {cin>>x;(x);}<<endl;}void push(float x) <<endl;for (i=1; i<=MAX; i++) {cin>>x;(x);}<<endl;}void push(float x) <<endl;}~stack(void) << endl; << endl;}<< endl; isp_count();delete p;();}#include<><< endl;}~ex_class() {cout << "The Object destroyed." <<endl;}void set_value(int n);void show_val(char *name);} ;<<endl;}#include<>um :";cout<<num<<endl;}};um :";cout<<<<endl;}um="<<num<<endl;}public: um=";cout<<<<endl;}how_value("(*p)obj2");al="<<val<<endl;DispFirst();}};<<endl;}virtual void aFn2(void) {cout<<"aFn2 is in Base class."<<endl;}<<endl;}};<<endl;}<<endl;<<endl;}<<endl;<<endl;}void aFn2(void) {cout<<"aFn2 is in First derived class."<<endl; }};<<endl;}void aFn2(void){cout<<"aFn2 is in Second derived class."<<endl; }};;cout<<"s1: "<<s1<<endl;cout<<"s2: "<<s2<<endl;10.2f10.5f;cout<<"String: "<<string<<endl;cout<<"p : "<<p<<endl;}#include<>#include <>;int n;1.7320534f << endl;}~stack(void) {cout << "Stack Destroyed." << endl;}void push(T);T pop(void);};<< endl;return;}stck[tos++] = i;}template <class T> T stack<T>::pop(void){if(tos==0){cout << "Stack underflow." << endl;return 0;}return stck[--tos];}irst;cout<<","<<(*theIterator).second<<" ";}cout<<endl;irst;cout<<","<<(*theIterator).second<<" ";}cout<<endl;irst;cout<<","<<(*it).second<<" ";}cout<<endl;econd << " ";elsecout << "[err] ";}cout << endl;}}#include <iostream>#include <string>#include <map>using namespace std;econd;cout<<"\t"<<(*theIterator).first<<endl; }econd;cout<<"\t"<<(*i).first<<endl;}econd;cout<<"\t"<<(*it).first<<endl;}econd;cout<<"\t"<<(*i).first<<endl;}}#include <iostream>#include <valarray>#include <>using namespace std;#define ARRAY_SIZE 3 .入栈for (i=0;i<10;i=i+2)(i);if (!()) {cout << "()=20;" << endl;()=20;}//弹出栈中所有的数据并显示cout<<"stack1: ";while (!()) {cout<<()<<" ";();}cout<<endl;}#include <iostream>#include <list>#include <numeric>using namespace std;//创建一个list容器的实例LISTINT,其存放int型数据typedef list<int> LISTINT;void main(void){//用LISTINT创建一个名为listOne的list对象 LISTINT listOne;//指定i为迭代器变量LISTINT::iterator i;LISTINT::reverse_iterator ir;//从前面向listOne容器中添加数据(2);(1);//从后面向listOne容器中添加数据(3);(4);//从前向后显示listOne中的数据for (i = (); i != (); ++i)cout << *i << " ";cout << endl;//从后向后显示listOne中的数据for (ir =();ir!=(); ++ir)cout << *ir << " ";cout << endl;//从键盘上输入数据for (i = (); i != (); ++i) {cout<<"listOne :";cin>>(*i);}//从前向后显示listOne中的数据for (i = (); i != (); ++i)cout << *i << " ";cout << endl;//bidirectional迭代器不允许加减运算// i=()+1;}#include <iostream>#include <iostream>#include <numeric>#include <vector>#include <list>#include <set>using namespace std;//利用类模板生成类实例typedef vector < int > IntArray;typedef list <int> LISTINT;typedef set<int> SET_INT;int add(int a, int b) {return a+b;}//在main()函数中测试accumulate算法void main (){//--------------------------------------------// accumulate算法对于普通数组的计算//--------------------------------------------- int x[]={1,3,5,7,9};cout<<"x[]:";for (int i=0;i<5;i++)cout<<x[i]<<" ";cout<<endl;cout<<"accumulate(x,x+5,0)=";cout<<accumulate(x,x+5,0)<<endl;int val=100;cout<<"val="<<val<<endl;cout<<"accumulate(x,x+5,val)=";cout<<accumulate(x,x+5,val)<<endl;//--------------------------------------------// accumulate算法对于vector容器的计算//--------------------------------------------- //声明intvector容器和迭代器iiIntArray intvector;IntArray::iterator ii;//向intvector容器中插入元素for (i=1; i<=5; i++) {(i);};//显示intvector容器中的元素值和累加结果cout << "intvector: "<<endl;for (ii=();ii !=();++ii)cout<<(*ii)<<" ";cout<<endl;cout<<"accumulate(),(),0)=";cout<<accumulate(),(),0)<<endl;//--------------------------------------------// accumulate算法对于list容器的计算//--------------------------------------------- //声明list容器对象和迭代器LISTINT::iterator iL;LISTINT list1;//向list1容器对象中插入元素并显示(1);(3);(5);(2);(6);//显示list1容器的元素值和累加结果cout << "list1: "<<endl;for (iL=();iL !=();++iL)cout<<(*iL)<<" ";cout<<endl;cout<<"accumulate(),(),0)=";cout<<accumulate(),(),0)<<endl;//--------------------------------------------// accumulate算法对于set容器的计算//--------------------------------------------- //声明set容器对象和迭代器SET_INT set1;SET_INT::iterator si;//向set1容器中插入元素(5);(20);(10);(15);(25);//显示set1容器的元素值和累加结果cout <<"set1: "<<endl;for (si=();si !=();++si)cout<<(*si)<<" ";cout<<endl;cout<<"accumulate(),(),0)=";cout<<accumulate(),(),0)<<endl;cout<<"accumulate(),(),100)=";cout<<accumulate(),(),100)<<endl;}#include <iostream>#include <algorithm>#include <vector>#include <list>#include <set>#define size 10using namespace std;//产生指定范围的整数随机数int getrand(int min,int max) {int m;m=(max-min);m=min+double(rand())/RAND_MAX*m ;return m;}//利用类模板生成实例typedef vector < int > IntArray;typedef list <int> LISTINT;typedef set<int> SET_INT;//在main()函数中测试accumulate算法void main (){//--------------------------------------------// count算法对于普通数组的计算//--------------------------------------------- int x[size];cout<<"x[]:";for (int i=0;i<size;i++) {x[i]=getrand(1,3);cout<<x[i]<<" ";}cout<<endl;cout<<"count(x,x+size,2)=";cout<<count(x,x+size,2)<<endl;cout<<"count(x+2,x+8,2)=";cout<<count(x+2,x+8,2)<<endl;//--------------------------------------------// count算法对于vector容器的计算//声明intvector容器和迭代器iiIntArray intvector;IntArray::iterator ii;//向intvector容器中插入元素for (i=1; i<size; i++) {(getrand(2,6));};//显示intvector容器中的元素值和统计结果cout << "intvector: ";for (ii=();ii !=();++ii)cout<<(*ii)<<" ";cout<<endl;cout<<"count(),(),4)=";cout<<count(),(),4)<<endl;//--------------------------------------------// count算法对于list容器的计算//--------------------------------------------- //声明list容器对象和迭代器LISTINT::iterator iL;LISTINT list1;//向list1容器对象中插入元素并显示for (i=1; i<size; i++) {(getrand(3,5));};//显示list1容器的元素值和统计结果cout << "list1: ";for (iL=();iL !=();++iL)cout<<(*iL)<<" ";cout<<endl;cout<<"count(),(),3)=";cout<<count(),(),3)<<endl;//--------------------------------------------// count算法对于set容器的计算//--------------------------------------------- //声明set容器对象和迭代器SET_INT set1;SET_INT::iterator si;//向set1容器中插入元素for (i=1; i<size; i++) {(getrand(1,10));};//显示set1容器的元素值和统计结果cout <<"set1: ";for (si=();si !=();++si)cout<<(*si)<<" ";cout<<endl;cout<<"count(),(),5)=";cout<<count(),(),5)<<endl;}#include <iostream>#include <algorithm>#include <string>#include <vector>//如果字符串以'S'开头,则返回trueint MatchFirstChar( const string& str){string s("S") ;return s == (0,1) ;}//测试count_if算法void main(){const int VECTOR_SIZE = 8 ;//生成成员类型为strings的vector容器类typedef vector<string > StringVector ;//定义迭代器类型typedef StringVector::iterator StringVectorIt ;//声明vector容器的对象StringVector NamesVect(VECTOR_SIZE) ;//声明迭代器StringVectorIt start, end, it ;int result = 0 ; // 存放统计数据//初始化vector容器NamesVectNamesVect[0] = "She" ;NamesVect[1] = "Sells" ;NamesVect[2] = "Sea" ;NamesVect[3] = "Shells" ;NamesVect[4] = "by" ;NamesVect[5] = "the" ;NamesVect[6] = "Sea" ;NamesVect[7] = "Shore" ;//设置容器的起始位置和终止位置start = () ;end = () ;//显示NamesVect容器的元素cout << "NamesVect: " ;for(it = start; it != end; it++)cout << *it << " " ;cout <<endl ;//统计并显示NamesVect容器的所有元素中以'S'字符开头的字符串 result = count_if(start, end, MatchFirstChar) ;cout << "Number of elements that start with letter \"S\" = " << result << endl ;//显示NamesVect容器[1,6]之间的元素cout <<"NamesVect[1]--NamesVect[6]: " ;for(it =&NamesVect[1]; it != &NamesVect[7]; it++)cout << *it << " " ;cout <<endl ;//统计并显示NamesVect容器的所有元素中以'S'字符开头的字符串cout << "Number of elements that start with letter \"S\" = " << result << endl ;}#include <iostream>#include <algorithm>#include <vector>using namespace std;//利用类模板生成实例typedef vector < int > IntArray;//显示数组void put_array(int x[],int size) {for(int i=0;i<size;i++)cout<<x[i]<<" ";cout<<endl;}//显示vector容器中的元素void put_vector(IntArray v){IntArray::iterator theIterator;for (theIterator=();theIterator!=();++theIterator){cout<<(*theIterator)<<" ";}cout<<endl;}//在main()函数中测试fill和fill_n算法void main (){//--------------------------------------------// fill和fill_n算法对普通数组的计算//---------------------------------------------int x[]={1,3,5,7,9};cout << "x[]: ";put_array(x,5);//填数处理fill(x+1,x+3,2);cout << "fill(x+1,x+3,2): "<<endl;put_array(x,5);fill_n(x,3,8);cout << "fill_n(x,3,8): "<<endl;put_array(x,5);//--------------------------------------------// fill和fill_n算法对于vector容器的计算//---------------------------------------------//声明intvector容器和迭代器iiIntArray intvector;//向intvector容器中插入元素for (int i=1; i<=10; i++) {(i);};//显示intvector容器中的元素值和统计结果cout << "intvector: "<<endl;put_vector(intvector);//填数处理fill(),()+3,2);put_vector(intvector);fill_n(&intvector[5],3,8);cout << "fill_n(&intvector[5],3,8): "<<endl;put_vector(intvector);}#include <iostream>#include <algorithm>#include <vector>#define ARRAY_SIZE 10using namespace std;//利用类模板生成实例typedef vector < int > IntArray;//显示数组void put_array(int x[],int size) {for(int i=0;i<size;i++)cout<<x[i]<<" ";cout<<endl;}//显示vector容器中的元素void put_vector(IntArray v){IntArray::iterator theIterator;for (theIterator=();theIterator!=();++theIterator){cout<<(*theIterator)<<" ";}cout<<endl;}//在main()函数中测试find()算法void main (){int i,value,*p;//--------------------------------------------// find()算法对于普通数组的处理//---------------------------------------------int x[ARRAY_SIZE]={1,3,5,7,9,2,4,6,8,10};cout << "x[]: ";put_array(x,ARRAY_SIZE);//find()算法查找,并显示查找结果for(i=0;i<=2;i++) {cout<<"value=";cin>>value;p=find(x,x+ARRAY_SIZE,value);if (p != x + ARRAY_SIZE) { //查到cout << "First element that matches " << value;cout<< " is at location " << p - x<< endl;}else { //未查到cout << "The sequence does not contain any elements"; cout<< " with value " << value << endl ;}}//声明intvector容器对象IntArray intvector;//向intvector容器中插入元素for (i=1; i<=10; i++) {(i);};//显示intvector容器中的元素值cout << "intvector: ";put_vector(intvector);//find()算法查找,并显示查找结果IntArray::iterator pos;for (i=0;i<=2;i++) {cout<<"value=";cin>>value;pos=find(),(),value);if (pos != ()) { //查到cout << "First element that matches " << value;cout<< " is at location " <<pos - ()<< endl;}else { //未查到cout << "The sequence does not contain any elements"; cout<< " with value " << value << endl ;}}}#include <iostream>#include <algorithm>#include <vector>#define ARRAY_SIZE 10using namespace std;//利用类模板生成实例typedef vector < int > IntArray;//显示数组void put_array(int x[],int size) {for(int i=0;i<size;i++)cout<<x[i]<<" ";}//显示vector容器中的元素void put_vector(IntArray v){IntArray::iterator theIterator;for (theIterator=();theIterator!=();++theIterator){cout<<(*theIterator)<<" ";}}//在main()函数中测试find()_end()算法void main (){int x[ARRAY_SIZE]={1,3,5,7,9,2,4,6,8,10};cout << "x[]: ";put_array(x,ARRAY_SIZE);cout<<endl;int y[]={5,7,9};cout << "y[]: ";put_array(y,3);cout<<endl;// find_end()算法查找,并显示查找结果int *p=find_end(x,x+ARRAY_SIZE,&y[0],&y[2]);if (p != x + ARRAY_SIZE) { //查到cout << "The first element that matches :" ;put_array(y,3);cout<< " is at location in x" << p - x<< endl;}else { //未查到cout << "The sequence does not contain any elements";cout<< " with value " ;put_array(&x[3],3);}//--------------------------------------------// find_end()算法对vector容器的处理//---------------------------------------------//声明intvector容器对象IntArray intvector;//向intvector容器中插入元素for (int i=1; i<=10; i++) {(i);};//显示intvector容器中的元素值cout << "intvector: ";put_vector(intvector);cout<<endl;IntArray temp;(5);(6);(7);cout << "temp: ";put_vector(temp);cout<<endl;// find_end()算法查找,并显示查找结果IntArray::iterator pos;pos=find_end(),(),(),());if (pos != ()) { //查到cout << "The first element that matches ";put_vector(temp);cout<< " is at location in intvector " <<pos - ()<< endl; }else { //未查到cout << "The sequence does not contain any elements";put_vector(temp);cout<< endl ;}}#include <iostream>#include <vector>#include <algorithm>using namespace std;//返回一个Fibonacci数,其由generate_n()算法调用int Fibonacci1(void){static int r;static int f1 = 0;static int f2 = 1;r = f1 + f2 ;f1 = f2 ;f2 = r ;return f1 ;}//返回一个Fibonacci数,其由generate()算法调用int Fibonacci2(void){static int r;static int f1 = 0;static int f2 = 1;r = f1 + f2 ;f1 = f2 ;f2 = r ;return f1 ;}//定义整型数的vector容器类typedef vector<int > IntVector ;//显示vector容器中的元素void put_vector(IntVector v,char *name){IntVector::iterator theIterator;cout<<name<<":"<<endl;for (theIterator=();theIterator!=();++theIterator){cout<<(*theIterator)<<" ";}cout<<endl;}//测试generate()和generate_n()算法void main(){const int VECTOR_SIZE = 15 ;//定义迭代器类typedef IntVector::iterator IntVectorIt ;//声明vector容器对象IntVector Numbers1(VECTOR_SIZE),Numbers2(VECTOR_SIZE); int i ;//初始化vector容器对象Numbers1[i] = i ;//显示vector容器对象的元素cout << "Before calling generate_n:" << endl ;put_vector(Numbers1,"Numbers1");//利用generate_n算法用Fibonacci 数填充vector容器 generate_n(), VECTOR_SIZE, Fibonacci1) ;//显示vector容器对象的元素cout << "After calling generate_n:" << endl ;put_vector(Numbers1,"Numbers1");//利用generate算法用Fibonacci 数填充vector容器generate(),(), Fibonacci2) ;//显示vector容器对象的元素cout << "After calling generate:" << endl ;put_vector(Numbers2,"Numbers2");}#include <iostream>#include <algorithm>#include <vector>using namespace std;//利用类模板生成实例typedef vector < int > IntArray;//显示数组void put_array(int x[],int size) {for(int i=0;i<size;i++)cout<<x[i]<<" ";cout<<endl;}//显示vector容器中的元素void put_vector(IntArray v){IntArray::iterator theIterator;for (theIterator=();theIterator!=();++theIterator){ cout<<(*theIterator)<<" ";}cout<<endl;}//在main()函数中测试reverse()和reverse_copy()算法void main (){//--------------------------------------------// reverse()和reverse_copy()算法对普通数组处理//---------------------------------------------int x[]={1,3,5,7,9};cout<<"x[]:";put_array(x,5);//reverse()反转x数组并显示reverse(x,x+5);put_array(x,5);int y[]={2,4,6,8,10};cout<<"y[]:";put_array(y,5);//reverse_copy()反转y数组的部分元素并拷贝到x数组第2个元素位置 reverse_copy(y+1,y+3,x+1);cout<<"x[]:";put_array(x,5);cout<<"y[]:";put_array(y,5);//--------------------------------------------// reverse()和reverse_copy()算法对vector容器的处理//---------------------------------------------//声明intvector容器和迭代器iiIntArray intvector;//向intvector容器中插入元素for (int i=1; i<=10; i++) {(i);};//显示intvector容器中的元素值cout << "intvector: "<<endl;put_vector(intvector);//reverse()对于vector容器的处理reverse(),());cout << "intvector: "<<endl;put_vector(intvector);// reverse_copy对于vector容器的处理IntArray temp(5);reverse_copy()+2,()+7,());cout << "temp: "<<endl;put_vector(temp);}#include <iostream>#include <algorithm>#include <vector>#include <>#define ARRAY_SIZE 15using namespace std;//定义整型数的vector容器类typedef vector<int > IntVector ;//显示数组void put_array(int x[],int size) {for(int i=0;i<size;i++)cout<<x[i]<<" ";cout<<endl;}//显示vector容器中的元素void put_vector(IntVector v,char *name){IntVector::iterator theIterator;for (theIterator=();theIterator!=();++theIterator){ cout<<(*theIterator)<<" ";}cout<<endl;}//产生指定范围的整数随机数int getrand(int min,int max) {int m;m=(max-min);m=min+double(rand())/RAND_MAX*m ;return m;}//在main()函数中测试sort()和partial_sort()算法void main (){int i;//--------------------------------------------// sort()和partial_sort()算法对普通数组处理//---------------------------------------------//sort()算法处理数组,并显示int x[ARRAY_SIZE];for (i=0;i<ARRAY_SIZE;i++) {x[i]=getrand(1,20);}cout<<"x[]:";put_array(x,ARRAY_SIZE);sort(x,x+ARRAY_SIZE);cout<<"sort(x,x+ARRAY_SIZE):"<<endl;put_array(x,ARRAY_SIZE);//partial_sort()算法对于数组进行处理int y[ARRAY_SIZE];for (i=0;i<ARRAY_SIZE;i++) {y[i]=getrand(1,30) ;}cout<<"y[]:";put_array(y,ARRAY_SIZE);partial_sort(y+2,y+7,y+ARRAY_SIZE);cout<<"partial_sort(y+2,y+7,y+ARRAY_SIZE):"<<endl; put_array(y,ARRAY_SIZE);//--------------------------------------------// sort()和partial_sort()算法对vector容器的处理//---------------------------------------------IntVector Numbers1,Numbers2;for(i=0;i<15;i++) {(getrand(1,30));(getrand(1,30));}put_vector(Numbers1,"Numbers1");put_vector(Numbers2,"Numbers2");//sort()算法处理并显示sort(),());cout<<"After call sort():"<<endl;put_vector(Numbers1,"Numbers1");//partial_sort()算法处理并显示partial_sort()+2,()+7,());。
初学编程100个代码大全c语言

初学编程100个代码大全c语言当初学编程时,了解一些常见的代码示例是非常有帮助的。
以下是一些常见的C语言代码示例,总共100个,供你参考:1. Hello World程序:c.#include <stdio.h>。
int main() {。
printf("Hello, World!\n");return 0;}。
2. 计算两个数的和:#include <stdio.h>。
int main() {。
int num1, num2, sum;printf("Enter two numbers: "); scanf("%d %d", &num1, &num2); sum = num1 + num2;printf("Sum = %d\n", sum);return 0;}。
3. 判断一个数是奇数还是偶数:#include <stdio.h>。
int main() {。
int num;printf("Enter a number: ");scanf("%d", &num);if (num % 2 == 0) {。
printf("%d is even.\n", num); } else {。
printf("%d is odd.\n", num); }。
return 0;}。
4. 判断一个数是正数、负数还是零:c.#include <stdio.h>。
int main() {。
int num;printf("Enter a number: ");scanf("%d", &num);if (num > 0) {。
printf("%d is positive.\n", num);} else if (num < 0) {。
(完整word版)C语言必背18个经典程序

C语言必背18个经典程序1、/*输出9*9口诀。
共9行9列,i控制行,j控制列。
*/#include "stdio.h"main(){int i,j,result;for (i=1;i<10;i++){ for(j=1;j<10;j++){result=i*j;printf("%d*%d=%-3d",i,j,result);/*-3d表示左对齐,占3位*/}printf("\n");/*每一行后换行*/}system("pause");}2、/*古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?兔子的规律为数列1,1,2,3,5,8,13,21....*/main(){long f1,f2;int i;f1=f2=1;for(i=1;i<=20;i++){ printf("%12ld %12ld",f1,f2);if(i%2==0) printf("\n");/*控制输出,每行四个*/f1=f1+f2; /*前两个月加起来赋值给第三个月*/f2=f1+f2; /*前两个月加起来赋值给第三个月*/}}3、/*判断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);for(i=2;i<=k;i++)if(m%i==0){leap=0;break;}if(leap) /*内循环结束后,leap依然为1,则m是素数*/{printf("%-4d",m);h++;if(h%10==0)printf("\n");}leap=1;}printf("\nThe total is %d",h);system("pause");}4、/*一个数如果恰好等于它的因子之和,这个数就称为“完数”。
C语言经典源程序100例

C语言经典源程序100例1. Hello, World!这是C语言中最基本的程序,用于显示"Hello, World!"。
```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```2. 计算两数之和这个程序用于计算两个整数的和,并将结果输出。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两数之和为:%d\n", sum);return 0;}```3. 判断奇偶数这个程序用于判断一个整数是奇数还是偶数。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("该数是偶数。
\n");} else {printf("该数是奇数。
\n");}}```4. 求输入数字的平均值这个程序用于求输入数字的平均值。
```c#include <stdio.h>int main() {int count, i;double num, sum = 0.0, average;printf("请输入数字的个数:");scanf("%d", &count);printf("请输入这 %d 个数字:\n", count); for (i = 0; i < count; i++) {scanf("%lf", &num);sum += num;}average = sum / count;printf("平均值为:%lf\n", average);}```5. 判断闰年这个程序用于判断一个年份是否为闰年。
C经典程序代码大全

//根据半径计算圆的周长和面积#include <iostream.h>const float PI=3.1416; //声明常量(只读变量)PI为3.1416 float fCir_L(float); //声明自定义函数fCir_L()的原型float fCir_S(float); //声明自定义函数fCir_S()的原型//以下是main()函数main(){float r,l,s; //声明3个变量cout<<"r="; //显示字符串cin>>r; //键盘输入l=fCir_L(r); //计算圆的周长,赋值给变量ls=fCir_S(r); //计算圆的面积,赋值给变量scout<<"l="<<l; //显示计算结果cout<<"\ns="<<s;}//定义计算圆的周长的函数fCir_L()float fCir_L(float x){float z=-1.0; //声明局部变量if (x>=0.0) //如果参数大于0,则计算圆的周长z=2*PI*x;return(z); //返回函数值}//定义计算圆的面积的函数fCir_S()float fCir_S(float x){float z=-1.0; //声明局部变量if (x>=0.0) //如果参数大于0,则计算圆的面积z=PI*x*x;return(z); //返回函数值}/* Program: P1-2.CPPWritten by: HapDate written: 02:11:10*/#include <iostream.h>void main(void){double s1,s2,s3;s1=1.5; /* 对变量s1赋值*/cout<<"s1="<<s1<<endl;/* 对变量s2赋值*/ s2=2.5;cout<<"s2="<<s2<<endl;s3= /* 对变量s3赋值*/ 3.5;cout<<"s3="<<s3<<endl;cout<<"s1+s2+s3="<<s1+s2+s3<<endl; //计算并显示//计算并显示cout<<"s1+s2+s3="<<s1+s2+s3<<endl;}#include <iostream.h>main(){cout<<"r="<<r<<endl;double l;l=2*3.1416*r; //计算圆的周长,赋值给变量l cout<<"l="<<l<<endl; //显示圆的周长double s=3.1416*r*r; //计算圆的面积,赋值给变量s cout<<"s="<<s<<endl; //显示圆的面积cout<<"r="; //显示提示输入的信息cin>>r; //键盘输入l=2*3.1416*r; //计算圆的周长,赋值给变量l cout<<"l="<<l<<endl; //显示圆的周长s=3.1416*r*r;cout<<"s="<<s<<endl; //显示圆的面积}#include <iostream.h> //包含iostream.h头文件void main(){//输出字符常量、变量和字符串char c1='A';cout<<'W';cout<<c1<<endl;cout<<"This is a test."<<endl;cout<<"------------------"<<endl;//输出整型常量、变量和表达式int n=100;cout<<10;cout<<n;cout<<2*n<<endl; //输出整型表达式cout<<"------------------"<<endl;//输出浮点型常量、变量和表达式double pi=3.1415926,r=10.0,s=pi*r*r;cout<<pi<<endl;cout<<r;cout<<s;cout<<2*r*pi<<endl; //输出浮点型表达式cout<<"------------------"<<endl;//一个cout可以输出多项数据cout<<'W'<<" "<<c1<<endl;cout<<"This is a test."<<endl;cout<<"pi="<<pi<<" r="<<r<<" s="<<s<<endl;}#include <iostream.h> //包含iostream.h头文件main(){//输入输出字符char c;cin>>c;cout<<"c="<<c<<endl;//输入输出整型数据int n;cin>>n;cout<<"n="<<n<<endl;//输入输出浮点型数据double x;cout<<"x="<<x<<endl;//输入提示cout<<"n=";cin>>n;cout<<"n="<<n<<endl;//多项输入cout<<"c n x"<<endl;cin>>c>>n>>x;cout<<"c="<<c<<" n="<<n<<" x="<<x<<endl; }#include <iostream.h> //包含iostream.h头文件main(){//声明整型变量int a,b;//从键盘上为整型变量赋值cout<<"a=";cin>>a;cout<<"b=";cin>>b;//整型数的算术运算cout<<a<<"+"<<b<<"="<<a+b<<endl;cout<<a<<"-"<<b<<"="<<a-b<<endl;cout<<a<<"*"<<b<<"="<<a*b<<endl;cout<<a<<"/"<<b<<"="<<a/b<<endl;cout<<a<<"%"<<b<<"="<<a%b<<endl;//测试溢出short n=32767,m; //n取short类型的最大值cout<<"n="<<n<<endl;m=n+1; //引起溢出cout<<"n+1="<<m<<endl;}#include <iostream.h> //包含iostream.h头文件main(){//声明变量,并初始化int a=010,b=10,c=0X10;//以十进制形式显示数据cout<<"DEC:";cout<<" a="<<a;cout<<" b="<<b;cout<<" c="<<c<<endl;//以八进制形式显示数据cout<<"OCT:";cout<<oct; //指定八进制输出cout<<" a="<<a;cout<<" b="<<b;cout<<" c="<<c<<endl;//以十六进制形式显示数据cout<<"HEX:";cout<<" a="<<a;cout<<" b="<<b;cout<<" c="<<c<<endl;//八、十和十六进制数混合运算并输出cout<<"a+b+c=";cout<<dec; //恢复十进制输出cout<<a+b+c<<endl;//测试八、十和十六进制输入cout<<"DEC:a="; cin>>a;cout<<"OCT:b="; cin>>b;cout<<"HEX:a="; cin>>c;cout<<"DEC:"<<dec<<endl; //指定十进制输出cout<<"a="<<a<<endl;cout<<"b="<<b<<endl;cout<<"c="<<c<<endl;}#include <iostream.h> //包含iostream.h头文件#include<iomanip.h> // iomanip.h头文件包含setprecision()的定义main(){//float型变量的声明、输入、计算和输出float fx,fy;cout<<"fx=";cin>>fx;cout<<"fy=";cin>>fy;cout<<fx<<"+"<<fy<<"="<<fx+fy<<endl;cout<<fx<<"-"<<fy<<"="<<fx-fy<<endl;cout<<fx<<"*"<<fy<<"="<<fx*fy<<endl;cout<<fx<<"/"<<fy<<"="<<fx/fy<<endl<<endl;//cout<<fx<<"%"<<fy<<"="<<fx%fy<<endl; Error!//double型变量的声明、输入、计算和输出float dx,dy;cout<<"dx=";cin>>dx;cout<<"dy=";cin>>dy;cout<<dx<<"+"<<dy<<"="<<dx+dy<<endl;cout<<dx<<"-"<<dy<<"="<<dx-dy<<endl;cout<<dx<<"*"<<dy<<"="<<dx*dy<<endl;cout<<dx<<"/"<<dy<<"="<<dx/dy<<endl<<endl;//cout<<fx<<"%"<<fy<<"="<<fx%fy<<endl; Error!//测试float和double类型数据的有效位fx=10.0;fy=6.0;float fz=fx/fy;dx=10.0;dy=6.0;double dz=dx/dy;cout<<"fz=";cout<<setprecision(20)<<fx<<"/"<<fy<<"="<<fz<<endl;cout<<"dz=";cout<<setprecision(20)<<dx<<"/"<<dy<<"="<<dz<<endl<<endl;;//float型溢出float x=3.5e14;cout<<"x="<<x<<endl;cout<<"x*x*x="<<x*x*x<<endl;}#include <iostream.h> //包含iostream.h头文件main(){//字符类型变量的声明char c1='A';char c2;//字符数据的运算及输出c2=c1+32;cout<<"c1="<<c1<<endl;cout<<"c2="<<c2<<endl;//输出字符及ASCII码cout<<c1<<" : "<<int(c1)<<endl;cout<<c2<<" : "<<int(c2)<<endl;cout<<'$'<<" : "<<int('$')<<endl;//输入字符cout<<"c1 c2"<<endl;cin>>c1>>c2;cout<<"c1="<<c1<<" c2="<<c2<<endl;}#include <iostream.h> //包含iostream.h头文件main(){char c1='\a',TAB='\t';//阵铃一声cout<<c1<<endl;//使用水平制表符cout<<1<<TAB<<2<<TAB<<3<<TAB<<4<<endl;//使用双引号cout<<"He said \"Thank you\"."<<endl;//使用回车换行cout<<"abc\n"<<"def"<<'\n';}#include <iostream.h> //包含iostream.h头文件main(){//声明bool变量,并初始化bool flag1=false,flag2=true;//输出布尔常量和变量cout<<"false:"<<false<<endl;cout<<"true: "<<true<<endl;cout<<"flag1="<<flag1<<endl;cout<<"flag2="<<flag2<<endl;//布尔变量的赋值和输出int x=1;flag1=x>0; //存放关系运算结果cout<<"flag1="<<flag1<<endl;flag2=flag1; //bool类型变量相互赋值//布尔变量超界处理flag1=100;cout<<"flag1="<<flag1<<endl;flag2=-100;cout<<"flag2="<<flag2<<endl;}#include <iostream.h>const double PI=3.1416; //声明常量(const变量)PI为3.1416 main(){//声明3个变量double r,l,s;//输入圆的半径cout<<"r=";cin>>r;//计算圆的周长l=2*PI*r;cout<<"l="<<l<<endl;//计算圆的面积s=PI*r*r;cout<<"s="<<s<<endl;}#include<iostream.h>main(){//定义枚举类型,并指定其枚举元素的值enum color {RED=3,YELLOW=6,BLUE=9};//声明枚举变量a和b,并为枚举变量a赋初值enum color a=RED;color b; //合法,与C语言不同// 输出枚举常量cout<<"RED="<<RED<<endl;cout<<"YELLOW="<<YELLOW<<endl;cout<<"BLUE="<<BLUE<<endl;//枚举变量的赋值和输出b=a;a=BLUE;cout<<"a="<<a<<endl;cout<<"b="<<b<<endl;//a=100; 错误!//a=6 也错误!//枚举变量的关系运算b=BLUE; // 枚举变量的赋值运算cout<<"a<b="<<(a<b)<<endl;}#include <iostream.h>main(){//声明3个变量double r=3,l,s;//计算圆的周长l=2*PI*r;cout<<"l="<<l<<endl;//计算圆的面积s=PI*r*r;cout<<"s="<<s<<endl;//验证赋值误差int il,is;il=l;is=s;cout<<"il="<<il<<endl;cout<<"is="<<is<<endl;}#include <iostream.h>main(){//变量声明char c;double x,y;//测试自增cout<<"++E and E++ :"<<endl;c='B';cout<<"c="<<++c<<endl; //输出c=Cc='B';cout<<"c="<<c++<<endl; //输出c=Bx=1.5;y=5+ ++x; //加号后的空格不能少cout<<"y="<<y<<endl; //输出y=7.5x=1.5;y=5+x++;cout<<"y="<<y<<endl; //输出y=6.5cout<<"--------------------"<<endl;//测试自减cout<<"--E and E-- :"<<endl;c='B';cout<<"c="<<--c<<endl; //输出c=Ac='B';cout<<"c="<<c--<<endl; //输出c=Bx=1.5;y=5+--x;cout<<"y="<<y<<endl; //输出y=5.5x=1.5;y=5+x--;cout<<"y="<<y<<endl; //输出y=6.5}#include <iostream.h>main(){int a=3, b=2;cout<<a<b<<endl;cout<<(a<b)<<(a>b)<<(a>=b)<<(a==b)<<(a!=b)<<endl;bool flag=2*a<b+10;cout<<"flag="<<flag;}#include <iostream.h>main(){float a=3.5,b=2.1,c=0;cout<<"a="<<a<<" b="<<b<<" c="<<c<<endl;//与运算cout<<"a&&b="<<(a&&b)<<endl;//输出1cout<<"a&&c="<<(a&&c)<<endl;//输出0//或运算cout<<"a||b="<<(a||b)<<endl;//输出1cout<<"a||c="<<(a||c)<<endl;//输出1//非运算cout<<"!a="<<!a<<endl<<"!c="<<!c<<endl;//输出0 1//关系运算和逻辑运算bool flag=a>=0 && a<=5; //变量a在[0,5]区间内cout<<"a=>0 && a<=5="<<flag<<endl;//输出1//算术运算、关系运算和逻辑运算cout<<"a+5>2*b+2||a<b+3="<<(a+5>2*b+2||a<b+3)<<endl;//输出1 }#include <iostream.h>main(){//按位与运算cout<<"24&12="<<(24&12)<<endl;//按位异或运算cout<<"24^12="<<(24^12)<<endl;//按位或运算cout<<"24|12="<<(24|12)<<endl;//按位取反运算cout<<"~24="<<(~24)<<endl;//左移位运算cout<<"5<<3="<<(5<<3)<<endl;cout<<"-5<<3="<<(-5<<3)<<endl;//右移位运算cout<<"5>>3="<<(5>>3)<<endl;cout<<"-5>>3="<<(-5>>3)<<endl;}#include <iostream.h>main(){int a=1,b=1,c=3;//显示a,b,c的值cout<<"a="<<a<<" b="<<b<<" c="<<c<<endl;//计算显示(1) b+=a+2*c%5; 的结果b+=a+2*c%5; //相当于表达式语句b=b+(a+2*c%5);//计算显示(2) a<<=c-2*b; 的结果a=1,b=1,c=3;a<<=c-2*b; // 相当于表达式语句a=a<<(c-2*b);cout<<"(2) a="<<a<<endl;//计算显示(3) a*=b=c=3;的结果a=1,b=1,c=3;a*=b=c=3; //相当于语句组c=3;b=c;a=a*b;cout<<"(3) a="<<a<<" b="<<b<<" c="<<c<<endl;//计算显示(4) a+=b+=c;的结果a=1,b=1,c=3;a+=b+=c; //相当于语句组b=b+c; a=a+b;cout<<"(4) a="<<a<<" b="<<b<<" c="<<c<<endl;//计算显示(5) a-=b=++c+2;的结果a=1,b=1,c=3;a-=b=++c+2; //相当于语句组++c;b=b+c+2;a=a-b;cout<<"(5) a="<<a<<" b="<<b<<" c="<<c<<endl;}#include <iostream.h>main(){//用sizeof 计算各类种常量的字节长度cout<<"sizeof('$')="<<sizeof('$')<<endl;cout<<"sizeof(1)="<<sizeof(1)<<endl;cout<<"sizeof(1.5)="<<sizeof(1.5)<<endl;cout<<"sizeof(\"Good!\")="<<sizeof("Good!")<<endl;//用sizeof 计算各类型变量的字节长度int i=100;char c='A';float x=3.1416;double p=0.1;cout<<"sizeof(i)="<<sizeof(i)<<endl;cout<<"sizeof(c)="<<sizeof(c)<<endl;cout<<"sizeof(x)="<<sizeof(x)<<endl;cout<<"sizeof(p)="<<sizeof(p)<<endl;//用sizeof 计算表达式的字节长度cout<<"sizeof(x+1.732)="<<sizeof(x+1.732)<<endl;//用sizeof 计算各类型的字节长度cout<<"sizeof(char)="<<sizeof(char)<<endl;cout<<"sizeof(int)="<<sizeof(int)<<endl;cout<<"sizeof(float)="<<sizeof(float)<<endl;cout<<"sizeof(double)="<<sizeof(double)<<endl;//用sizeof 计算数组的字节长度char str[]="This is a test.";int a[10];double xy[10];cout<<"sizeof(str)="<<sizeof(str)<<endl;cout<<"sizeof(a)="<<sizeof(a)<<endl;cout<<"sizeof(xy)="<<sizeof(xy)<<endl;//用sizeof 计算自定义类型的长度struct st {float math_grade;float Chinese_grade;float sum_grade;};st student1;cout<<"sizeof(st)="<<sizeof(st)<<endl;cout<<"sizeof(student1)="<<sizeof(student1)<<endl;}#include <iostream.h>main(){//声明变量语句中使用顺序运算int x, y;//计算中使用顺序运算x=50;y=(x=x-5, x/5);cout<<"x="<<x<<endl;cout<<"y="<<y<<endl;}#include <iostream.h>main(){//测试表达式类型的转换int n=100,m;double x=3.791,y;cout<<"n*x="<<n*x<<endl;//赋值类型转换m=x;y=n;cout<<"m="<<m<<endl;cout<<"y="<<y<<endl;//强制类型转换cout<<"int(x)="<<int(x)<<endl;cout<<"(int)x="<<(int)x<<endl;cout<<"int(1.732+x)="<<int(1.732+x)<<endl;cout<<"(int)1.732+x="<<(int)1.723+x<<endl;cout<<"double(100)="<<double(100)<<endl;}#include <iostream.h>main(){float a,b,s;cout<<"a b"<<endl;cin>>a>>b; //利用cin从键盘上为变量a,b 赋值s=a;if (a<b) {s=b; //if语句中只有这一个语句,可省略花括号}s=s*s; //变量s中保存a,b中较大的一个数的平方cout<<"s="<<s;}#include <iostream.h>main(){cout<<"x=";cin>>x;if (x<=0) { //满足条件执行y=2*x;cout<<"y="<<y; //输出结果}else { //不满足条件执行y=x*x;cout<<"y="<<y; //输出结果}}#include <iostream.h>main(){int a,b,c;int smallest;cout<<"a b c"<<endl;cin>>a>>b>>c;if (a<=b) //外层条件语句{if (a<=c) //内层条件语句smallest=a;elsesmallest=c;}else{if (b<=c) //内层条件语句smallest=b;elsesmallest=c;}cout<<"Smallest="<<smallest<<endl;}#include <iostream.h>main(){int score;//从键盘上输入分数cout<<"score=";cin>>score;//用带else if的条件语句判断处理if (score<0 || score>100){cout<<"The score is out of range!"<<endl;}else if (score>=90)cout<<"Your grade is a A."<<endl;else if (score>=80)cout<<"Your grade is a B."<<endl;else if (score>=70)cout<<"Your grade is a C."<<endl;else if (score>=60)cout<<"Your grade is a D."<<endl;elsecout<<"Your grade is a E."<<endl;#include <iostream.h>main(){int n;cout<<"n=";cin>>n;if (n>=0 && n<=100 &&n%2==0)cout<<"n="<<n<<endl;elsecout<<"The "<<n<<" is out of range!"<<endl;}#include <iostream.h>main(){int a,b,Max;//输入数据cout<<"a=";cin>>a;cout<<"b=";cin>>b;//找出较大值Max=a>b?a:b;cout<<"Max="<<Max<<endl;}#include <iostream.h>main(){int a,b;//输入数据cout<<"a=";cin>>a;cout<<"b=";cin>>b;//除法判断if (b!=0 && a%b==0) {cout<<b<<" divides "<<a<<endl;cout<<"a/b="<<a/b<<endl;}elsecout<<b<<" does not divide "<<a<<endl;}#include <iostream.h>main(){//x,y 为操作数,c为运算符int x,y,z;char c1;cin>>x>>c1>>y; //c1//多路选择语句选择不同表达式计算语句switch(c1) {case '+':cout<<x<<"+"<<y<<"="<<x+y<<endl;break;break;case '*':cout<<x<<"*"<<y<<"="<<x*y<<endl;break;case '/':cout<<x<<"/"<<y<<"="<<x/y<<endl;break;case '%':cout<<x<<"%"<<y<<"="<<x%y<<endl;break;default :cout<<"Wrong !"<<endl; //当不符合上述情况时执行本子句}}#include<iostream.h>float x=365.5; //声明全局变量main() {int x=1,y=2;double w=x+y;{double x=1.414,y=1.732,z=3.14;cout<<"inner:x="<<x<<endl;cout<<"inner:y="<<y<<endl;cout<<"inner:z="<<z<<endl;cout<<"outer:w="<<w<<endl;cout<<"::x="<<::x<<endl; //访问重名的全局变量}cout<<"outer:x="<<x<<endl;cout<<"outer:y="<<y<<endl;cout<<"outer:w="<<w<<endl;//cout<<"inner:z="<<z<<endl;无效cout<<"::x="<<::x<<endl; //访问重名的全局变量}#include<iostream.h>main() {//显示1,2,3 (10)for(int i=1;i<=10;i++)cout<<i<<" ";cout<<endl;//显示10,9,8 (1)for(int j=10;j>=1;j--)cout<<j<<" ";cout<<endl;//显示1,3,5 (9)for(int k=1;k<=10;k=k+2)cout<<k<<" ";cout<<endl;//显示ABC...Zfor(char c='A';c<='Z';c++)cout<<c;cout<<endl;//显示0,0.1,0.2...1.0for(float x=0;x<=1.0;x=x+0.1)cout<<x<<" ";cout<<endl;//显示0,0.1,0.2...1.0for(float x1=0;x1<=1.0+0.1/2;x1=x1+0.1) cout<<x1<<" ";cout<<endl;//计算s=1+2+3...+100int s=0;for(int n=1;n<=100;n++)s=s+n;cout<<"s="<<s<<endl;}#include<iostream.h>main(){//计算s=1+2+3...+100int s=0,n=1;while(n<=100) {s=s+n;n++;}cout<<"s="<<s<<endl;//累加键盘输入的数据double x,sum=0.0;cout<<"x=";cin>>x;while(x!=0) {sum+=x;cout<<"x=";cin>>x;}cout<<"sum="<<sum<<endl;}#include<iostream.h>main(){//计算s=1+2+3...+100int s=0,n=0;do {n++;s+=n;}while(n<100);cout<<"s="<<s<<endl;//累加键盘输入的数据double x,sum=0.0;do {cout<<"x=";cin>>x;sum+=x;} while(x!=0);cout<<"sum="<<sum<<endl;}#include<iostream.h>main(){//计算和打印打印乘法九九表for (int i=1;i<=9;i++) {for (int j=1;j<=9;j++)cout<<'\t'<<i<<"*"<<j<<"="<<i*j;cout<<endl;}}#include<iostream.h>main(){int x,sum=0;//定义标号L1L1: cout<<"x=";cin>>x;if (x==-1)goto L2; //无条件转移语句,转到L2语句处elsesum+=x;goto L1; //无条件转移语句,转到L1语句处//定义标号L2L2: cout<<"sum="<<sum<<endl;}#include<iostream.h>main(){//累加键盘输入的数据double x,sum=0.0;while(1) {cout<<"x=";cin>>x;if (x<=0) break;sum+=x;}cout<<"sum="<<sum<<endl;}#include<iostream.h>main(){int i;for (i=1;i<=20;i++){if (i%3==0) //能被3 整除的整数,返回进行下次循环continue;cout<<i<<" ";}cout<<endl;}#include<iostream.h>main(){//声明数组和变量int a[5],i,sum;double avg;//从键盘上循环为数组赋值for (i=0;i<5;i++) {cout<<"a["<<i<<"]=";}//直接显示数组元素cout<<a[0]<<a[1]<<a[2]<<a[3]<<a[4]<<endl;//利用for循环显示数组各元素的值for (i=0;i<5;i++)cout<<a[i]<<" ";cout<<endl;//计算数组元素之和,并显示计算结果sum=a[0]+a[1]+a[2]+a[3]+a[4];cout<<"sum="<<sum<<endl;//利用循环计算数组的累加和for (sum=0,i=0;i<5;i++)sum+=a[i];//显示累加和及平均值cout<<"sum="<<sum<<endl;avg=sum/5.0;cout<<"avg="<<avg<<endl;}#include<iostream.h>main(){int i,max,index,a[5];//从键盘上为数组赋值for (i=0;i<=4;i++){cout<<"a["<<i<<"]=";cin>>a[i];}// 利用循环遍历数组,找出最大值的元素及其下标max=a[0];for (i=0;i<=4;i++){if (max<a[i]){max=a[i];index=i;}}cout<<"\nMax="<<max<<" index="<<index;}#include<iostream.h>#define size 5main(){//声明变量int i,j;float t,a[size];//从键盘上为数组赋值for (i=0;i<size;i++){cout<<"a["<<i<<"]=";for (i=0;i<size-1;i++)for (j=i+1;j<size;j++)if (a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}//显示排序结果for (i=0;i<size;i++)cout<<a[i]<<" ";cout<<endl;//输入要查找的数据int value;int found; //找到为1,否则为0int low,high,mid;for (i=1;i<=3;i++) {cout<<"value=";cin>>value;//二分法查找数组afound=0;low=0;high=size-1;while(low<=high){mid=(high+low)/2;if (a[mid]==value){found=1;break;}if (a[mid]<value)low=mid+1;elsehigh=mid-1;}if (found)cout<<"The valu found at:a["<<mid<<"]="<<a[mid]<<endl;elsecout<<"The "<<value<<" is not found!"<<endl;}}#include<iostream.h>main(){//声明变量int i,j;float t,a[5];//从键盘上为数组赋值for (i=0;i<=4;i++){cout<<"a["<<i<<"]=";for (i=0;i<=3;i++)for (j=i+1;j<=4;j++)if (a[i]<=a[j]){t=a[i];a[i]=a[j];a[j]=t;}//显示排序结果for (i=0;i<=4;i++)cout<<a[i]<<" ";}#include<iostream.h>main(){//声明二维数组及变量int a[2][3],i,j;//从键盘上为数组a赋值for (i=0;i<2;i++)for (j=0;j<3;j++){cout<<"a["<<i<<"]["<<j<<"]=";cin>>a[i][j];}//显示数组afor (i=0;i<2;i++) {for (j=0;j<3;j++){cout<<a[i][j]<<" ";}cout<<endl;}//找出该数组的最大元素及其下标int h,l,Max=a[0][0];for (i=0;i<2;i++) {for (j=0;j<3;j++){if (Max<a[i][j]) {Max=a[i][j];h=i;l=j;}}}cout<<"Max:"<<"a["<<h<<"]["<<l<<"]="<<a[h][l]<<endl; }#include<iostream.h>main(){//声明字符数组和变量char str[6];int i;//从键盘上输入字符串cout<<"str=";cin>>str;cout<<str<<endl;//按数组和下标变量两种方式显示字符数组cout<<str<<endl;for (i=0;i<6;i++)cout<<str[i];cout<<endl;//字符串反向输出for (i=5;i>=0;i--)cout<<str[i];cout<<endl;//将字符数组变成大写字母后输出for (i=0;i<=5;i++)str[i]-=32; //小写字母转换成大写字母cout<<str<<endl; //显示字符串}#include<iostream.h>main(){//声明变量和指针变量int a,b,c,*ip;//指针变量ip指向变量aa=100;ip=&a; //使指针变量ip 指向变量acout<<"a="<<a<<endl;cout<<"*ip="<<*ip<<endl;cout<<"ip="<<ip<<endl;//指针变量ip指向变量bip=&b; //使指针变量ip 指向变量bb=200;cout<<"b="<<b<<endl;cout<<"*ip="<<*ip<<endl;cout<<"ip="<<ip<<endl;//指针变量ip指向变量cip=&c; //使指针变量ip 指向变量b*ip=a+b;cout<<"c="<<c<<endl;cout<<"*ip="<<*ip<<endl;cout<<"ip="<<ip<<endl;}#include<iostream.h>main(){//声明数组、变量和指针变量int a[2][3],i,j;int* ip;//从键盘上为数组a赋值for (i=0;i<2;i++) //为数组a赋值for (j=0;j<3;j++){。
3.C语言代码汇总

1-1.输出指定字符串,SayHello#include <stdio.h>void main(){printf("---------------------------\n");printf(" This my first C program.\n");printf(" Hello ,C program.\n");printf("---------------------------\n");void reaction();reaction();}void reaction(){printf("******************************\n"); printf(" Hello ,you will be a good code-man.\n"); printf("******************************\n"); }1-2.输入两个整数,输出它们的和,Sum#include<stdio.h>void main(){int a,b,s;int sum(int x,int y);printf("输入两个相加的整数:");scanf("%d%d",&a,&b);s=sum(a,b);printf("%d+%d=%d\n",a,b,s);}int sum(int x,int y){int r=x+y;return r;}1-3.输入3个整数,输出其最大的数max #include <stdio.h>void main(){int a,b,c,m;int max(int x,int y,int z);printf("输入求最大数的3个整数:"); scanf("%d%d%d",&a,&b,&c);printf("最大数max=%d\n",m);}int max(int x,int y,int z){int temp = x;if(temp<y) temp = y;if(temp<z) temp = z;return temp;}1-4.输入4个数,并由小到大的顺序输出sort #include <stdio.h>void main(){int a,b,c,d,temp;printf("请输入需要排序的4个整数:"); scanf("%d%d%d%d",&a,&b,&c,&d);if(a>b){temp = a;a = b;b = temp;}if(a>c){temp = a;a = c;c = temp;}if(a>d){temp = a;a = d;d = temp;}if(b>c){temp = b;b = c;c = temp;}if(b>d){temp = b;b = d;d = temp;}if(c>d){temp = c;c = d;d = temp;}printf("有小到大排序为:%d %d %d %d\n",a,b,c,d);}1-5.判断是否为闰年leapyear#include <stdio.h>void main (){int year,i=1;while(i)//用来循环使用函数!{printf("-------------------------------\n");printf("请输入需要判定的年份:");scanf("%d",&year);if((year%4==0&&year%100!=0)||(year%100==0printf("%d is a leapyear.\n",year);elseprintf("%d is not a leapyear.\n",year); printf("-------------------------------\n");}}1-6.输入一个华氏温度,要求输出摄氏温度,公式为C=5/9(F-32),取2位小数temper #include<stdio.h>void main(){float c,f;printf("请输入一个华氏温度:");scanf("%f",&f);c=(5.0/9.0)*(f-32);//注意5和9的值要用实数表示,否则5/9的值为0printf("摄氏温度为:%5.2f\n",c);}1-7.输入score,输出grade,Grade#include <stdio.h>void main(){float score;char grade;printf("请输入学生成绩:");scanf("%f",&score);while(score>100||score<0){printf("Error Data, please input new score:");scanf("%f",&score);}switch((int)(score/10)){case 10:case 9: grade = 'A';break;case 8: grade = 'B';break;case 7: grade = 'C';break;case 6: grade = 'D';break;default:grade = 'E';break;}printf("成绩是:%5.1f,相应的等级是:%c\n",score,grade); 1-8.用while、do..while、for循环语句写出n 的累加算法1+2+3…+n sum#include<stdio.h>void main(){void method_1(int x);void method_2(int y);void method_3(int z);int n,t=1;while(t){ printf("输入需要累加的值n:");scanf("%d",&n);printf("----------------------------------\n"); method_1(n);printf("----------------------------------\n"); method_2(n);printf("----------------------------------\n"); method_3(n);printf("----------------------------------\n");}}void method_1(int x){int s=0,i=1;while(i<=x){s=s + i;i++;}printf("#while循环累加%d = %d\n",x,s);}void method_2(int y){int i=1,s=0;do{s= s + i; i++; }while(i<=y);printf("#do...while循环累加%d = %d\n",y,s); }void method_3(int z){int s=0,i;for(i=1;i<=z;i++)s=s+i;printf("#for循环累加%d = %d\n",z,s);1-9.把100~200之间的不能被3整除的数输出扩:可以改写为输出同时被3和5整除的数continue语句使用#include<stdio.h>void main(){int n;for(n=100;n<=200;n++){if(n%3==0)continue;printf("%d ",n);}printf("\n");}扩:#include<stdio.h>void main(){int n;for(n=100;n<=200;n++){if(n%3!=0||n%5!=0)continue;printf("%d ",n);}printf("\n");}1-10.判断m是否素数prime number#include<stdio.h>#include<math.h>void main(){int m,i,k;printf("请输入需要判断是否为素数的数:"); scanf("%d",&m);k = sqrt(m);for(i=2;i<=k;i++)if(m%i == 0) break;if(i>k)printf("%d is a prime number\n",m); elseprintf("%d is not a prime number\n",m); } 1-11.求100~200间的全部素数prime#include<stdio.h>#include<math.h>void main(){int m,k,i,n=0;for(m=101;m<=200;m=m+2){ k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>=k+1){printf("%5d",m);n=n+1;}if(n%10==0)printf("\n");}printf("\n");}1-12.辗转相除法,输入两个正整数m和n,求其最大公约数和最小公倍数#include<stdio.h>void main(){int p,r,n,m,temp;printf("请输入两个正整数:");scanf("%d %d",&n,&m);if(n<m){temp=n;n=m;m=temp;}p=n*m;while(m!=0){r=n%m;n=m;m=r;}printf("它们的最大公约数为:%d\n",n); printf("它们的最小公倍数为:%d\n",p/n);1-13.打印1~1000中能被3整除的数,5个数字换一行输出printf#include<stdio.h>void main(){int i,j=0;for(i=1;i<=1000;i++){if(i%3==0){printf("%5d",i);j++;}if(j%5==0)printf("\n");}}1-14.输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数#include<stdio.h>void main(){char c;int letters=0,space=0,digit=0,other=0;printf("请输入一行字符:\n");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++;elseother++;}printf("字母个数:%d\n空格个数:%d\n数字个数:%d\n其它字符个数:%d\n",letters,space,digit,other);}1-15.输出所有的水仙花数,水仙花数:一个3位数;各位数字立方和等于该数本身,如:153=1*1*1+5*5*5+3*3*3 narcissus num void main(){int i,j,k,n;printf("narcissus number are");for(n=100;n<1000;n++){i=n/100;j=n/10-i*10;k=n%10;if(n==i*i*i+j*j*j+k*k*k)printf("%5d",n);}printf("\n");}1-16.一个数如果恰好等于它的因子之和,则该数为“完数”,如6=1+2+3;要求输出1000以内的所有完数,并附带其因子一起输出#include<stdio.h>void main(){int m,s,i;for(m=2;m<1000;m++){s=0;for(i=1;i<m;i++)if((m%i)==0) s=s+i;if(s==m){printf("%d ,its factors are: ",m);for(i=1;i<m;i++)if(m%i==0) printf("%d ",i);printf("\n");}}}1-17.求S n=a+aa+aaa+…+aa…a之值,其中a 是一个数字。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if(li<=100000)
ji=li*0.1; /****如果所得工资少于10万元,则奖金为工资的10%****/
else if(li>1000000)
ji=100000*0.1+100000*0.075+200000*0.05+400000*0.03+(li-600000)*0.015+(li-1000000)*0.001;
printf("%f",ji);
getch();
}
8.这个是统计投票的系统,可在源代码中自定义竞选的人。
printf("%d,%d,%d,%d",x4,x3,x2,x1);
}
else if(x3!=0)
{
printf("It is a three numbers' number!\n");
printf("%d,%d,%d",x3,x2,x1);
}
else if(x2!=0)
{
printf("It is a two numbers' number!\n");
作者导语:
欢迎各位阅读本文。本文阅读难度设置为:中-->低-->高。阅读过程如有疑问欢迎咨询。
QQ:835588741
1.下面这个是最近写的一个可以把十进制转换成1-16进制的一个进制转换器代码。
#define N 100
void main(void)
{
ji=100000*0.1+100000*0.075+200000*0.05+(li-400000)*0.03;
else if(600000<li<=1000000)
ji=100000*0.1+100000*0.075+200000*0.05+400000*0.03+(li-600000)*0.015;
#include"stdio.h"
void main()
{
int qita=0,english=0,space=0,number=0,i,j;
for(;(i=getchar())!='\n';i++) /*for循环语句*/
{
if(('a'<=i&&i<='z')||('A'<=i&&i<='Z')) /*判断是否大小写的字母*/
scanf("%f%c%f",&num1,&ch,&num2);
switch(ch) /****利用switch语句简洁明了地把加减乘除四个运算包含其中****/
{
case '+':printf("%0.2f%c%0.2f=%0.2f",num1,ch,num2,num1+num2);break;
scanf("%d",&k);
for(j=0;j<N;j++)
{
a[j]=num%k; /*取余数赋值给数组a的成员*/
num=num/k; /*对数值num求商数,使其在下次循环时有一个新的值*/
if(num<k) /*当所要num的值小于要转换的进制数时跳出循环*/
if(i%2==0)
i++;
i=1;
for(;i<=n*n*n;i+=2)
{
sum=0;
count=0;
for(j=i;j<=n*n*n;j+=2)
{
sum=sum+j;
count++;
if((n*n*n==sum)&&(count==n))
break;
scanf("%f%c%f",&a,&ch,&b);
if(ch=='+') /*****输入的字符若为‘+’则执行加法运算函数****/
jieguo=sum(a,b);
else if(ch=='-')
jieguo=cha(a,b);
else if(ch=='*')
jieguo=ji(a,b);
else if(ch=='/')
jieguo=shang(a,b);
printf("result=%f",jieguo);
getch();
}
7.这个是奖金计算系统,输入利润,然后给出该利润所获得的奖金:
void main()
{long int li;
float ji;
printf("please input the number of bonus:\n");
#include<string.h>
struct person
{
char name[20];
int count;
}leader[3]={{"zhou",0},{"wu",0},{"zheng",0}}; /**这个结构体定义了参加选举的人员的信息,名字和票数总计***/
{
float y;
y=x3*x4;
return y;
}
float shang(float x5,float x6) /*除的算法函数*/
{
float x;
x=x5/x6;
return x;
}
float cha(float x7,float x8) /*差的算法函数*/
else if(a[i]==15)
{printf("%c",70);}
else
printf("%d",a[i]); /*若没有大于9的数字,则按整形数据输出*/
}
g五位以内的数是几位数,并且给出每一位的数字分别是多少。
void main()
#include<math.h>
void main()
{
int i,j,n,sum,count;
clrscr();
printf("\n an integer here please:");
scanf("%d",&n);
printf("\n");
i=(int)floor(sqrt((float)n));
case '-':printf("%0.2f%c%0.2f=%0.2f",num1,ch,num2,num1-num2);break;
case '*':printf("%0.2f%c%0.2f=%0.2f",num1,ch,num2,num1*num2);break;
case '/':printf("%0.2f%c%0.2f=%0.2f",num1,ch,num2,num1/num2);break;
case '%':printf("%0.2f%c%0.2f=%0.2f",num1,ch,num2,num1%num2);break; /**新增加的求余数的运算**/
default:printf("error!!!please input ones again!");
}
int c=0,i,j,k,a[N];
long num;
char A,B,C,D,E,F;
printf("please input the number of you want to conversion\n"); /*输入要转换的十进制数*/
scanf("%ld",&num);
printf("\nplease input the number of scale\n"); /*输入要转换成几进制的数1-16*/
}
printf("english=%d,space=%d,number=%d,qita=%d",english,space,number,qita);
getch();
}
4.输入一自然数n,求组成n3的n个连续奇数。
#include<conio.h>
#include<stdio.h>
x1=num%10;
if(x5!=0)
{
printf("It is a fine numbers' number!\n");
printf("%d,%d,%d,%d,%d",x5,x4,x3,x2,x1); /*输出是几位数,并每一位的数字*/
}
else if(x4!=0)
{
printf("It is a four numbers' number!\n");
{
long int num;
int x1,x2,x3,x4,x5;