
c语言
叫大白
github上有未与优快云同步的项目。github主页:https://github.com/gaozw1
展开
-
【C语言细节】当for循环中判断条件遇到逗号运算符
问题求下列输出x的结果 for(i=0,j=0;i<6,j<10;i++,j++) x = i+j;解答用C语言#include <stdio.h>int main() { int i,j,x=0; for(i=0,j=0;i<6,j<10;i++,j++) { printf("i=%d,j=%d\t\t", i, j); x = i + j;原创 2020-06-14 21:38:03 · 3607 阅读 · 0 评论 -
【C语言习题】输出蛇形矩阵
题目分析从1开始,a[n][0]=1往右下移动若移动到最后一行非最后一列,右一格;最后一列则上一格左上移动若移动到第一列非第一行,上一格;第一行则右一格2~5步循环#include <stdio.h>#define SIZE 100int main() { int i,j,m=0,n,N,count=2; int a[SIZE][SIZE]={...原创 2019-12-19 16:01:08 · 1317 阅读 · 1 评论 -
【C语言习题】解方程ax^2+bx+c=0
题目分析读取Coefficient.txt中的值,这里格式化读取即可将计算结果写入到result.txt 中对文件的读写操作:FILE *out,*in; if((out = fopen("Coefficient.txt","r")) == NULL){ printf("can't open file!\n"); exit(0); }...原创 2019-12-18 14:41:59 · 4801 阅读 · 1 评论 -
【C语言习题】2016_5_2学生成绩排名
题目分析学生信息包括姓名、学号、成绩,用结构体存储成绩分为数学、语文、物理、化学、英语五门成绩,用数组处理30名学生,用结构体数组存储定义结构体:struct stu{ char name[30]; int num; float score[5]; float all;}a[N];总分在前十名,选择排序法对数组a[]做简单选择排序,N为...原创 2019-12-18 10:50:54 · 844 阅读 · 0 评论 -
【C语言习题】两素数之差为2,则称该两素数为双胞胎数。求出[2,300]内双胞胎数。
问题两素数之差为2,则称该两素数为双胞胎数。求出[2,300]内:所有素数并保存到文件prime.txt中;有多少对双胞胎数;最大的一对双胞胎数。分析首先脑子里要有文件操作的框架,其次要知道素数怎么求。这里仅给出一种求素数的方法:就是判断n是否可以被n\sqrt nn整除,然后在找出的素数中找其他数,就很简单了。代码#include <stdio.h>#in...原创 2019-12-09 21:37:32 · 9302 阅读 · 1 评论 -
【C语言细节】计算自然对数的底 e遇坑
问题代码#include <stdio.h>#include <math.h>int main() { double a = 2,y; long int n=1; do{ y=a; n+=1; a=pow(1+1/(double)n,(double)n); }while(a-y>...原创 2019-12-09 19:34:25 · 1778 阅读 · 1 评论 -
【C语言习题】用递归算法求Hermite多项式的值
问题递归就不用分析了,直接照抄公式就好代码#include <stdio.h>double Her(double x,int n){ if(n == 0) return 1; else if (n == 1) return 2*x; else return 2*x*Her(x,n-1)-2*(n-1)*Her(x,n-2);}int...原创 2019-12-09 17:09:42 · 5057 阅读 · 0 评论 -
【C语言细节】int main(int argc, char** argv)里面的参数你了解吗?
问题将程序prog.c编译链接后运行:prog -nla hello world则*(*(argv+2))是( )A.‘p’B.’-’C.‘h’D.‘w’分析那么就要思考argv是什么?它是哪里来的呢?让我们再回顾一下编写C语言的代码框架:一般都是这样的:#include <stdio.h>int main(){return 0;}可实际上上述代码省略...原创 2019-12-06 17:01:47 · 1321 阅读 · 0 评论 -
【C语言细节】关于格式化输入%s的那些事
问题写出下面代码运行结果:#include <stdio.h>#include <stdlib.h>int main(){ char *p,*q; p=(char*)malloc(20*sizeof(char)); q = p; scanf("%s%s",p,q); printf("%s%s",p,q); return...原创 2019-12-05 21:24:17 · 1978 阅读 · 1 评论 -
【C语言细节】关于数组a++和指针p++
问题:#include <stdio.h>int main(){int a[10];int *p,i;printf("Please enter 10 integer numbers:");for(i=0;i<10;i++) scanf("%d",)return 0;}原创 2019-12-03 21:36:25 · 5328 阅读 · 4 评论 -
【C语言编程】递归求勒让德多项式
问题:用递归函数实现勒让德多项式分析:代码:include <stdio.h>int Px(int n,int x){ if (n==0) return 1; else if (n==1) return x; else return ((2*n-1)*x*Px(n-1,x)-(n-1)*Px(n-2,x...原创 2019-12-02 16:41:56 · 10668 阅读 · 3 评论 -
【C语言编程】求Fibonacci(斐波那契)数列前40个数
问题:求Fibonacci(斐波那契)数列前40个数。分析:这个数列有如下特点:第1,2两个数为1,1。从第三个数开始,该数是其前面两个数之和。即该数列为1,1,2,3,5,8,13,… ,用数学方式表示为:代码:#include <stdio.h>int main() { int f1 = 1,f2 = 1; int i; for (int i ...原创 2019-10-24 17:17:56 · 46160 阅读 · 11 评论 -
【C语言编程】输入两个数和双目算数运算符求结果
问题:编写一个根据用户键入的两个操作数和一个双目算数运算符,由计算机输出运算结果的程序。解析:首先要搞清楚双目运算符和双目算数运算符[1],双目算数运算符只有5个,即【+】【-】【*】【/】【%】。然后用swich语句进行编写。代码:#include <stdio.h>int main() { int a,b,k; char c; printf("输...原创 2019-10-24 08:04:43 · 8766 阅读 · 1 评论 -
双目运算符
定义运算所需变量为两个的运算符叫做双目运算符,或者要求运算对象的个数是2的运算符称为双目运算符。分类初等运算符 下标运算符【[]】、分量运算符的指向结构体成员运算符【->】、结构体成员运算符【.】算术运算符乘法运算符【*】、除法运算符【/】、取余运算符【%】 、加法运算符【+】、减法运算符【-】关系运算符等于运算符【==】、不等于运算符【!=】 、关系运算符【< &g...原创 2019-10-23 22:58:29 · 6258 阅读 · 0 评论 -
【C语言编程】切比雪夫多项式
问题:已知:切比雪夫多项式:编写一程序,输入n,x,并输出0~n的所有Tn(x)的值。解析:本题用递归函数求解,没什么难度,代码如下:#include <stdio.h>int T(int n,int x){ int k; if(n==0) k=1; else if(n==1) k=x; else ...原创 2019-10-23 21:28:37 · 4181 阅读 · 2 评论 -
关于指针字符串赋值问题
问题今天做某高校C语言真题遇到了一个小问题写出程序运行结果,结果是==!yppah==我想去编译器里确认一下我的答案,然而发现运行到strcpy(sl,sl+1)这一句的时候发生了地址访问冲突!我把strcpy(sl,sl+1)改成sl=sl+1程序才正常运行。分析我为了弄清指针变量赋值问题,又复习了一遍指针与字符串的关系举个例子:【例8.21】改变指针变量的值。#include...原创 2019-10-22 21:03:17 · 2690 阅读 · 1 评论 -
密码学之维吉尼亚(C语言)
C语言代码附上,C++的话应该在最前面加上个预编译头**#include “stdafx.h”**,否则会报错,详情参考:warning C4627: 在查找预编译头使用时跳过原理:维吉尼亚密码引入了“密钥”的概念,即根据密钥来决定用哪一行的密表来进行替换,以此来对抗字频统计。假如以上面第一行代表明文字母,左面第一列代表密钥字母,对如下明文加密:TO BE OR NOT TO BE THAT...原创 2019-03-24 16:29:41 · 4579 阅读 · 4 评论 -
密码学之凯撒密码(C语言)
C语言代码附上,C++的话应该在最前面加上个预编译头**#include “stdafx.h”**,否则会报错,详情参考:warning C4627: 在查找预编译头使用时跳过凯撒密码功能:限制部分非法字符及数字输入;限制输入字母数量;加密:解密:输出所有明文代码如下:#include <stdio.h> #include <stdlib.h&g...原创 2019-03-19 16:42:03 · 9987 阅读 · 0 评论 -
2019年10月江苏计算机二级C语言编程题解析
说明快毕业了,赶紧补一下江苏计算机二级的证,江苏计算机二级C语言除了选择题是常识题,跟C语言没关系,其他题目还好,题目很简单,但是当时最后一题卡了一会,考完试才看出来是循环和判断出了问题,在此记录一下。题目题目具体忘记了,稍微描述一下:(1)有一个数组a,找到数组前n个元素中相同的元素,将其放到数组最后,其他顺序变(2)用void fun(int a[],int n)函数实现其功能(3...原创 2019-10-20 09:47:52 · 3370 阅读 · 3 评论 -
使用gcc编译运行Hello World
第一步:在桌面创建文件夹 hello,并在hello文件夹中创建helloworld.c文件并编辑。mkdir hellotouch helloworld.cvim helloworld.c第二步:在helloworld.c文件中写入代码#include <stdio.h>int main(){ printf("Hello World!"); return 0}...原创 2019-10-08 23:21:24 · 10946 阅读 · 1 评论 -
2018年3月江苏省计算机二级C语言真题第1套
高级语言编写的程序可以由编译程序将其翻译转换为可执行程序,这些程序在Windows环境下查看其类型时显示为“MS-DOS应用程序”“应用程序”或“应用程序扩展”,显示为” 应用程序”的文件,其文件扩展名通常是__________。A. COMB. APPC. EXED. DLLC解析:APP是iOS手机可执行程序的简称, EXE显示为应用程序,DLL是应用程序扩展。下列关于I...原创 2019-10-07 16:29:43 · 6732 阅读 · 4 评论