c语言
文章平均质量分 62
兮于怀
莫听穿林打叶声,何妨吟啸且徐行
展开
-
if(x=1)和if(x==1)这两条语句的差别
= 一个等于号 赋值运算符,是赋值 就是让X等于1== 两个等于号是逻辑运算符,左右两边的数字相等 类型大小 都要相等if(x=1) 如果不报语法错误 ,,那么 只要X 和 1 的类型相同 那这条判断语句就永远为 true (指判断左右类型是否相同)if(x==1) 两个等号, X 和1 类型 和 大小 相等, 那么判断为true 反之 判断 为 false (不仅判读左右类型,也要判读数值大小)...原创 2021-03-12 11:32:36 · 6377 阅读 · 0 评论 -
c语言输出初回忆
温故而知新今天做了几道c语言简单的输出题,回忆了输出的精度问题,记录一下1.字符getchar()和putchar()的输入输出问题输入的时候为 变量=getchar(),输出的时候可以在putchar()里进行运算。题目【顺序结构】大小写转换2题目描述用从键盘连续获得两个字符(先大写再小写),中间没有任何分隔符,将两个字符的大小写转换后,用putchar()函数对其进行输出输入描述从键盘输入连续两个字符(先大写再小写),中间没有任何分隔符输出描述进行大小写转换后的两个字符,中间用换行原创 2020-09-24 20:05:48 · 994 阅读 · 0 评论 -
字符串操作常见模型(C语言进阶)
1.while模型`#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <string.h>//求一个字符串中某个子串出现的次数int getCout(char *str, char *substr, int *count){ int r...转载 2020-04-01 13:24:58 · 341 阅读 · 0 评论 -
C语言的内存四区模型(C语言进阶)
内存四区模型:操作系统给C/C++编写的程序分配内存,通常将分配的内存划分为以下四个区域:1.栈区:存放局部变量,用完由操作系统自动释放2.堆区:动态分配给程序的内存区域,由程序员手动释放3.数据区:分为两种:(1)常量区:存放常量,一般是字符串常量(2)全局区/静态区:存放全局变量和静态变量4.代码区:存放可执行代码的区域示例如下:int main(){ char...转载 2020-04-01 13:21:00 · 293 阅读 · 0 评论 -
NOI 雇佣兵讲解(c/c++)
NOI 雇佣兵例题描述雇佣兵的体力最大值为M,初始体力值为0、战斗力为N、拥有X个能量元素。当雇佣兵的体力值恰好为M时,才可以参加一个为期M天的战斗期,战斗期结束体力值将为0。在同一个战斗期内,雇佣兵每连续战斗n天,战斗力就会上升1点,n为当前战斗期开始时的战斗力。一个战斗期结束后,雇佣兵需要用若干个能量元素使其体力恢复到最大值M,从而参加下一个战斗期。每个能量元素恢复的体力值不超过当前...原创 2020-03-19 08:28:15 · 4335 阅读 · 0 评论 -
花式打印图形(C语言)
学完了c语言,回过头来看看之前难死自己的打印图形,嘿嘿,果然还是很简单的啦。打印图形问题的关键就是找到图形的行数与星号,空格三者之间的规律,如果打印图形AC了的话,相信循环已经不是问题了。1.输出一行星号#include <stdio.h>int main(){ int n,i; scanf("%d",&n); for(i=1;i<=n...原创 2020-03-16 20:28:30 · 4419 阅读 · 0 评论 -
简单的事情(求组合数)(C语言)
例题:题目描述数学天才fans曾经说过一句话:组合数的计算是一件非常简单的事情。组合数的计算真的是一件非常简单的事情吗?请你自己去尝试一下吧!输入描述输入中的一些整数对n,m(m≤n≤20)输出描述输出其组合数。样例输入5 218 13样例输出108568思路分析:1.多组数据的输入输出,用EOF法。2.用递归实现求m和n的组合数,关键在于找到递归公式如下图:A...原创 2020-03-01 00:21:03 · 712 阅读 · 0 评论 -
简单计数器(C语言)
例题:模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。输入格式:输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结束。输出格式:在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。输入样例:1+2*10-10/2=输出样例:10...原创 2020-02-27 21:34:54 · 7079 阅读 · 0 评论 -
花式求解最大公约数(补充)(c语言)
例题(最大公约数)题目描述写两个函数,分别求两个整数的最大公约数和最小公倍数。用主函数分别调用这两个函数,并输出结果。前置代码:#include <stdio.h>int max(int a,int b);int min(int a,int b);int main(){int a,b;scanf("%d %d",&a,&b);printf("%d ...原创 2020-02-20 11:03:14 · 191 阅读 · 0 评论 -
变量的生存期和作用域(例题理解)(c语言)
例题:给出下面的程序,在不使用计算机的情况下,自行判断输出结果。#include <stdio.h>void func();int n=1;int main(){ static int a; int b=-10; printf("a:%d,b:%d,n:%d\n",a,b,n); b+=4; func(); printf("a:%d,b:%d,n:%d\n",a...原创 2020-02-19 17:31:11 · 830 阅读 · 0 评论 -
多组数据的输入方法(c语言)
多组数据的输入方法(c语言实现)1.EOF法因为在线评测系统的输入数据存放在一个文件中,因此可以通过文件是否结束的方式判断输入的数据是否结束。scanf在读取到文件结束符时,会返回标识EOF(end of life),EOF是一个预定义的常量,等于-1。通过判断scanf的返回值否为EOF决定是否退出循环。例题:给定两个整数a,b,求这两个数之和【输入】输入数据有多行。每行数据中含有...原创 2020-02-10 20:58:40 · 61289 阅读 · 45 评论 -
求最大公约数的两种方法(c语言)
一.辗转相除法1.来源背景辗转相除法, 又名欧几里德算法(Euclidean algorithm),是求两个正整数之最大公约数的算法。它是已知最古老的算法, 其可追溯至公元前300年前。2.思路分析用较小数除较大数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。...原创 2020-02-04 21:43:28 · 5504 阅读 · 1 评论 -
[循环]素数(c语言)
[循环]素数原题思路解析: 素数是除了1和其本身外无其他约数的数。 二重循环:外循环:用i表示区间[m,n]上的数 内循环:用j判断i是否为素数AC代码:方法一:在循环内赋初值的标志旗帜法#include <stdio.h>int main(){ int m,n,i,j; int flag; //用旗...原创 2019-12-22 00:19:54 · 1784 阅读 · 0 评论 -
数字反转(C语言)
例题:题目描述给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(如:输入-380,输出-83)。输入描述输入共1行,一个整数N。输出描述输出共1行,一个整数,表示反转后的新数。样例输入123样例输出321AC代码:方法一:优点:此方法不用考虑前置0的问题#include <...原创 2020-03-06 12:56:47 · 26249 阅读 · 16 评论 -
两数合并(多角度分析)(C语言)
例题:题目描述编写函数Fun,其功能是将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a的十位和个位依次存放在c数的十位和千位上,b的十位和个位依次存放在c数的个位和百位上。注意:只提交函数Fun()。int main(){int a,b,c;scanf("%d,%d",&a,&b);Fun(a,b,&c);printf("%d\...原创 2020-03-06 11:48:58 · 6614 阅读 · 0 评论