
c语言笔记
@大愚@
追光的人
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
输入一批学生的成绩(整数),输出最高分。 输入 输入包含多个非负整数和一个负整数。该负数不作为有效成绩,只表示输入结束。 输出 输出一个整数,即最高分。单独占一行。
/输入一批学生的成绩(整数),输出最高分。输入输入包含多个非负整数和一个负整数。该负数不作为有效成绩,只表示输入结束。输出输出一个整数,即最高分。单独占一行。样例输入 Copy7 6 5 9 2 -1样例输出 Copy9/#include<stdio.h>int main(){int i;int count = 0;//判断成绩有几人int num[50];...原创 2019-06-23 17:57:30 · 5819 阅读 · 3 评论 -
输入n和n个学生成绩(实数),输出不及格率
//输入n和n个学生成绩(实数),输出不及格率#include<stdio.h>int main(){int i;//循环变量int n;//循环的次数double num;//学生的成绩int people = 0;//不及格学生的人数for(i = 0; i< n;i ++){scanf("%lf",num);if(num < 60){peop...原创 2019-06-17 13:05:17 · 9076 阅读 · 3 评论 -
输入一个整数n和n个整数,输出这n个整数的最大值。
#include<stdio.h>int main(){int i;//循环变量int n;//循环的次数int num;//输入的值int max;//最大的数scanf("%d%d",&n,&num);max = num;for(i = 0;i < n;i ++){scanf("%d",&num);if(max < num...原创 2019-06-17 08:49:47 · 30193 阅读 · 9 评论 -
*从键盘输入三个整数x,y和z,按从大到小的顺序输出它们的值。
#include<stdio.h>#include<math.h>int main(){/从键盘输入三个整数x,y和z,按从大到小的顺序输出它们的值。/int i;int x,y,z;scanf("%d%d%d",&x,&y,&z);if(x > y && y > z){printf("%d\t%d\t...原创 2019-06-12 22:22:26 · 15287 阅读 · 4 评论 -
C语言:打印杨辉三角
规律:一行,第一个数和最后一个数都为1,第几行就有几个数,下一行 = 上一行的值 + 上一行左边的值#include <stdio.h>int main(){ int a[50][50]; int i,j; int n; scanf("%d",&n); for(i = 0;i < n;i ++) { for(j = 0;j < i + 1;j ...原创 2020-05-01 20:48:17 · 286 阅读 · 2 评论 -
C语言:取出整形数组中相同的数
数组必须要有序,所以我们先用选择排序再操作数组方法一:需要重新创建一个数组#include <stdio.h>#define N 8int main(){ int data[N]; int b[N]; int i,j,k,n = 0,temp; for(i = 0;i < N;i ++) { scanf("%d",&data[i]); } fo...原创 2020-05-01 16:54:20 · 715 阅读 · 0 评论 -
浅谈scanf函数
scanf函数是输入函数,scanf也是有返回值的#include <stdio.h>int main(){ int i,j,k,z; j = scanf("%d",&i); z = scanf("%d %d",&i,&k); printf("j = %d\n",j); printf("z = %d",z); } //scanf返回的是:有...原创 2020-03-27 18:04:04 · 212 阅读 · 0 评论 -
查找——二分法
二分法的原理二分的思想就是逼近比较,产生的背景是又来优化代码的例如#include <stdio.h>int main(){ int a[1000];//a集合 int b[1000];//b集合 int a1,b1,k; int i,j; int q = 0; printf("请输入:"); scanf("%d %d...原创 2019-12-24 23:17:09 · 175 阅读 · 0 评论 -
浅谈单向链表
形如下图的就为单向链表单向链表里面的元素存储的位置不是连续的,链表的head是访问链表的入口,而NULL是其出口,且每一个元素中有值和下一个节点的地址单向链表的简单应用打印学生的基本信息#include <stdio.h>#include <string.h>typedef struct studen{ int num; char name[10]; ...原创 2019-12-20 23:02:43 · 130 阅读 · 0 评论 -
C语言灵魂之旅——指针
指针指针简介指针就是存放一个变量的地址的变量,说白了指针就是存放地址的,但指针很神奇可以直接访问内存,编译器通过获得指针即变量的地址就可以改变变量的值(是不是很神奇)指针变量的声明基类型 * 指针变量名=一个地址(初始化)如果定义了指针变量但没有初始化,那该指针就会成为野指针,因为指针可以直接访问内存,野指针会指向你不知道的内存中这样可能会使你的系统崩溃,所以最好不要出现野指针,如果指针...原创 2019-12-05 13:15:17 · 817 阅读 · 0 评论 -
给你三个ASCII字符(不含空白字符:包括空格、制表符\t、回车换行符\n),找出其中最大的那个
#include<stdio.h>int main(){char a,b,c,d;printf(“请输入字符:\n”);scanf("%c%c%c",&a,&b,&c);d = a;if(c > a){d = c;}if(b > a){d = b;}printf("%c",d);}原创 2019-06-13 09:13:22 · 10861 阅读 · 3 评论 -
指针赋值一个数字
//1#include <stdio.h>int main(){ int *ptr; int n = 5; ptr = &n;//&n就是已分配内存的(int型)的地址 printf("%d",*ptr);}//**************2#include <stdio.h>int main(){ i...原创 2019-11-29 09:45:50 · 2170 阅读 · 0 评论 -
指针操作
#include <stdio.h>int main(){ int s1[5] = {100,200,300,400,500}; int *prt1,*prt2,*prt3; prt1 = s1; prt2 = &s1[2]; printf("\n********************************************...原创 2019-11-29 09:27:16 · 153 阅读 · 0 评论 -
把一个16进制的数转化为10进制的数
思路:我们可以知道数组遍历是从左到右的,而加权重转化是从右向左的所以两者的大小要反过来i 和 strlen(数组名) - i - 1//6、写一函数,输入一个十六进制数,输出对应的十进制数。#include <stdio.h>#include <string.h>#include <math.h>void sw();//一个十六进制数,输出对应的...原创 2019-11-23 22:05:54 · 2750 阅读 · 0 评论 -
c语言的黑盒之旅(函数)
函数:就是以为了完成一个程序的特定任务,把完成一块任务的代码封住在一个函数中,不仅让主函数中代码少,而且我们封装的函数可以多次调用,较少了代码的重复,所以函数是c程序的基本模块函数的分类;1,库函数:(这不用说但是如果我们调用一个库函数要把他的头文件写在预处理中这样编译器才能在对应的头文件中找到该函数,比如printf(),scanf()就包含在stdio.h头文件中所以每次使用时这两个函数...原创 2019-11-23 10:35:50 · 543 阅读 · 0 评论 -
输入两个正整数m和n,输出m到n之间每个整数的自然对数。
/*输入两个正整数m和n,输出m到n之间每个整数的自然对数。输入输入包括两个整数m和n(m<=n),之间用一个空格隔开。输出每行输出一个整数及其对数,整数占4列,对数占8列,右对齐,对数保留4位小数。 */#include<stdio.h>#include<math.h>int mian(){int n,m,i;scanf("%d%d",&...原创 2019-06-17 21:04:23 · 16115 阅读 · 2 评论 -
从键盘输入三个整数x,y和z,求出其中最大的数
#include<stdio.h>#include<math.h>int main(){/从键盘输入三个整数x,y和z,求出其中最大的数。/int x,y,z;scanf("%d%d%d",&x,&y,&z);if(x < y){if(y > z){printf("%d",y);}else{printf("%...原创 2019-06-12 21:56:04 · 16421 阅读 · 0 评论 -
浅谈递归
程序调用自身的编程技巧称为递归定义很简单但是其在程序中的过程不简单#include <stdio.h>#include <stdlib.h>//例如:第一个人10岁以后每一个人比前面一个大2岁求第n个人的年龄int ages(int n);//函数定义int main(){ int people;//第几个人 scanf("%d",&...原创 2019-11-20 13:10:49 · 140 阅读 · 0 评论 -
比较两个字符串S1和S2。输出的正、负数值为两个字符串相应位置字符ASCII码值的差
思路字符串比较大小的过程是通过for循环遍历两个数组找到两个字符数组中第一个不同的字母的ASCII码值的大小,如果S1>S2,输出一个正数;如果S1==S2,输出0;如果S1<S2,输出一个负数/⑤比较两个字符串S1和S2。如果S1>S2,输出一个正数;如果S1==S2,输出0;如果S1<S2,输出一个负数。输出的正、负数值为两个字符串相应位置字符ASCII码值的差值。...原创 2019-11-17 23:07:56 · 2555 阅读 · 0 评论 -
编写一个程序,将字符串中的第m个字符开始的全部字符复制成另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果。
思路:从m后复制那就可以让m后尽心赋值//2、编写一个程序,将字符串中的第m个字符开始的全部字符复制成另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果。#include <stdio.h>#include <string.h>main(){ char str1[80]; char str2[80]; int i; int j = 0; int...原创 2019-11-17 23:03:28 · 13452 阅读 · 0 评论 -
处理字符数组常用的函数
#include <stdio.h>#include <string.h>int main(){ //字符串的常用的处理函数(包含在头文件string.h中) char ch[20] = "China"; char ch1[20] = "China"; /*gets函数,puts函数的使用(只针对字符串) gets(ch); p...原创 2019-11-14 11:29:15 · 446 阅读 · 0 评论 -
选择排序
#include <stdio.h>int main(){ int a[10]; int i,j; int temp;//临时变量 int n;//记录每一轮最大值数组元素的下标 int max;//最大值 printf("请输入10个数:"); for(i = 0;i < 10;i ++) { ...原创 2019-11-13 11:37:30 · 111 阅读 · 0 评论 -
打印实心菱形
#include <stdio.h>int main(){ int i,j; int num; int n; while(1) { printf("请输入行数(行数为奇数):"); scanf("%d",&n); num = (n + 1) / 2; for(i = 1;i <= num;i ++) { for(j = 1;j &...原创 2019-10-31 10:39:43 · 188 阅读 · 0 评论 -
将一个正整数分解质因数。例如:输入90,打印出90 = 2 * 3 * 3 * 5。
#include <stdio.h>int main(){ int i = 2;//因为是素数开始的 int n;//用户输入的值 scanf("%d",&n); if(n < i) { printf("%d\n",n); } printf("%d = ",n); for(i = 2;n...原创 2019-10-26 15:57:48 · 258 阅读 · 0 评论 -
浅谈分号和while
#include <stdio.h>#include <stdlib.h>int main(){ int n; n = 0; while(n ++ < 3); //第8行语句 printf("%d\n",n);//结果只有一个4?????? return 0;}/*因为:如前所述,循环在执行完测试条件后面的第一条语句后进行下...原创 2019-10-22 16:57:11 · 285 阅读 · 0 评论 -
某人想将手中的一张100元的人民币兑换成5元,1元和5角的这三种面值的同时求索兑换的零钞总数 为100张,而且每种钞票的数目不少于1张问有几种兑换方法
#include <stdio.h>int main(){ int i,j,k;//分别表示三种面值的张数for(i = 1;i < 100 / 5;i ++) { for(j = 1;j < 100 / 1;j ++) { for(k = 1;k < 100 / 0.5;k ++) { ...原创 2019-10-22 16:20:25 · 3619 阅读 · 0 评论 -
一个球从100米高度自由落下,每次落地后反跳回原高度的一般,再落下 ,求它在第10次落地时,共经过多少米?第10次反弹多高?
/*4.一个球从100米高度自由落下,每次落地后反跳回原高度的一般,再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?*/#include <stdio.h>int main(){ int i; double sum = 0; double n; n = 100; for(i = 1;i <= 2;i ++) {...原创 2019-10-19 19:26:58 · 1027 阅读 · 0 评论 -
c 语言求1-3+5-7+……-99+101的值。
//2.编写程序,求1-3+5-7+……-99+101的值。#include <stdio.h>int main(){ int i; int sum = 0; int a; for(i = 1;i <= 102 / 2;i ++) { a = 2 * i - 1; if(i % 2 == 0) ...原创 2019-10-19 18:18:30 · 23358 阅读 · 1 评论 -
给出一个不多于5位的正整数,要求:求出它是几位数;分别打印出每一位数字;按照逆序打印出各位数字
#include <stdio.h>main(){ int a,b,c,d,e,f; printf("请输入一个不多于5位的整数:"); scanf("%d",&a); b = a % 10; a = a / 10; printf("%d\n",b); if(a != 0) { c = a % 10; a = a / 10; printf("%d...原创 2019-10-18 22:21:53 · 10300 阅读 · 0 评论 -
利用给定公式和身高预测方法对你的身高进行预测
/*5.有关生理卫生知识与数理统计分析结果表明,影响小孩成人后身高的因素有遗传、饮食习惯与坚持体育锻炼等。小孩成人后身高与其父母身高和自身性别密切相关。设faHeight为父亲身高,moHeight为母亲身高,身高预测公式为:男性成人时身高 = (faHeight +moHeight) * 0.54(cm)女性成人时身高 = (faHeight * 0.923 +moHeight)/2...原创 2019-10-18 22:19:14 · 3925 阅读 · 2 评论 -
输入10个数找出最大值
//用第一个数和以后的数比较,找出最大值和最小值#include <stdio.h>#include <stdlib.h>int main(){ float a[10],sum; int max = 0,min = 0; int i=0; printf("请从键盘上输入10个数:"); for(i=0;i&...原创 2019-10-18 13:35:41 · 2904 阅读 · 2 评论 -
给定一个不多于5位的正整数,判断它是几位数,并输出。 输入
#include<stdio.h>#include<math.h>int main(){/给定一个不多于5位的正整数,判断它是几位数,并输出。输入一个不多于5位的正整数。输出输出正整数的位数,单独占一行。样例输入 Copy111样例输出 Copy3来源/分类/int i;int num;int count = 0;scanf("%d",&a...原创 2019-06-12 16:29:10 · 12145 阅读 · 3 评论 -
输入三个数并从大到小排列
/#include<stdio.h>int main(){int x,y,z;int max,min;scanf("%d%d%d",&x,&y,&z);if(x > y){max = x;min = y;}if(z > max){max = z;}if(z < min){min = z;}y = x + y...原创 2019-06-12 22:40:46 · 6874 阅读 · 6 评论 -
三目运算符
三目运算符:表达式1?表达式2:表达式3判断表达式1是否成立,如果为真输出表达式2,否则输出表达式3#include<stdio.h>int main(){ //三目运算符 int a,b; printf("请输入两个整数:"); while(1) { scanf("%d %d",&a,&b); ...原创 2019-10-16 10:37:10 · 134 阅读 · 0 评论 -
c 语言中的结构体
#include<stdio.h>struct A{ 内容1; 内容2; ,,,,};int main(){ struct A A1 = {};//结构体内元素的赋值}原创 2019-10-14 22:32:37 · 102 阅读 · 0 评论 -
鸡兔同笼(枚举法)
//枚举法#include<stdio.h>int main(){ /*鸡和兔关在一个笼子里,鸡有2只脚,兔有4只脚,没有例外。已知现在可以看到笼子里m个头和n只脚,求鸡和兔子各有多少只?输入输入两个整数m和n,分别代表笼子里头的个数和脚的个数。(假设m和n都在合法的数据范围内)输出依次输出鸡和兔的只数。(数字为0的也要输出)样例输入 Copy12 40样...原创 2019-10-13 10:57:40 · 4913 阅读 · 1 评论 -
输入和输出函数注意点
输入函数(scanf())scanf()函数被封装在stdio.h的头文件里不要忘记去取地址符&&就是取地址,就如中国的成语按图索骥一样,在使用scanf()函数之间定义一个变量,计算机本身就有内存,通过变量来给他分配一个内存空间来存放这个变量,scanf()函数的功能是用户输入的内容赋值给定义的变量,计算机内部有很大的内存空间,那么scanf函数如何将内容赋值给变量了?那就...原创 2019-10-12 10:33:52 · 683 阅读 · 0 评论 -
占位符前面的数字的作用
例如 :%m.nd表示:输出来占位的整数有m,保留n位数原创 2019-06-17 21:07:40 · 1968 阅读 · 0 评论 -
用递归算阶乘
#include<stdio.h>int factorial(int);//阶乘函数int Judge(int);//判断用户输入的是否为正数int main(){ int result;//接收阶乘数 int num; printf("*****************<计算阶乘>******************\n"); wh...原创 2019-09-06 08:49:19 · 196 阅读 · 0 评论 -
圆面积的计算和判断用户输入的是否为正数
#include<stdio.h>#include<math.h>double Triangle(double);//计算圆面积int Judge(double);//判断用户输入是否为正数int main(){ double radius; double s; printf("请输入圆的半径:"); do{ ...原创 2019-09-05 09:37:08 · 184 阅读 · 0 评论