C语言基础
123向前走走
小白出发
展开
-
C语言合运算不同类型之间的混合运算
+、-、*、/运算的两个数中有一个数为float或double型,结果为double型,因为系统将所有的float型数据转换为double类型数据再进行计算。如果int型与float或double型数据进行计算,先把int型和float型数据转换为double数据在进行计算,结果为double型。字符(char)型数据与整形数据计算,及时把char型数据的ASCLL代码与整形数据进行计算。如...原创 2019-02-28 20:57:18 · 5223 阅读 · 0 评论 -
C语言字符串的增删查合并操作
#include<stdio.h>#include<string.h>#include<stdlib.h>#define N 30void insert(char *s1,char *s2,int position){//将子串s2插入主串的指定位置 int len1,len2,i; len1=strlen(s1); len2=strlen(s...原创 2019-03-13 15:12:07 · 1272 阅读 · 0 评论 -
匹配子串在主串中的位置
#include<stdio.h>#include<string.h>#define N 20int main(){ char s1[N],s2[N]; int len1,len2,i,j; gets(s1); gets(s2); len1=strlen(s1); len2=strlen(s2); for(i=0;i<=len1-len2;i+...原创 2019-03-12 21:33:16 · 2469 阅读 · 0 评论 -
输出魔方阵C语言
方法一:全排列之后判断,复杂度很大,只能测到3阶//全排列(注意回溯),再判断 #include<stdio.h>#include<math.h>#define N 100int judge[N][N];void f(int *a,int n,int m){ int i,temp,j,k,h,sum1,sum2; if(m==n){ k=1;...原创 2019-03-17 11:35:04 · 778 阅读 · 0 评论 -
不带头结点的链表
#include<stdio.h>#include<stdlib.h>#define LEN sizeof(grade)typedef struct Grade{ int num; float score; struct Grade *next;}grade;grade *create(){//创建动态链表 int n=0;//链表有几个元素 gr...原创 2019-03-08 11:23:50 · 181 阅读 · 0 评论 -
带有头节点的链表操作
#include<stdio.h>#include<stdlib.h>#define LEN sizeof(student)typedef struct Student{ int num; float score; struct Student *next;}student;student *find(student *head,int...原创 2019-03-08 11:22:17 · 522 阅读 · 0 评论 -
以首尾交换的方法交换字符串中以'A'开头和以'N'结尾的单词
题目:以首尾交换的方法交换字符串中以'A'开头和以'N'结尾的单词 输入:AM I OLDER THAN YOU 输出:THAN I OLDER AM YOU//输入:AM I OLDER THAN YOU//输出:THAN I OLDER AM YOU #include<stdio.h>#include<string....原创 2019-03-11 21:19:13 · 1881 阅读 · 0 评论 -
折半法查找(递归与非递归)
#include<stdio.h>int f(int *a,int n,int begin,int end){// int mid; // if(begin>end) return -1;// mid=(end+begin)/2;// if(a[mid]==n){// return mid;// }else if(a[mid]>n){// return...原创 2019-03-15 16:55:08 · 424 阅读 · 0 评论 -
哥德巴赫猜想C语言
1.每个不小于6的偶数都可以表示为两个奇素数之和;2.每个不小于9的奇数都可以表示为三个奇素数之和。#include<stdio.h>#include<math.h>int check(int n){//判断奇素数 int i; if(!(n%2))//判断奇数 return 0; else{ for(i=2;i<=(int)(sqrt(...原创 2019-03-11 11:21:05 · 10633 阅读 · 4 评论 -
反弹球的高度
#include<stdio.h>int main(){ double sum=0,high=100; int i; for(i=1;i<=10;i++){ sum+=high+high/2; high/=2; } sum-=high; printf("第10次落地共经:%.10f\n",sum); printf("第10次反弹高度为:%.10f",hi...原创 2019-03-04 16:46:53 · 267 阅读 · 0 评论 -
约瑟夫环C语言
问题:约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围人全部出列,通常,我们会要求输出最后一位出列的人的序号。那么这里主要研究的是最后一个出列的人的序号要怎么确定。解决:1.使用带头节点的链表#inc...原创 2019-03-09 12:43:41 · 6448 阅读 · 0 评论 -
结构体变量内存分配问题
由于系统遵守两个原则1.为结构体变量的成员变量分配内存的起始地址必须为成员变量内存长度的整数倍。2.结构体变量内存的总大小必须为sizeof(结构体成员变量)(最大的)的整数倍。struct Demo{ char a;//sizeof(char)=1 int b;//sizeof(int)=4 flloat c;//sizeof(float)=4 double d;//sizeof...原创 2019-03-09 08:44:44 · 4453 阅读 · 3 评论 -
三天打鱼两天晒网C语言实现
中国有句俗语叫做“三天打鱼两天晒网”。某人从1990年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是打鱼还是晒网。#include<stdio.h>int judgeLeapYear(int year){//润年判断,0不是,1是 if((!(year%4)&&(year%100))||!(year%400)) return 1; e...原创 2019-03-05 09:06:35 · 1512 阅读 · 0 评论 -
快速排序法
#include<stdio.h>#define N 100void f(int head,int tail,int *a){ if(head==tail||head>tail){ return; } int temp=a[head]; int handle=0; int i=head,j=tail; while(head<tail){ if(!h...原创 2019-03-22 15:20:30 · 296 阅读 · 0 评论