1,c语言程序设计 1.A解释:声明时不可以连续赋值2.A解释:可以用外部声明调用不在同一文件但在同一工程目录下的函数3.B解释:有没有break都语法正确4.B不解释5.解释:A没有返回值的函数为过程函数,不需要返回值 。BABBA
![c语言程序,c语言程序设计](http://img.yunnanlong.com/221015/1PG64C0-0.png)
2,C语言程序设计回答C语言程序本书是根据非计算机专业计算机基础课程教学指导分委员会提出的“关于进一步加强高等学校计算机基础教学的意见”(简称白皮书)中“高等学校非计算机专业计算机基础课程教学基本要求”部分的C程序设计课程大纲编写而成 。全书共分10章,系统地介绍了程序设计基本概念,C语言的各种数据类型、运算符与表达式、模块化程序设计方法、流程控制结构和文件系统的基本操作,对面向对象编程基础也进行了初步阐述 。提问哪里错了帮忙改改回答亲亲这题超出回答范围了哦需要了解c语音程序请咨询这类专业人士哈更多4条
![c语言程序,c语言程序设计](http://img.yunnanlong.com/221015/1PGC130-1.png)
3,怎么用c语言编写程序C语言作为一门偏底层的编程语言,涉及应用的方面非常广,嵌入式、驱动、服务器等都有,日常编译运行的exe程序(黑框框)就是一个简单的应用,这里简单介绍一下如何使用C语言编写桌面GUI程序,主要用到GTK这个工具包,实验环境win10+CodeBlocks(其他C语言编程软件也可以,VS、Dev-C++都行):1.首先,下载GTK,这个可以直接到CSDN上下载打包好的GTK-bundle包,地址https://download.csdn.net/download/qq_34816564/10925737,一个zip压缩包,如下,直接添加bin目录到环境变量中就可以使用:2.环境变量添加完成后,打开cmd窗口,输入命令“pkg-config --cflags gtk+-3.0”,如果出现以下输出,则说明配置成功:这时我们也可以查看一下GTK自带的示例,输入命令“gtk3-demo”即可,这里会列出所有示例,双击就可以查看,如下:3.最后就是在CodeBlocks中配置GTK实现C语言编写GUI桌面程序了,这里主要是引入GTK头文件和GTK库,主要步骤及截图如下:首先引入GTK头文件,打开CodeBlocks,依次点击“Settings”->"Compiler...",在编译器中添加一行命令“`pkg-config --cflags gtk+-3.0`”,如下:接着引入GTK库,在链接器中添加一行命令“`pkg-config --libs gtk+-3.0`”就行,如下:最后,就可以直接使用C语言编写桌面GUI程序了,测试代码如下,非常简单:运行这个程序,截图如下,就是一个简单窗口,不再是一个黑框框啦:至此,这里就介绍完了如何使用C语言编写桌面GUI程序 。总的来说,整个过程不难,只要你熟悉一下上面的配置过程,很快就能在本地搭建好开发环境,当然,这只是C语言一个非常小的应用,还有许多其他的应用和示例,网上也有相关资料和教程,介绍的非常丰富详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言补充 。【c语言程序,c语言程序设计】
![c语言程序,c语言程序设计](http://img.yunnanlong.com/221015/1PG61430-2.png)
4,一个完整的c语言程序包括哪些内容 main主函数int main(int _argc,char *_argv[])return 0;}C程序由源代码文件组成源代码由函数组成函数由函数首部和函数体组成函数体由声明和语句部分组成应当包含头文件(include "stdio.h"),花括号(其中头文件根据你所编程的程序里包含哪些函数进而在增添哪些头文件例如包含字符串函数(strlen,strlwr,strcpy,strcat,)等那就要加字符串的头文件了(string.h).命令部分定义部分可执行部分1 。头文件.2 。main函数3 。函数体5,求几个简单的C语言小程序 求最大公约数和最大公倍数的这个我感觉比较好,楼主看下:#include<iostream>#include<stdlib.h>using namespace std;int maxyue(int x,int y) else return maxyue(y,x%y);}int maxbei(int x,int y)int main()int a,b,maxy,maxb;cout<<"Please input two numbers:";cin>>a>>b;maxy=maxyue(a,b);maxb=maxbei(a,b);cout<<a<<" "<<b<<"的最大公约数是:"<<maxy<<endl;cout<<a<<" "<<b<<"的最大公倍数是:"<<maxb<<endl;system("pause");}6,c语言简单程序解释一下 这里的p=c,是将数组c[0]的地址给p,下面用的for循环,*p++就是从c[0]一直到c[5]六个数,所以p-c的值是一直改变的,如果画个图就更好懂了C[0]<==pp向下移动C[1]C[2]C[3]C[4]C[5]//p-c<什么意思啊?p和c都是指针,c就是数组的首地址比如一个数组a[10];那a就是&a[0]&a[1] - &a[0]等于1&a[2] - &a[0]等于2&a[2] - &a[1]等于1以此类推 。。。这不是我的那个代码嘛?指针指向数组了a,b,c是数组的首地址pa-a,pb-b,pc-c就是代表相应的数组pa,pb,pc指针在数组中遍历了元素的个素&a[8]和&a[0]相减这里用的是指针相减,不是地址相减 。&a[8]=a+8 &a[0]=a+0 所以相减结果为8 上面两个人说地址相减是不对的,一个整数的地址一般是2或者4.相减的结果为16或32.不信你把他们的地址都打出来看看就知道了pa是一个指针,而数组名a也是指针,开始把a赋值给pa,pa的地址是a数组的首地址&a[0],if(*pa<*pb)*pc++=*pa++; 该程序采用对指针的操作实现对数据的操作,pa++是将pa指向了&a[1];然后用pa-a实际上就是控制它不能超过数组的范围 。和用一个i控制实质没什么区别 。不过这样倒是可以省去一些空间7,C语言编程 12345678910111213141516171819202122232425262728293031 #include<stdio.h>#include<math.h>intfact(intn) inti,a=1; for(i=2;i<=n;i++) a=a*i; returna;} floatcom(intm,intn) // 注意,这里要用 float intk; floatc; // 注意,这里要用 float m=fact(m); n=fact(n); k=fact(m-n); c=m/(n*k); returnc;} main() intm,n; floatresult; // 注意,这里要用 float printf("请输入两个整数,以空格或者回车分隔:"); // 这里增加为输出 scanf("%d %d",&m,&n); // 只是输入,不要把需要输出的内容放这 result=com(m,n); printf("=%f",result); // 这里输出的格式也同时更改 。} 不知道你要实现的题目意思是什么 。我只是帮你更改了其中的错误 。如果输出的结果不是你想要的,请提供你的题目 。这里面有一个错误,一个常识警告1. scanf()格式化错了应该是scanf("%d %d",&m,&n);注意“%d %d”如果这样格式 那么两个变量之间空格 如果%d,%d 那么两个数间加,总之格式化的时候是什么样,输入就是怎么样 。2. 然后在fact()函数里面 楼主你实现了一个 N的阶乘这个一般测试不会报错,但是要是你弄个9啊 10 11或者更大的数,你自己按按计算机看看 这个结果很大的,超过了int的最大范围了,所以你测试两的数没事,弄个大的数,内存就报错 。这个可以改成 长整型long 或者 floatscanf("C(%d,%d)",&m,&n); 这是什么? 是不是该改成scanf("%d %d",&m,&n);c语言是一种计算机程序设计语言 。它既具有高级语言的特点,又具有汇编语言的特点 。它由美国贝尔研究所的d.m.ritchie于1972年推出 。1978后,c语言已先后被移植到大、中、小及微型机上 。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序 。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到c语言,适于编写系统软件,三维,二维图形和动画 。具体应用比如单片机以及嵌入式系统开发 。编程语言不解释,包涵太多,自己百度 。8,C语言编程INT8U 不是c++的基本数据类型,应当是 unsigned char 类型另定义的一个名称也就是 unsigned char * DBfrunsigned char * SBfrDBfr 本身就可以是一个字串,只不过memcopy 工作过程是报存储区一个字节一个字节的copy,这种工作方式不但可以拷贝字符串也可以拷贝任何连续的区域如果你 SBfr 本身是一字符串数据,那么 DBfr 也是字符串,不需要做任何变换如果源是某数据类型,目标也是相同的如:#include <cstring>#include <iostream>typedef unsigned char INT8U;using namespace std;void memcopy(INT8U *DBfr,INT8U *SBfr,INT8U Len){ INT8U i; for(i=0;i<Len;i++) {DBfr[i] = SBfr[i]; }}int main(){charScBufer[80]="this is string.";charDcBufer[80];memcopy ((INT8U *) DcBufer,(INT8U *) ScBufer,80);cout<<"source string="<<ScBufer<<endl;cout<<"destination string="<<DcBufer<<endl;double SdBufer[20];double DdBufer[20];for(int i=1;i<=20;i++){SdBufer[i]=1.0/((double) i);}memcopy((INT8U * )DdBufer,(INT8U *) SdBufer,sizeof(SdBufer));for(int i=1;i<=20;i++){cout.width(15);cout<<DdBufer[i]<<((i%5 == 0)?"\n":"\t");}cout<<endl;} 在memcopy函数中 i 声明成 INT8U 限制了了该函数最大的工作区为256 字节,超过该长度的空间则不能工作比如有工作区长度 为 300字节 则前 44 个字节被拷贝,后续的空间不会被拷贝如果不注意到这一点,程序可能出现意想不到的错误 。连接字符串函数!strcat(str1,str2).包含在 #include<string.h> 将数字转换为字符串函数9,c语言程序语句 #include #include是固定格式,意思是”包含“,中的stdio.h,这是一个库函数头,用<>括起来,这句意思是把名为stdio.h的头(其实是一个文件)包含到当前的程序中 。在c语言中,有许多函数可以直接拿来用,比如printf函数(输出函数),这些函数被称为库函数,要想调用这些函数,就要给出相应的库函数头,不同的库函数需要给出不同的头,库函数头的含义是”将这些函数的定义包含到程序中去“,因为你的程序中没有这些库函数的定义,所以你想要调用某些库函数,就要给出相应的头,将函数的定义包含到程序中是有编译器完成的 #define cube(x) (x*x*x) 这是c语言中的宏定义,宏分为简单的宏和带参数的宏,宏有什么作用?宏的一般格式是”#define 记号 替换列表“其中# define是“定义”的意思,也算是固定格式吧,记号可以是字母,符号等一切可能出现的东西,比如说#define cube(x) (x*x*x) 中的cube,一般用大写字母(c语言程序员数十年遵循的规范,希望你不要打破哦);"替换列表“可以是表达式,语句等等(比如#define cube(x) (x*x*x) 中的(x*x*x),表示计算x的立方) 。宏的作用是将程序中出现的所有记号用替换列表代替 。比如说#define cube(x) (x*x*x)中,只要程序中出现cube(x),编译器(这个工作是有编译器完成的)就把cube(x) 替换为(x*x*x) 。简单的宏比如#define n 10,在程序中凡是有n的地方都将被替换为10.带参数的宏比如说你的程序中的宏#define cube(x) (x*x*x),cube是记号,括号中的x是参数,就像一个函数,在程序中用的时候,比如出现i=cube(10);那么就将被替换为i=(10*10*10); i的值将被赋予10的立方 。main() 是c语言中的主函数,c语言是由函数组成的,其中主函数(或称main函数)是必须有的,程序执行的时候是由主函数开始执行的,主函数内容要用{}括起来 int n=5; 定义变量n并赋与n值为5. int表示变量n的类型是整型,n=5是将n的值初始化为5(以后换可以改变),后面的分号是必须有的,c语言规定每条语句后都应该以分号结尾 。int s=cube(++n); 定义s为整型并赋予s的值为cube(++n),cube(++n)前面已经说过了,它将被替换为(++n*++n*++n),其中++n是一种算数运算符,就像乘除加减法一样,++n的意义是将n自增1,整个表达式(即++n)不变,这里要分清变量和表达式,比如a+b,变量是a和b,表达式是a+b, 。所以这里s就等于125. printf(“%d”,s); 这是一个输出函数,%d表示s的类型为整形,输出s的值 。#include int main() float sum,x[5]; for(sum=500;sum>1;sum--)float a=sum;for(int d=0;d<5;d++)sum=sum/2+1;x[d]=sum;}if(a==x[0]+x[1]+x[2]+x[3]+x[4])printf("苹果总数为:%f\n",a);printf("每天吃的苹果数为:%f,%f,%f,%f,%f\n",x[0],x[1],x[2],x[3],x[4]);}sum=a; } return 0;} 对计算机解二元以上应用题穷举法通用,不要用人类的思维去思考,不然你只会做这一个题,换一个还是不会、、 额,我觉得应该是float型,如果用int型进行除法运算最后结果会取整,不符合正常的除法运算、、 你最后修改的程序是对的,我2了、、向两位大虾学习了,另外提点自己的想法: sunkaien的程序有点问题,需要进行一些修改:#include int main() int sum,x[5]; for(sum=500;sum>1;sum--)for(int d=0;d<5;d++)x[d]=sum/2+1;sum=sum-x[d];}if(a==x[0]+x[1]+x[2]+x[3]+x[4])printf("苹果总数为:%d\n",a);printf("每天吃的苹果数为:%d,%d,%d,%d,%d\n",x[0],x[1],x[2],x[3],x[4]);}sum=a; } return 0;} 结果发现自31到62都是可行的,如果只考虑严格的一半加一,即每天剩余的桃子必须为偶数个的话,程序应该为以下:#include int main() int Wrong_num,sum,x[5]; for(sum=1000;sum>1;)for(int d=0;d<5;d++)Wrong_num=0;x[d]=sum/2+1;sum=sum-x[d];if(sum%2)Wrong_num=1;break;}}if(Wrong_num==0&&a==x[0]+x[1]+x[2]+x[3]+x[4])printf("苹果总数为:%d\n",a);printf("每天吃的苹果数为:%d,%d,%d,%d,%d\n",x[0],x[1],x[2],x[3],x[4]);}sum=a;sum=sum-2; } return 0;} 答案为62个和mingjin654321 的一样,不过mingjin654321中的eat函数名感觉不恰当,这实际上是求的每天的剩余量,不是每天吃掉的量,从语句printf("第%d天吃%d\n",x+1,sum/2+1)也可以看到这一点,所以个人感觉改下名好理解下,否则像我这样的初学者总觉得怪怪的,呵呵 。#include int Day_num(int x);void main() int x; printf("这堆野果原来共有%d\n",Day_num(0));}int Day_num(int x) if(x==5)elseprintf("第%d天吃%d\n",x+1,sum/2+1);return sum;}}穷举法是好,但是也要考虑效率1楼的递归思想很好,结果也正确#include int eat(int x);void main() int x; printf("这堆野果原来共有%d\n",eat(0));}int eat(int x) if(x==5)elseprintf("第%d天吃%d\n",x+1,sum/2+1);return sum;}}
推荐阅读
- 北京冬奥会手抄报内容,用简洁的语言写出2个北京奥运会的知识
- 2014北京高考语文,郑老师2014年北京高考文科618能去北京语言大学吗
- 汉语国际教育学什么,汉语国际教育专业属于哪个大类是中国语言文学呢还是教育学搜
- 绿色环保文字,绿色环保语言
- 荷兰语言,荷兰的除荷兰语外还有哪些常用语言
- 汉语言本科毕业论文,中文系本科毕业论文中是用我认为还是笔者认为
- 安慰人的句子,需要一些安慰的语言
- 五一快乐祝福语简短,五一节的祝福语言有哪些
- 感恩节感恩语,感恩节要用什么语言来感恩
- 感谢老师对孩子的教育和辛苦的句子,家长多谢老师的语言怎么写