c语言
番茄都是西红柿
大家一起交流学习啊~
展开
-
assert关键字使用方法
assert关键字意为断言; assert宏的原型定义在#include <assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。#include <stdio.h>...原创 2018-04-20 14:30:06 · 562 阅读 · 0 评论 -
数据存储大小端问题
大端和小端,也就是big-endian和little-endian,其实是从描述鸡蛋的部位而引申到计算机地址的描述,也可以说,是从一个俚语衍化来的计算机术语。 如果把一个数看成一个字符串,比如11223344看成”11223344”,末尾是个’\0’,’11’到’44’个占用一个存储单元,那么它的尾端很显然是44,前面的高还是低就表示尾端放在高地址还是低地址,它在内存中的放法非常直观,如下图: ...原创 2018-04-24 23:02:10 · 2392 阅读 · 0 评论 -
C语言中的位段
位段(bit-field)是以位为单位来定义结构体(或联合体)中的成员变量所占的空间。含有位段的结构体(联合体)称为位段结构。采用位段结构既能够节省空间,又方便于操作。 位段的定义格式为: 类型 成员名: 占用位数目 其中类型只能为int,unsigned int,signed int三种类型(int型能不能表示负数视编译器而定,比如在vc中int就默认是si...原创 2018-05-02 21:23:46 · 186 阅读 · 0 评论 -
动态内存开辟
一、malloc()和free()的基本概念以及基本用法: 1、函数原型及说明: void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。 关于分配失败的原因,应该有多种,比如说空间不足就是一种。 void free(void *FirstByte): 该函数是将之前用malloc分...转载 2018-05-02 23:43:39 · 126 阅读 · 0 评论 -
C语言结构体--详解
什么是结构体? 一般在什么情况下用到结构体? 什么是结构体内存对齐?为什么要对齐?怎样对齐? 如何知道结构体某个成员相对于结构体起始位置的偏移量?. 什么是结构体? 一般在什么情况下用到结构体? 结构体是一种聚合数据类型,结构是多个值的集合,这个值称为它的成员,各个成员可能有不同类型。例如一个学生结构体,里面成员包含学生姓名,性别,年龄,成绩等个人信息,那么,我们在定义这...原创 2018-07-30 12:34:00 · 416 阅读 · 0 评论 -
C语言—商品销售系统
#define _CRT_SECURE_NO_WARNINGS 1#include&lt;stdio.h&gt; //头文件#include&lt;string.h&gt; //头文件#include&lt;stdlib.h&gt; //头文件#define M 100 //货物种类#define N 100 //顾客数目struct goods //...原创 2018-08-09 12:35:12 · 3468 阅读 · 1 评论 -
C语言小项目之贪吃蛇
问题描述:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字 数据范围: 对于%50的数据,size&amp;lt;=10^4 对于%75的数据,size&amp;lt;=10^5 ...原创 2018-08-30 17:50:20 · 704 阅读 · 0 评论 -
C语言小项目之猜数字游戏
实现一个猜拳小游戏,让CPU来猜测你内心定下的一个数字。猜测的数字范围是1~100,采用二分搜索策略来猜测,且CPU最初猜测的数字是50。比如,如果CPU猜测的数字小了,那么就在50~100之间再猜一个数字,如果猜测的数字大了,那么就在1~50之间猜测一个数字,依次类推。题目及思路分析 从题述来看,有如下几个关键点需要思考,以及这些关键点对应的解决思路如下:关键点1.获取用户的输入,你...原创 2018-09-01 20:48:08 · 851 阅读 · 0 评论 -
C语言小项目--学生管理系统
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>#include <string.h>//结构体类型名可以产生-》变量、指针=》访问成员typedef struct student//定义学生的资料{ char name[10]; //姓名=...原创 2018-09-01 20:55:33 · 1405 阅读 · 0 评论 -
C语言小项目--五子棋
#include <stdlib.h>#include <stdio.h>#include <conio.h>#include <string.h>#define MAXIMUS 15 //定义棋盘大小int p[MAXIMUS][MAXIMUS];//存储对局信息char buff[MAXIMUS * 2 + 1][MAXIMUS * ...原创 2018-09-01 21:05:42 · 682 阅读 · 0 评论 -
C语言小项目--模拟计算器
编译环境vc6.0#include <stdio.h> #include <math.h> #include <stdlib.h> //预处理指令int main(void){ double bNumber, Number, Result; //给加减乘除定义的变量 int No; ...原创 2018-09-01 21:10:19 · 4092 阅读 · 0 评论 -
C语言小项目--飞机大战
#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <windows.h>#define N 35#pragma warning(disable: 4996)int str[22][N] = { 0 }, plane = 9, width = 24, speed ...原创 2018-09-01 21:15:51 · 6476 阅读 · 2 评论 -
C语言小项目--三子棋游戏
#include<stdio.h> #include<stdlib.h> #include<time.h> void chess_board(char arr[3][3]) //打印棋盘 { int i = 0; int j = 0; for (i = 0; i < 3; i++) { pri...原创 2018-04-16 22:24:12 · 223 阅读 · 0 评论 -
简单模拟用户密码登录场景
问题描述:在日常生活中我们通常在各种情况下需要输入密码来获取所需要的信息,用户登录有三次输入机会,若三次输入均错误则系统自动退出。请用C语言简单模拟一下用户密码登录场景 问题分析:输入密码为字符串,我们先定义一个字符串里面保存用户初始密码,再定义一个数组为用户输入的密码,对初始密码和输入密码用strcmp()函数进行字符串比较,若相等则登录成功,不相等则登录失败;其中,定义的i为输入次数,i等于...原创 2018-04-09 15:54:07 · 508 阅读 · 0 评论 -
打印一个字符串使它输出是从两边往中间汇聚
#include<stdio.h>#include<Windows.h>int main(){ char arr1[] = "abcdefghijklmnopqrstuvwxyz"; char arr2[] = "##########################"; int left = 0;//left从下标0开始 int rig...原创 2018-04-08 19:17:29 · 159 阅读 · 0 评论 -
c语言单链表的基本操作
链表是一种动态存储方式,和顺序表相比,链表物理存储上是非连续的,而且采用动态内存开辟,其优点是方便插入,没有上限的存储,不需要内存空间的重组,能有效的分配和利用内存资源,不会造成空间浪费,缺点是排序很麻烦,查找也很麻烦,而且需要多个指针操作,容易出错。 链表的各类操作包括:链表的创建、删除、插入、输出、排序等。结构体定义要想学懂链表,必须先学好并灵活运用结构,在链表中,一个个独立的结点就是一个结构原创 2017-10-28 11:39:33 · 766 阅读 · 0 评论 -
指针与地址
指针是C语言的一个显著特点之一,指针的使用十分灵活而且能提高某些程序的效率。如果作为程序员把C语言学习中指针不能熟练掌握,也就无法成为C语言编程高手。使用指针可以访问变量、数组、字符串,甚至函数。掌握了指针的应用,就可以使程序变得简洁、紧凑、高效。 那么到底什么是指针? 如果一个程序中定义了一个变量,我们再对程序进行编译时,系统就会给这个变量分配内存单元。系统的内存就像是带有编号的小房间,使用那原创 2017-10-20 21:25:06 · 505 阅读 · 0 评论 -
指针
int p; //常见的整型变量 变量指针的一般形式如下: (类型说明 * 变量名)int *p; /*该指针为一级指针,其中P与*结合,说明P 是一个指针,再与int 结合,说明指针所指向变量的数据类型为整型.P是一个为返回整型数据的指针 */int **p; /*该指针为二级指针(指针的指针),P 先与右边的*结合,由此P 是一个指针,再与左边的*结合,说明指针所指向的元素是指针,然原创 2017-10-22 18:19:51 · 186 阅读 · 0 评论 -
指针(一)
言:复杂类型说明 要了解指针,多多少少会出现一些比较复杂的类型,所以我先介绍一下如何完全理解一个复杂类型,要理解复杂类型其实很简单,一个类型里会出现很多运算符,他们也像普通的表达式一样,有优先级,其优先级和运算优先级一样,所以我总结了一下其原则:从变量名处起,根据运算符优先级结合,一步一步分析.下面让我们先从简单的类型开始慢慢分析吧:[cpp] view plain copy int原创 2017-10-13 16:50:39 · 235 阅读 · 0 评论 -
用循环(for\while\do...while)打印1到100的整数加和
//计算1、2、3、、、100这100个数的整数和for语句#include<stdio.h>int main(){ int a,sum; sum = 0; for (a = 1; a <= 100; a++) { sum = sum + a; } printf("整数和为%d\n",sum);}//while循环:{原创 2017-10-31 21:45:25 · 7034 阅读 · 0 评论 -
c语言小项目---注释转换
```//CommentConvert.h文件#ifndef __COMMENT_CONVERT_H__#define __COMMENT_CONVERT_H__#include <stdio.h>#include <stdlib.h>enum Status{ NUL_STATUS,//无状态 C_STATUS,//C状态下 CPP_STATUS,//在C++状态原创 2017-09-22 22:28:30 · 261 阅读 · 0 评论 -
字符串拷贝--strcpy的代码实现
strcpy():指的是字符串的复制,其基本类型为char* strcpy(char* dest, const char* src); 该类型表示字符类型的函数strcpy把src所指向的字符串以’\0’结尾的全部字符串复制到字符类型数组dest所指向的数组中(包含’\0’),返回指向dest的指针。(即dest为目标地址,src为源地址。 注意:在进行字符串拷贝时要注意目标字符串大小和所给的源原创 2017-10-24 20:41:09 · 978 阅读 · 0 评论 -
用C语言打印九九乘法表
#include<stdio.h>int main(){ int i, j; for (i=1; i <= 9; i++){ for (j=1; j <= i; j++) { printf("%2d*%d=%d", i, j, i*j);/*此处使用%2d是为了将两个式子用空格分开,方便查看*/ }原创 2017-11-12 16:56:33 · 5540 阅读 · 0 评论 -
学生管理系统设计(数据库连接C#版)
目录 一.课程设计说明 1 1.1项目概述 1 1.2设计任务和要求 1 1.3开发环境说明 1 二.需求分析阶段 1 2.1项目介绍 2 2.2数据需求分析 2 三.概念结构设计 3 3.1E-R图 4 3.2数据库设计 5 3.3数据字典 8 四.用户界面设计 11 4.1学生信息管理系统 12 4.2学生信息查询 12原创 2017-12-02 21:02:52 · 60159 阅读 · 160 评论 -
函数传参的三种方式
函数传参有三种传参方式:传值、传址、传引用。 1、按值传递 (1)形参和实参各占一个独立的存储空间。 (2)形参的存储空间是函数被调用时才分配的,调用开始,系统为形参开辟一个临时的存储区,然后将各实参传递给形参,这是形参就得到了实参的值。#include&lt;stdio.h&gt;void swap1(int x, int y)//定义中的x,y变量是swap函数的两个形参{ ...原创 2018-03-11 19:31:02 · 46521 阅读 · 5 评论 -
A+B问题
问题描述 输入A、B,输出A+B。 说明:在“问题描述”这部分,会给出试题的意思,以及所要求的目标。 输入格式 输入的第一行包括两个整数,由空格分隔,分别表示A、B。 说明:“输入格式”是描述在测试你的程序时,所给的输入一定满足的格式。源代码C++:#define CRT_SECURE_NO_DEPRECATE#include<stdio.h>#include&l...原创 2018-03-23 18:37:00 · 210 阅读 · 0 评论 -
C语言小项目--打地鼠
#include <stdio.h>#include <stdlib.h>#include <time.h>int main(){ int times = 0;//打老鼠的次数 int i;//循环打老鼠的变量 int mousex = 0;//老鼠的x轴坐标 int mousey = 0;//老鼠的y轴坐标 i...原创 2018-09-01 21:20:50 · 2898 阅读 · 1 评论