安徽大学2014年c语言平时作业
- 格式:doc
- 大小:473.68 KB
- 文档页数:25
一、改错题1.p=malloc(sizeof(int)*10); q=malloc(sizeof(int)*20);p=q; free(p); free(q);Free(q) 错了,因为p=q后,就指向同一块地址了。
内存泄露(p分配了空间没释放)==============我的一:由于malloc函数返回值为void *,所以还是应该强制转换为(int *),虽然我在运行时没有错,但一般都要指定指针类型。
二:由于p=q,两个指针指向同一个地址,free(p)之后,则该内存空间被释放,则q此时就没有具体指向一个地址,free(q)就会出错。
一般我们常说的内存泄露是指堆内存泄露,堆内存是指程序从对中分配的,大小任意的(内存块的大小可以再程序运行期确定),使用完后必须先释放内存。
2.和去年一样 void swap(char *a,char *b){char *temp; *temp=*a;*a=*b;*b=*temp;}1.函数类型大小写错误。
2. 交换形参指针地址不能修改实参的值。
正确修改法:见下(解释)实参是str1和str2的地址,函数里改变了*p,*q的值,也就是str1和str2中存放的字符串的地址做了改变。
所以str1里存放的str2所指字符串的地址3. for(num=N;arr[num]!=item;num--);printf("%d",num);问异常情况结果可能是输出一个负值,因为item是个变量,分配了存储空间, arr[-2]也是可以输出的,因为arr 只是个地址,经过测试会找到item,printf他的地址=========我的首先如果item在数组中,则不会出错,可以输出所在的位置。
如果不在,则num最后会变为负值,由于C 语言没有自动对数组进行下标检查,则会产生数组下标越界,而且会继续运行,出现死循环。
如果编译器检查,则会产生数组下标越界出错。
二、简答题1. if(b) s1 else s2; 请问是什么结构,并用伪代码写出来(注明条件跳转和强制跳转)选择结构。
C语言《C语言》2014年秋学期在线作业(一)一,单选题1. 已知小写字母的ASCII码为97,对于int a=99, b='b'; printf(“%c,%d”, a , b);的结果是A. 99, bB. c, 98C. 99, 98D. c, b?正确答案:B2. 以下四个选项中,属于实型常量的是A. 0x12B. -12345e-3C. 1e0.5D. e-5?正确答案:B3. 以下选项中,与k=n++完全等价的表达式是A. k=n,n=n+1B. n=n+1,k=nC. k=++nD. k+=n+1?正确答案:A4. 结构化程序设计方法中有三种基本控制结构,以下不正确的是A. 顺序结构B. 选择结构C. 循环结构D. 数组结构?正确答案:D5. 有如下程序:main(){int x=1,a=0,b=0;switch(x){case 0:b++;case 1:a++;case 2:a++;b++;}printf(“a=%d,b=%d\n”,a,b);}该程序的输出结果是A. a=2 b=1B. a=1 b=1C. a=1 b=0D. a=2 b=2?正确答案:A6. 在C语言中,字符型数据在内存中的存储形式是A. 原码B. 补码C. 反码D. ASCII码?正确答案:D7. 若有定义:“int a=8,b=5,c;”,执行语句“c=a/b+0.4”后,c的值为A. 1.4B. 1C. 2.0D. 2?正确答案:B8. 已知 char ch='A'; 且表达式 ch=(ch>='A' && ch<='Z') ?(ch+32) :ch 的值是A. AB. aC. ZD. 出错?正确答案:B9. 下述语句的输出为int m=-1;printf(“%d,%u,%o”,m,m,m);A. -1,-1,-11B. -1,32767,-177777C. -1,32768,177777D. -1,65535,177777?正确答案:D10. 已有定义:int x=3,y=4,z=5;则表达式!(x+y)+z-1&&y+z/2的值是A. 6B. 0C. 2D. 1?正确答案:D11. 能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是A. a>=10 or a<=0B. a>=10 || a<=0C. a>=10 && a<=0D. a>=10 | a<=0?正确答案:B12. 以下程序的输出结果是main(){int a=5,b=4,c=6,d;printf(“%d\n”,d=a>b?(a>c?a:c):(b));}A. 5B. 4C. 6D. 不确定?正确答案:C13. 执行int j,i=1; j=-i++; 后j的值是A. -1B. -2C. 1D. 2?正确答案:A14. 以下四个选项中不能看作一条语句的是A. {;}B. a=0,b=0,c=0;C. if(a>0)D. if(b==0)m=1;n=2;?正确答案:D15. 设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值是A. 7B. 8C. 9D. 10?正确答案:C16. C语言提供的合法关键字是A. swicthB. chaC. CaseD. default?正确答案:D17. 设有语句:int x=10; x += x -= x - x;,则执行语句后,x的值为A. 30B. 20C. 10D. 40?正确答案:B18. 假定x和y为double型,则表达式x=2,y=x+3/2的值是A. 3.500000B. 3C. 2.000000D. 3.000000?正确答案:D19. 以下选项中合法的用户标识是A. longB. _2TestC. 3DmaxD. A.dat?正确答案:B20. 设有变量int x=0,y=1,z=1,则运行表达式:x=y++>z--后,x,y,z的值分别是A. 1,1,1B. 1,2,0C. 0,1,1D. 0,2,0?正确答案:D============================================================================================================================================。
安徽大学c语言考试题及答案安徽大学C语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的叙述,错误的是()。
A. 变量必须先定义后使用B. 变量的值在定义时可以不初始化C. 变量的类型必须一致D. 变量可以在定义时初始化2. C语言中,字符串常量存储在()。
A. 栈区B. 堆区C. 数据区D. 文字常量区3. 在C语言中,以下哪个关键字用于定义指针类型?()A. charB. intC. floatD. ptr4. 下面哪个函数不是C标准库函数?()A. printf()B. scanf()C. malloc()D. strcpy()5. C语言中,sizeof运算符的作用是()。
A. 返回变量的值B. 返回变量的地址C. 返回变量的数据类型D. 返回变量占用的字节大小6. 在C语言中,以下哪个不是合法的用户定义标识符?()A. _2startB. classC. floatD. int_var7. C语言中,函数的返回值类型必须与函数定义中的类型一致,这是指()。
A. 函数名B. 返回值C. 函数体D. 函数的参数8. 下列关于C语言数组的描述,错误的是()。
A. 数组名代表数组的起始地址B. 数组元素的下标从0开始C. 数组在内存中是连续存储的D. 数组一旦定义,其长度不能改变9. C语言中,结构体定义的关键字是()。
A. structB. unionC. enumD. type10. 在C语言中,若想从键盘输入一个字符,可以使用()函数。
A. getchar()B. scanf("%c", &c)C. printf("%c")D. puts("Enter a character: ")二、填空题(每空3分,共30分)11. 在C语言中,一个整型变量int所占用的字节数是_________。
12. 函数_________可以用来计算两个浮点数之间的绝对值差。
2014年9月份考试C++程序设计语言第一次作业一、单项选择题(本大题共90分,共 30 小题,每小题 3 分)1. 下列各种函数中,不属于类成员函数的是()。
A. 构造函数B. 拷贝构造函数C. 友元函数D. 析构函数2. 下列关于函数的说法中,不正确的是()。
A. 在不同函数中可以使用相同的名字命名变量B. 形式参数是局部变量C. 在函数内部定义变量的作用域在本函数中D. 在一个函数内的复合语句中定义变量的作用域也是整个函数3. 对于结构中定义的成员,其隐含访问权限为()。
A. publicB. protectedC. privateD. static4. 一个类的友元函数能够访问该类的()。
A. 私有成员B. 公有成员C. 保护成员D. 所有成员5. 在ios中提供的格式控制标志位中,表示转换为16进制形式的标志位是()。
A. OctB. DecC. LeftD. hex6. 在C++中使用3个保留字实现异常处理,它们是:try、catch和()。
A. ifB. throwC. whileD. return7. 下列字符序列不能用作标识符的是()。
A. 12class B. name1 C. hello _y D. HoUse8. 说明模板参数的关键字为()。
A. InlineB. TemplateC. FriendD. define9. 在C++中,运行时多态性通过使用()来实现。
A. 构造函数B. 析构函数C. 虚函数D. 重载函数10. C++的注释一般有两种,即一种是用“/*注释*/”可以表示多行注释,另一种是用()。
A. “\\注释”表示单行注释B. “\\注释”表示多行注释C. “//注释”表示单行注释D. “//注释”表示多行注释11. 在C++循环结构while(!e);中,作为条件使用的表达式!e等价于()。
A. e==0B. e!=1C. e!=0D. e==112. C++中,关键字struct和class的区别仅仅在于()。
填空题题目105套总目录以下目录105套和正文的题目是相对应的,为方便找题,可以先从目录中找到题目所在第几套,再从第二页开始找到对应的那套即可。
第01套:int fun(___1___ *std)第02套:void WriteText(FILE ___1___)第03套:fprintf(___1___,"%d %f\n",第04套if((fs=fopen(source,___1___))==第05套: s->data=___1___;q=___2___;第06套:t=t->___1___;第07套:free(___1___);第08套: while(p!=___1___)第09套 ___1___=0;p=p->___2___;第10套:s+= p->___1___;第11套:___1___ fun(STU *std,char *num)第12套: if(___1___==year)第13套:void modify(___1___ *ss,float第14套:void fun(PERSON ___1___)第15套: max= ___1___;第16套:void show(STU ___1___)第17套:for(j=___1___;j<M;j++)第18套: n=len;___1___=i;第19套: n=strlen(___1___);第20套:int fun(char (*ss) ___1___,int *n)第21套:for(i=0; i<___1___; i++)if(len ___2___ *n)第22套: t2[j]=s[i];___1___;第23套:if(s[i]>='0' ___1___ s[i]<='9')第24套:for(i=0;___1___ !=0;i++)第25套:if(n%2==0) k=n-___1___ ;第26套: ___1___; for(j=___2___+2 ;第27套:for(i=0;s[i]!=___1___ ;i++)第28套:for(i=0;i<N;___1___)第29套: for(i=0;i<___1___;i++)x=t[i][___2___] ;第30套:t[0][N-j-1]=t[j][___1___ ];第31套:void fun(int (*t)___1___)第32套:void fun(int ___1___ ,int n)第33套:___1___;sum+=___2___ ;第34套:if (a[i]%2==___1___)第35套: if (___1___== 0) {第36套:max = min = ___1___;第37套:void fun(int ___1___,int n)第38套: p = (n%2==0)?n/2:n/2+___1___;第39套:for (i=0;i<___1___;i++)第40套:___1___ fun(char ch)第41套: if ((ch>='a')___1___(ch<='z'))第42套: f = ___1___;t *= (___2___)*x/i;第43套:t = ___1___;t *= (-1.0)*x/___2___;第44套:t = ___1___;for (i=___2___;i<n;i++)第45套:f = 1.0+___1___;t *= x/___2___;第46套:for (___1___;j<i;j++)第47套: switch(___1___)第48套:for (j=a[i]*2;j<=n;j+=___1___)第49套:#define OK(i,t,n) ((___1___%t==0) && (i/t<n))第50套: t = (a>b) ? (b>c? b :(a>c?c:___1___))第51套: n=__1__; while(t<=__2__)第52套: while(t<=__1__){第53套: i=__1__; while(__2__)第54套:if(t%2==__1__) x=__2__+t;第55套:{t=*n % __1__; if(t%2!= __2__)第56套: s=__1__;第57套: k=__1__;t=__2__;第58套: x=__1__/4;while(x __2__ e)第59套: s=0;i=__1__; __2__;第60套: t[j]=__1__;j++;}第61套: p[__1__]=s[i];j++;}第62套: av=__1__;av = av + __2__;第63套:__1__=s/N;第64套:av=__1__; y[__2__]=x[i];第65套:for(i=0; i<N; i++) av+=__1__;第66套:d=d*10+*s-__1__;第67套:while (n<__1__)if(x==a[i]) __2__;第68套:b[i]= __1__;if(b[i] __2__ a[j][i])第69套:void fun(int (*a)__1__)第70套:row=colum= __1__;第71套:void fun(int (*a)[N], int __1__)第72套:for(p=1; p<= __1__; p++)第73套:rmax=a[i][j]; c= __1__ ;}find= __2__ ;__3__ ;第74套:if(n>=len) strcpy(__1__);第75套:lp= __1__ ;lp++; rp __2__ ;}第76套:__1__ ; flag=1;}第77套:*(t+n)= __1__ ;n++;}__2__ ;第78套:if(isdigit(*s)) sum+= *s- __1__ ;第79套:ch=tolower(__1__);第80套:k= __1__ ;if(strlen(ps[k]) <strlen(__2__))第81套:for(i=0; i<__1__ ; i++)if(strcmp(ss[i],t)==0) return __2__;第82套:for(i=0; i<__1__ ; i++)if(len<= __2__)第83套:for(i=0; i<__1__ ; i++)if(strstr(ss[i], __2__) != NULL)第84套:void fun(char (*ss) __1__, int k第85套:b = __1__;strcpy(__2__, "LiSi");第86套:b__1__ = 10004;strcpy(b__2__, "LiJie");第87套:__1__ fun(struct student a)strcpy(__2__, "LiSi");第88套:__1__ fun(struct student *a)for (i=0; i<3; i++) __2__ += 1;第89套: __1__ t;for (i=0; i<__2__; i++)第90套:while (!feof(__1__))if (n.sno__2__sno) break;第91套:__1__ (*f)(); f = __2__ ;第92套:p = __1__ ;q = __2__ ;第93套:__1__ fun(NODE *h)r = q->__2__;第94套:p = h->__1__;if (p==__2__) return;第95套:q = __1__ ;while (__2__) p = __3__ ;第96套:__1__ fun(int i, double x, double y)第97套:__1__ fp;while (!feof(__2__)) {第98套:__1__ fp;__2__ ;第99套:fp = fopen(filename, __1__);第100套:fp = fopen(__1__, "rb+");第101套:t=b[i]; b[i]=___1___;第102套:if(___1___==0 )printf("___2___");第103套:pa->next=___1___;printf(" %c",____2_____);第104套:a[i]=___1___; ___2___=1;i=___3___;第105套:__1__ = 0; i = ___2___;备注:预计此次出题概率较大的集中在第1套至第20套,第41套至第60套,第96套至第105套。
2014年C语言答案(伊诺版)好吧,我又来了= =。
本来想着14年网上是有答案就不传上来了,但发现有几题差异较大,传上来供大家参考参考,题源为《2014计算机C语言笔试题目(回忆版by松)》。
欢迎大家指出错误!——伊诺2015年3月16日一、指出程序中的错误,说明原因并修正。
1、Int *p,*q;p=malloc(sizeof(int)*20);q=malloc(sizeof(int)*10);…q=p;…free(p);free(q);答:由于free(p);已经将p所指内存区域释放掉,又q和p都指向同个内存区域,之后free(q);试图释放一个已经被释放的内存区域,会使程序崩溃。
此外原来q指向的内存区域由于指针丢失,会导致内存泄露。
修正方法:删除语句q=p;2、交换两个字符串Void swap(char *p, char *q){Char *temp;*temp=*p;*p=*q;*q=*temp;}答:*temp、*p、*q都是指向的一个字符,所以该函数只实现了交换两个字符串的首字符而已。
修正:void swap(char *p, char *q){char temp[100];strcpy(temp, p);strcpy(p, q);strcpy(q, temp);}此外:由于题目要求的是字符数组,如果是字符串,可以用以下解法:void swap(char **p, char **q){char *temp;temp=*p;*p=*q;*q=temp;int main(){char *a="123";char *b="456";swap(&a, &b);printf("%s\n%s\n", a, b);return 0;}二、简答题1、arr为整型数组,N为数组长度-1,enumb为整型变量,下列函数负责找出arr数组中等于enumb的元素所在位置。
1、输入一行字符,遇回车结束,分别统计出其中字母、数字和其他字符的个数。
(注意:最后的回车符不计入统计!)#include <stdio.h>main(){ int count1=0,count2=0,count3=0;char ch;do{ ch=getchar(); /*或者:scanf("%c",&ch); */if (ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')count1++;else if (ch>='0'&&ch<='9')count2++;else count3++;}while (ch!='\n');count3=count3-1;printf("\n字母数为:%d\n数字数为:%d\n其他字符数为:%d\n",count1,count2,count3);}或者:#include <stdio.h>main(){ int count1=0,count2=0,count3=0;char ch;ch=getchar(); /*或者:scanf("%c",&ch); */while (ch!='\n'){if (ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')count1++;else if (ch>='0'&&ch<='9')count2++;else count3++;ch=getchar(); /*或者:scanf("%c",&ch); */}printf("\n字母数为:%d\n数字数为:%d\n其他字符数为:%d\n",count1,count2,count3); }2、某商品一年中每月的销售额分别为:12,34,28,68,45,79,9,56,20,38,15,40(单位为万元),请输出一年的平均销售额,并输出销售额大于或等于平均销售额的月份。
2014年安徽大学F27计算机专业综合计算机专业综合((C 程序设计程序设计、、数据库原理原理))考研复试试题考研复试试题((回忆版回忆版))一、 选择题选择题((15分)考了数据库和C 语言的基本题。
二、 判断题一共有5道题道题,,每题两分每题两分。
三、 C 语言的程序阅读题语言的程序阅读题 1、设计了静态局部变量,2、把五个字符串放入数组通过,设计字符串长度的比较和复制,然后再输出此时的数组中的字符串3、4、四、 数据库题数据库题::涉及SQL 语句的查询和用SQL 语句修改数据,用SQL 语句筛选出选了四门课程学生的总分然后再按降序排列,设计索引聚簇。
五、 数据库的函数依赖问题数据库的函数依赖问题 1、给出一个关系模式,然后写出该关系模式其中含有的哪些函数依赖 2、3、写出该关系模式达到了第几范式,范式有1NF,2NF,3NF,BCNF,4NF,然后说明下为啥是那个范式。
4、第三题某单位有很多商场,画出他的E-R 图,写出他的关系模式并且指出该关系模式中的主码和次码。
六、 C 语言编程题语言编程题 1、写出201-300之间的素数然后输出来。
2、给定好了一个数组并且已排好顺序。
现在往该数组内插入一个数,并且顺序还是以前的那个,然后输出来。
上机考试上机考试: 1、请输入K 个整数,然后请输出第m 个最大值和第n 个最小值。
2、请输入M*N 阶矩阵,然后输出该矩阵中不同的数。
列如:题目给的例子是一个3*4的矩阵,大致是这个矩阵:20 60 80 40 40 50 80 10 60 15 35 20 80 6020 30,输出后的数为:10 15 20 30 35 40 50 60 80.。
2014年9月二级C语言程序设计模拟(7)试题及答案单项选择题1.下面关于算法的叙述中,正确的是( )。
A:算法的执行效率与数据的存储结构无关B:算法的有穷性是指算法必须能在执行有限个步骤之后终止C:算法的空间复杂度是指算法程序中指令(或语句)的条数D:以上三种描述都正确参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。
算法的有穷性是指一个算法必须在执行有限的步骤以后结束。
2.下列二叉树描述中,正确的是( )。
A:任何一棵二叉树必须有一个度为2的结点B:二叉树的度可以小于2C:非空二叉树有0个或1个根结点D:至少有2个根结点参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 二叉树是由n≥0个结点的有限集合构成,此集合或者为空集,或者由一个根结点及两棵互不相交的左右子树组成,并且左右子树都是二叉树。
二叉树可以是空集合,根可以有空的左子树或空的右子树。
二叉树不是树的特殊情况,它们是两个概念。
二叉树具有如下两个特点:①非空二叉树只有一个根结点。
②每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
3.如果进栈序列为A,B,C,D,则可能的出栈序列是( )。
A: C,A,D,BB: B,D,C,AC: C,D,A,BD:任意顺序参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 栈的操作原则为后进先出。
选项B)中出栈顺序可按“A进,B进,B出,C进,D进,D出,C出,A出”实现。
4.下列各选项中,不属于序言性注释的是( )。
A:程序标题B:程序设计者C:主要算法D:数据状态参考答案: D 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 注释一般为序言性注释和功能性注释。
序言性注释常位于程序开头部分,它包括程序标题、程序功能说明、主要算法、接口说明、程序位置、开发简历、程序设计者、复审者、复审日期及修改日期等。
2014年9月份考试C++程序设计语言第二次作业一、单项选择题(本大题共40分,共 20 小题,每小题 2 分)1. 与下面代码段执行效果等价的是()。
while(i<10 && j>1){fun(i,j);i++;j -= 2;}A.if(i < 10 && j > 1)do{fun(i,j);i++;j -= 2}while (i < 10 && j > 1);B.while (1){fun(i,j);i++;j -= 2;}do (i < 10 && j >1);C. while (!( i >= 10 | j <= 1){fun(i,j);i++;j -= 2;}D.for ( ! (( i >= 10) && ( j <= 1));i++, j-=2;{fun(i,j);}2. 如果有宏定义:#define AREA(a,b) a+b,则语句ints=AREA(3,4)*AREA(3,4)执行后变量s值为()。
A. 24B. 49C. 144D. 193. 在基类指针和派生类指针的使用中,正确的是()。
A. 基类指针可以指向派生类对象B. 派生类指针可以指向基类对象C. 基类指针可以直接赋值给派生类指针D. 派生类指针可以直接赋值给基类指针4. 在类模板定义:template class X{……};中,若要求在类中定义的友元函数fun成为从该类模板实例化生成的每一个模板类的友元,则友元函数fun的说明应为()。
A. friend void fun();B. friend void fun(X&);C. friend void A::fun();D. friend void C::fun(X&);5. 下列函数中能够实现将一个字符写入文件的是()。
2014年9月二级C语言程序设计模拟(8)试题及答案单项选择题1.下列关于栈和队列的描述中,正确的是( )。
A:栈是先进先出B:队列是先进后出C:队列允许在队头删除元素D:栈在栈顶删除元素参考答案: D 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 栈实际也是线性表,只不过是一种特殊的线性表。
栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。
队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。
2.已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是( )。
A: ABCDEB: ECABDC: EACDBD: CDEAB参考答案: C 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 由于后序遍历的最后一个元素为E,所以E为根结点,所以它的前序遍历的首个元素为E,故排除A)和D)选项。
由于中序遍历中,元素B在元素根结点E的后面,所以B为二叉树的右子树,并且该二叉树右子树只有一个元素,所以前序遍历的最后一个元素应为B,故选项C)为正确选项,即该二叉树的前序遍历序列是EACDB。
3.在数据流图中,带有箭头的线段表示的是( )。
A:控制流B:数据流C:模块调用D:事件驱动详细解答: 数据流图中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。
4.结构化程序设计的3种结构是( )。
A:顺序结构,分支结构,跳转结构B:顺序结构,选择结构,循环结构C:分支结构,选择结构,循环结构D:分支结构,跳转结构,循环结构参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。
遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护;可以提高编程工作的效率,降低软件的开发成本。
安徽大学2014—2015学年第 2 学期期中 《C 语言程序设计》考试试卷 (闭卷 时间120分钟) 一、单项选择题(每小题2分,共20分): 下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确 选项填在答题卡相应题目的横线上。
答在试卷上不得分。
1. 设a 、b 、c 为整型变量,能正确表达数学关系“a<b<c ”的表达式是【______】。
A. a<b<c B. a<b,b<c; C. a<b&&b<c; D.!(a>b)&&!(b>c); 2. 下列字符串中属于C 语言字符常量的是【_______】。
A. …abc‟ B. “a” C. …\n‟ D. …a \0‟ 3. 设实型变量x 的值是10.0,则表达式“!!!x ”的值是【______】。
A. 10.0 B.13.0 C.1 D. 0 4. Int a,b,c; a=b=c=0; 执行下列语句后c 等于【_______】。
If (a=b) c++; else c=!c; A. 0 B. -1 C. 1 D. 不确定 5. 以下能正确求1+2+...+100 的程序段是【_______】。
A )int i=1, sum=0; B )int i=1, sum=0; do do sum+=++i; sum+=++i; while( i<100 ); while( i<=100 ); C )int i=1, sum=0; D )int i=1, sum=0; do do sum+=i++; sum+=i++; while( i<100 ); while( i<=100 );6. 下面程序的功能是计算10!,需要补充的语句是【_______】。
院/系 年级 专业姓名学号 答 题 勿超 装 订 线 ------------------------------装---------------------------------------------订----------------------------------------线----------------------------------------int i, sum;__________for (i=1; i<=10;i++)sum*=i;A. sum=0B. sum=1C. sum=0;D. sum=1;7. 下面程序的输出是【_______】。
C语言程序设计上机安排实验一上机操作初步(2学时)一、实验方式: 一人一机二、实验目的:1.熟悉VC++语言的上机环境及上机操作过程。
2.了解如何编辑、编译、连接和运行一个C程序。
3.初步了解C程序的特点。
三、实验内容:说明:前三题为必做题目, 后两题为选做题目。
1、输出入下信息: (实验指导书P3)*************************Very Good*************************2.计算两个整数的和与积。
(实验指导书P4)——参照实验练习23.从键盘输入一个角度的弧度值x, 计算该角度的余弦值, 将计算结果输出到屏幕。
(书P4)4、在屏幕上显示一个文字菜单模样的图案: 参照实验1=================================1 输入数据2 修改数据3 查询数据4 打印数据=================================5.从键盘上输入两个整数, 交换这两个整数。
提示:一瓶可口可乐, 一瓶水, 如何交换?四、实验步骤与过程:五、实验调试记录:六、参考答案: (省略)实验二 简单的C 程序设计(4学时)一、实验方式: 一人一机二、实验目的:1.掌握C 语言的数据类型。
2.学会使用C 语言的运算符及表达式。
3.掌握不同数据类型的输入输出方法。
三、实验内容:说明: 前四题为必做题目, 后两题为选做题目。
1.输入r1.r2, 求出圆形垫片面积。
(实验指导书P10)2.输入华氏温度h, 输出摄氏温度c 。
(实验指导书P11)3、从键盘输入一个3位整数, 将输出该数的逆序数。
(实验指导书P14)4、输入并运行以下程序, 分析运行结果。
#include <stdio.h>void main( ){ int i,j;i=8; j=10;printf(“%d,%d\n ”,++i,++j);i=8; j=10;printf(“%d,%d\n ”,i++,j++);i=8; j=10;printf(“%d,%d\n ”,++i,i);i=8; j=10;printf(“%d,%d\n ”,i++,i);}5.输入三角形三条边的边长, 求三角形的面积。
2014计算机二级c语言试题及答案一、选择题1. 在C语言中,下列哪个选项是合法的标识符?A. 2variableB. intC. _123D. variable_2答案:D2. 下列关于C语言中数组的描述,错误的是?A. 数组可以存储多个相同类型的元素B. 数组的大小在编译时确定C. 数组的索引从0开始D. 数组可以动态分配大小答案:D3. 在C语言中,下列哪个关键字用于定义函数?A. intB. structC. voidD. return答案:C4. 下列关于指针的描述,正确的是?A. 指针可以存储变量的地址B. 指针可以存储变量的值C. 指针可以存储函数的地址D. 所有选项都是正确的答案:D二、填空题1. 在C语言中,用于定义一个整型变量的关键字是____。
答案:int2. 若有数组定义:int arr[5] = {1, 2, 3, 4, 5}; 则arr[2]的值是____。
答案:33. 在C语言中,用于声明一个指针变量的语法是____。
答案:类型名 *指针变量名4. 若定义了一个函数void func(void),那么调用该函数时,应该使用的语法是____。
答案:func()三、编程题1. 编写一个C语言程序,实现输入一个整数,输出其绝对值。
```c#include <stdio.h>#include <stdlib.h>int main() {int num, abs_num;printf("请输入一个整数:");scanf("%d", &num);abs_num = (num < 0) ? -num : num;printf("该整数的绝对值是:%d\n", abs_num);return 0;}```2. 编写一个C语言函数,实现两个整数的交换。
```c#include <stdio.h>void swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}int main() {int x = 10, y = 20;printf("交换前:x = %d, y = %d\n", x, y); swap(&x, &y);printf("交换后:x = %d, y = %d\n", x, y); return 0;}```。
一、不定项选择题1.ABD2.AD3. D4. B5.ABC6.ABC7. A8. B9.AB10.AD二、填空1. 22.563. x<=y&&y<=z4. how’are’you5. 321三1、num1=2,num2=14,1num3=14,str2_len=7三2、查找删除双向链表中data值小于100 的节点三3.水仙花数#include <stdio.h>int main(){int i,j,k,n;for(n=100;n<1000;n++){i=n/100; //百位数j=n/10%10;//十位数k=n%10;//个位数if(n==i*i*i+j*j*j+k*k*k){printf("%d%d%d ",i,j,k);}}}四、文件编程类将mydoc.txt中包含“teacher”或者“student”关键词的段落单独摘录保存到edu.txt.#include <stdio.h>#include <string.h>char CMP[99],A[9999];char CMP1[] = "teacher",CMP2[]="student";int next_word(int i){int p=i;while(A[p]>='A')p++;while(A[p]==32)p++;if(A[p]==0)return 0;return p;}//该函数调用一个下标为参数,返回紧跟其后的下一个单词开头的下标,如果该单词为字符串最后一个单词,返回0int cmp(int i){int p=i,q=0;memset(CMP,0,sizeof(CMP));while(A[p]>=65)CMP[q++]=A[p++];if(strcmp(CMP,CMP1)!=0&&strcmp(CMP,CMP2)!=0)return 0;return 1;}//该函数调用一个下标为参数,若以该下标为开始的单词与teacher或student相等,则返回1,若都不相同返回0int main(){FILE* fin = fopen("D:\\mydoc.txt","r");FILE* fot = fopen("D:\\edu.txt","w");while(fscanf(fin,"%[^\n]",&A)!=EOF)//%[^\n]为读入以换行符为结尾的一个字符串,当读到文件结束时停止循环{int x=0,y=0;//x为目前的下标位置,y为是否含有单词do{if(cmp(x)){y=1;break;}x=next_word(x);//若不能匹配,则进入下一个单词}while(x);if(y)fputs(A,fot);//如果匹配,输出字符串}fclose(fin);fclose(fot);return 0;}Web技术部分一、单项选择题CDACADBAAD二、简答题1.Ajax是什么?它与传统的Web应用比较有哪些优势Ajax是异步Javascript和XML(Asynchronous Javascript and XML)的英文缩写。
作业一 C语言基本概念 选择:17题
能将高级语言编写的源程序转换成目标程序的是______。 A) 编辑程序 B) 编译程序 C) 解释程序 D) 链接程序
您的答案为:B 参考答案为:B
以下选项中合法的用户标识符是______。 A) long B) _2Test C) 3Dmax D) A.dat
您的答案为:B 参考答案为:B
以下叙述正确的是 A) 可以把define和if定义为用户标识符 B) 可以把define定义为用户标识符,但不能把if定义为用户标识符 C) 可以把if定义为用户标识符,但不能把define定义为用户标识符 D) define和if都不能定义为用户标识符
您的答案为:B 参考答案为:B
以下叙述正确的是 A) C语言比其他语言高级 B) C语言可以不用编译就能被计算机识别执行 C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D) C语言出现的最晚、具有其他语言的一切优点
您的答案为:C 参考答案为:C
在一个C语言程序中 A) main函数必须出现在所有函数之前 B) main函数必须出现在所有函数之后 C) main函数可以在任何地方出现 D) main函数必须出现在固定位置
您的答案为:C 参考答案为:C
一个C语言程序是由_______组成的。 A) 一个主程序和若干子程序 B) 若干子程序 C) 函数 D) 若干过程
您的答案为:C 参考答案为:C
以下叙述中正确的是() A) C语言的源程序不必通过编译就可以直接运行 B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令 C) C源程序经编译形成的二进制代码可以直接运行 D) C语言中的函数不可以单独进行编译
您的答案为:B 参考答案为:B
下列关于C语言用户标识符的叙述中正确的是 A) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头 B) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头 C) 用户标识符中不可以出现中划线,但可以出现下划线 D) 用户标识符中可以出现下划线和中划线(减号)
您的答案为:C 参考答案为:C
以下说法中正确的是 A)C语言程序总是从第一个定义的函数开始执行 B)C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分
您的答案为:C 参考答案为:C
默认情况下,一个C程序的执行是从 A)本程序的main函数开始,到main函数结束 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束
您的答案为:A 参考答案为:A
C语言编程整个操作的过程是 A)编辑、编译、链接、执行 B)编译、编辑、链接、执行 C)链接、编译、编辑、执行 D)编辑、链接、编译、执行
您的答案为:A 参考答案为:A
下列说法不正确的是 A)链接操作将生成扩展名为.lnk的文件 B)编辑过程将生成扩展名为.cpp或.c的文件 C)编译过程将生成扩展名为.obj的文件 C)C编程最终要生成扩展名为.exe的文件
您的答案为:A 参考答案为:A
C语言提供了丰富的结构化语句,直接支持____、_____和_______三种基本程序结构。 A)顺序、分支、过程 B)顺序、分支、循环 C)分支、过程、循环 D)顺序、过程、循环
您的答案为:B 参考答案为:B
下列说法正确的是 A)C语言版本众多,但这些版本大多不能兼容 B)C语言只能在固定的操作系统上运行。 C)C语言不包含依赖硬件的输入/输出语句,其输入/输出功能语句需要手工来编写。 D)C语言允许对位、字节、地址这些计算机功能中的基本成分进行操作。
您的答案为:D 参考答案为:D
当用户用编辑器将C语言程序录入到计算机后,就建立一个源文件,则 A)源文件可以直接被计算机执行 B)源文件需要编译后就可执行 C)源文件经过编译链接后生成的可执行程序和源程序是独立的 D)错误调试一般在执行过程进行
您的答案为:C 参考答案为:C
下列说法中正确的是( ) A.由于C源程序是高级语言程序,因此一定要在VC++软件中输入 B.由于C源程序是字符组成,因此可以作为文本文件在任何文本编辑的软件中输入 C.由于C程序是高级语言程序,因此输入后即可执行 D.由于C程序是高级语言程序,因此它由命令组成
您的答案为:B 参考答案为:B
下列说法中错误的是( ) A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其它函数 C. 任何非主函数可以调用其它任何非主函数 D. 程序可以从任何非主函数开始执行 您的答案为:D 参考答案为:D
作业二 C基本数据类型及运算 选择:21题
下列不正确的C语言用户标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 您的答案为:A 参考答案为:A
下列正确的C语言标识符是____。 A) #define B) _123 C) %d D) \n 您的答案为:B 参考答案为:B
下列四组字符串中都可以用作C语言程序标识符的一组是____ 。 A) print __123 Pxq str_l B) _3d one_half My->book Cpp C) oodb start$it line# pow D) aBc 3pai His.age while
您的答案为:A 参考答案为:A
下面各选项组中,均是C语言关键字的组是____ 。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type
您的答案为:B 参考答案为:B
下列不属于C语言关键字的是____ 。 A) default B) register C) enum D) external 您的答案为:D 参考答案为:D
执行语句 printf("%x",-1);屏幕显示____。 A) -1 B) 1 C) -ffff D) ffffffff 您的答案为:D 参考答案为:D
已知 int a=2,b=1,c;执行语句c=b/a+2.5后, c的值____。 A) 2.5 B) 3 C) 3.0 D) 2 您的答案为:D 参考答案为:D
有关变量已经定义,以下合法的数值表达式是____。 A) a=1/b=2 B) ++(a+b) C) b=b/(a=6) D) c=int(a)+b 您的答案为:C 参考答案为:C
将字符g赋给字符变量c,正确的表达式是____ 。 A) c=\147 B) c="\147" C) c='\147' D) c='0147' 您的答案为:C 参考答案为:C
下列转义字符中错误的一个是____。 A) '\000' B) '\014' C) '\x111' D) '\2' 您的答案为:C 参考答案为:C
将空格符赋给字符变量c,正确的赋值语句是____。 A) c='\0' B) c=NULL C) c=0 D) c=32 您的答案为:D 参考答案为:D
已知:char a='\70';则变量a中 。 A)包含1个字符 B)包含2个字符 C)包含3个字符 D)说明非法
您的答案为:A 参考答案为:A
字符串"\"EOF\n=-\61\""的长度是____。 A) 8 B) 9 C) 14 D) 非法字符串 您的答案为:B 参考答案为:B
字符串""的长度是____。 A) 0 B) 1 C) 2 D) 非法字符串 您的答案为:A 参考答案为:A
已知:char a;int b;float c;double d;执行语句"c=a+b+c+d;"后,变量c的数据类型是 。 A) int B) char C) float D) double 您的答案为:C 参考答案为:C
逗号表达式"(a=3*5,a*4),a+15"的值是____。 A) 15 B) 60 C) 30 D) 不确定 您的答案为:C 参考答案为:C
如果int a=1,b=2,c=3,d=4;则条件表达式a A) 1 B) 2 C) 3 D) 4 您的答案为:A 参考答案为:A
已知int i=10;表达式"20-5<=i<=9"的值是____。 A) 0 B) 1 C) 19 D) 20 您的答案为:B 参考答案为:B
已知int x=1,y;执行下述语句后变量x的值是____。 y=++x>5&&++x<10;
A) 1 B) 2 C) 3 D) 4 您的答案为:B 参考答案为:B
为判断字符变量c的值不是数字也不是字母时,应采用下述表达式____。