西南大学C语言程序设计机考大作业答案_第1页
西南大学C语言程序设计机考大作业答案_第2页
西南大学C语言程序设计机考大作业答案_第3页
西南大学C语言程序设计机考大作业答案_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、西南大学网络与继续教育学院课程考试试题卷类别: 网教 2019年 6月课程名称【编号】: C语言程序设计 【0039】 A卷大作业 满分:100 分 一、大作业题目1.简述题(共30分)(1)“构建程序设计的思想和方法、提升阅读程序能力和编写程序能力”是C语言程序设计的课程学习目标。请简要说明你在C语言程序设计学习过程中学习了哪些内容?通过C语言的学习,你有哪些收获和体会?要求:回答问题真实真情表达(10分)(2) 采用C语言编写程序的基本步骤有哪些?在VC6.0或DEVc+环境下,若要调试一个c语言程序,其基本过程是什么?调试程序过程中常见的错误有哪些?简述程序设计语言与程序的区别与联系(1

2、0分)(3)在C语言为什么规定对所有用到的变量要"先定义,后使用”?这样的做有什么好处?请给出C语言的主要数据类型,请你给出至少2种以上的数据类型实例。(10分)2.编程题(1) 编程计算sum=1+2+3+n的值。从键盘输入n的值。(2)编写一个程序从键盘输入一串字符串,统计该字符串中的数字字符和字母字符,然后输出。(3) 编写一个函数fun求出分数序列的前n项之和,再写一主函数测试其功能。(4)编写一个程序,计算分段函数的值。要求有输入输出提示,计算结果精度为2位。 f(x,y)= (5)编一程序找出所有三位数的"水仙花数”并在屏幕上输出。其中"水仙花数”是指

3、一个三位数,其各位数字立方和等于该数本身。例如:153是一"水仙花数”,因为153=13+53+33。(6)从键盘输入20正的整数,找出其中的素数并按降序排列这些素数并输出。要求:(a)编写一个函数int prime(int n)判断n是否是素数。(b)除prime函数外,其余功能在主函数内完成。(c)程序必须有输入输出提示。3. 依据下列提供的程序回答问题#include <stdio.h>int fun(int m, int n) int r; while(r=m%n) m=n; n=r; return(n);int main() int m, n,k; printf

4、("请输入两个正整数:n "); scanf("%d,%d",&m,&n); printf("num1= %d,num2= %dn",m,n); k=fun(m,n); printf("The answer is %dn",k);(1)上述提供程序中,函数fun的功能是什么? (2)请依据提供的函数fun代码画出其中的传统流程图或N-S图。(3)在VC6.0或DEV环境下,运行上述程序时,若输入的数据序列为24,64其输出结果是什么?二、大作业要求大作业共需要完成3个大题:第1题,满分30分;第2题

5、(1)-(5)任选两题完成,各15分,(6)题必做,10分,满分40分;第3题(1)-(3)必做,满分30分。1、(1)在初学C语言时,可能会遇到有些问题理解不透,或者表达方式与以往数学学习中不同(如运算符等),这就要求不气馁,不明白的地方多问多想,鼓足勇气进行学习,这不但是学习c语言,也时对任何一门学科学习的不二门法。(2)/先使用编辑工具如windows的记事本或vc+环境,或linux的vim编辑器创建一个hello.c文件/打开文件后,如下 步骤写程序#include <stdio.h>/首先要引入c语言的标准输入输出库文件,因为这个文件里有已经定义好的

6、可以使用的函数/接下来需要写一个main函数,这也是c语言程序里必不可少的一个函数,叫主函数,他是整个程序的入口函数,程序所有的功能实现都要在这个函数中体现。但是这个函数有且仅有一个int main()    /这是main函数的函数体,要实现什么功能,就把实现功能的语句写到这里面    /比如我要实现打印HelloWorld字符,那么我就调用printf()标准输出语句    printf("Hello World!n");/这个语句

7、表示原样输出引号内的字符,n表示换行         return 0;/最后,因为main函数有一个int的返回类型限定,那么我们使用return语句返回一个int类型的值 0. /这样就结束了。一个简单的但又完整的C程序就有了,/下一步就是使用编译器编译成目标的可执行文件:/如果是windows下的vc+,那么需要分别点击编译,链接两个按钮生成hello.exe可执行文件/如果是linux下直接在shell中使用gcc hello.c就可以编译成可执行文件a.o

8、ut/最后就是运行了,windows下直接点击vc+的运行或双击hello.exe可以出现dos窗口运行,并显示结果,linux下使用“./a.out”可以直接运行,运行结果会显示在shell中。/这就是整个完整的流程,包括每一步。调试过程:设置断点,调试命令,察看变量,查看内存,常见错误:C 语言程序设计的错误可分为语法错误、连接错误、逻辑错误和运行错误。VC+ 和DEV C+都是C+语言的开发工具。如果只是做些小程序,基本上看不出区别。两者DEBUG和RELEASE上的时间有所不同。还有一点就是,通常如果是在VC+下编写的代码,不是很规范,拿到DEV C+上会报错。而反过来则可以运行。这里

9、涉及到GCC的问题,它对标准的支持表现在不支持非标准的东西,但是 DEV C+有个最大的好处就是体积小,没有VC+这么大,可以装到U盘里。(3)1 对于编译器处理更方便。在编译的时候,编译器需要为变量定义符号列表,有显式的变量定义,可以让编译器更方便的查找到变量列表,从而确定变量符号列表,执行后续的编译操作。2 不容易出错。 可以识别出变量名的手打错误。比如定义了var_name, 在调用的时候如果写作了var_nane, 如果没规定要先定义后使用,那么var_nane就会被当做一个新的变量使用,只到运行时才会发生错误。而按照C语言的规定,在编译阶段就可以发现该错误。3 程序更清晰。 变量定义

10、时,直接指明类型,这样在阅读程序时不需要为查知变量类型而花费额外时间。2、(1)#include <stdio.h>main() int i,n,sum=0; printf("input n:"); scanf("%d",&n); for (i=1;i<=n;i+) sum+=i; printf ("sum=%dn",sum); (5)#include<stdio.h>#include<math.h>int main()int i = 0;for(; i <= 999; i+)i

11、nt tmp = 0;int sum = 0;int count = 1;tmp = i/把i赋值给tmpwhile(tmp/10)/用while循环判断有几位数count +;/满足条件,计数器+tmp /= 10;tmp = i;/重新赋值while(tmp)/判断i是否为水仙花数sum += pow(tmp % 10), count);/pow函数,求一个数的次方,如输入参数pow(3,3),即得27tmp /= 10;if(sum = i)/如果sum等于i,找到了,并且输出printf("%d ", i);return 0;(6)#include<stdio

12、.h>#include<math.h>#define N 5int priN;int flag=0;/判断有无素数 无则返回1,有则返回0int count=0;/素数个数void prime(int ar,int n);main()int aN;int i,j,temp;printf("input %d numbers below:",N);for(i=0; i<N; i+)scanf("%d",&ai);prime(a,N);for(i=0; i<count; i+)for(j=i+1;j<count;j+)if(prii>prij)temp = prii;prii = prij;prij =temp;if(flag = 1)printf("After sorting:n");for(i=0; i<count; i+)printf("%dn",prii);printf("n");return 0;void prime(int ar,int n)int i,j,m;for(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论