第一范文网 - 专业文章范例文档资料分享平台

2019西南大学0039C语言程序设计机考大作业答案

来源:用户分享 时间:2025/6/7 5:26:01 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

(a)编写一个函数int prime(int n)判断n是否是素数。 (b)除prime函数外,其余功能在主函数内完成。 (c)程序必须有输入输出提示。 3. 依据下列提供的程序回答问题 #include 类别: 网教 2019年 6月 int fun(int m, int n) { int r; 课程名称【编号】: C语言程序设计 【0039】 A卷 while(r=m%n) { m=n; n=r;} 大作业 满分:100 分 return(n); } int main() { int m, n,k; 一、大作业题目 1.简述题(共30分) printf(\请输入两个正整数:\\n \ (1)“构建程序设计的思想和方法、提升阅读程序能力和编写程序能力”是C语言程序设计的课程学 scanf(\习目标。请简要说明你在C语言程序设计学习过程中学习了哪些内容?通过C语言的学习,你有哪些 printf(\,num2= %d\\n\ k=fun(m,n); 收获和体会?要求:回答问题真实真情表达(10分) (2) 采用C语言编写程序的基本步骤有哪些?在VC6.0或DEVc++环境下,若要调试一个c语言程序, printf(\ answer is %d\\n\} 其基本过程是什么?调试程序过程中常见的错误有哪些?简述程序设计语言与程序的区别与联系(10分) (1)上述提供程序中,函数fun的功能是什么? (3)在C语言为什么规定对所有用到的变量要\先定义,后使用”?这样的做有什么好处?请给出C语(2)请依据提供的函数fun代码画出其中的传统流程图或N-S图。 言的主要数据类型,请你给出至少2种以上的数据类型实例。(10分) (3)在VC6.0或DEV环境下,运行上述程序时,若输入的数据序列为24,64其输出结果是什么? 二、大作业要求 2..编程题 大作业共需要完成3个大题: (1) 编程计算sum=1+2+3+…+n的值。从键盘输入n的值。 第1题,满分30分; (2)编写一个程序从键盘输入一串字符串,统计该字符串中的数字字符和字母字符,然后输出。 第2题(1)-(5)任选两题完成,各15分,(6)题必做,10分,满分40分; 第3题(1)-(3)必做,满分30分。 西南大学网络与继续教育学院课程考试试题卷 23581321,,,,,,... 1235813(3) 编写一个函数fun求出分数序列的前n项之和,再写一主函数测试其功能。 (4)编写一个程序,计算分段函数的值。要求有输入输出提示,计算结果精度为2位。 f(x,y)= 2x?y(x?0) (5)编一程序找出所有三位数的\水仙花数”并在屏幕上输出。其中\水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一\水仙花数”,因为153=13+53+33。 (6)从键盘输入20正的整数,找出其中的素数并按降序排列这些素数并输出。 要求: 1、 (1) 在初学C语言时,可能会遇到有些问题理解不透,或者表达方式与以往数学学习中不同(如运算符等),这就要求不气馁,不明白的地方多问多想,鼓足勇气进行学习,这不但是学习c语言,也时对任何一门学科学习的不二门法。 (2) x?y2(x?0) //先使用编辑工具如windows的记事本或vc++环境,或linux的vim编辑器创建一个hello.c文件 - 1 -

//打开文件后,如下 步骤写程序

#include //首先要引入c语言的标准输入输出库文件,因为这个文件里有已经定义好的可以使用的函数

//接下来需要写一个main函数,这也是c语言程序里必不可少的一个函数,叫主函数,他是整个程序的入口函数,程序所有的功能实现都要在这个函数中体现。但是这个函数有且仅有一个 int main() {

//这是main函数的函数体,要实现什么功能,就把实现功能的语句写到这里面 //比如我要实现打印HelloWorld字符,那么我就调用printf()标准输出语句 printf(\这个语句表示原样输出引号内的字符,‘\\n’表示换行

return 0;//最后,因为main函数有一个int的返回类型限定,那么我们使用return语句返回一个int类型的值 0. }

1 对于编译器处理更方便。在编译的时候,编译器需要为变量定义符号列表,有显式的变量定义,可以让编译器更方便的查找到变量列表,从而确定变量符号列表,执行后续的编译操作。

2 不容易出错。 可以识别出变量名的手打错误。比如定义了var_name, 在调用的时候如果写作了var_nane, 如果没规定要先定义后使用,那么var_nane就会被当做一个新的变量使用,只到运行时才会发生错误。而按照C语言的规定,在编译阶段就可以发现该错误。

3 程序更清晰。 变量定义时,直接指明类型,这样在阅读程序时不需要为查知变量类型而花费额外时间。 2、 (1)

//这样就结束了。一个简单的但又完整的C程序就有了, //下一步就是使用编译器编译成目标的可执行文件:

//如果是windows下的vc++,那么需要分别点击编译,链接两个按钮生成hello.exe可执行文件

//如果是linux下直接在shell中使用gcc hello.c就可以编译成可执行文件a.out //最后就是运行了,windows下直接点击vc++的运行或双击hello.exe可以出现dos窗口运行,并显示结果,linux下使用“./a.out”可以直接运行,运行结果会显示在shell中。

//这就是整个完整的流程,包括每一步。

#include main() {

int i,n,sum=0; printf(\

调试过程:设置断点,调试命令,察看变量,查看内存,

scanf(\ for (i=1;i<=n;i++)

常见错误:C 语言程序设计的错误可分为语法错误、连接错误、逻辑错误和运行错误。

{

sum+=i;

VC++ 和DEV C++都是C++语言的开发工具。如果只是做些小程序,基本上看不出区别。两者DEBUG

}

printf (\

和RELEASE上的时间有所不同。还有一点就是,通常如果是在VC++下编写的代码,不是很规范,拿

} (5)

到DEV C++上会报错。而反过来则可以运行。这里涉及到GCC的问题,它对标准的支持表现在不支

#include #include

持非标准的东西,但是 DEV C++有个最大的好处就是体积小,没有VC++这么大,可以装到U盘里。

int main() {

(3)

int i = 0; for(; i <= 999; i++)

- 2 -

{ int tmp = 0; int sum = 0; int count = 1; tmp = i//把i赋值给tmp while(tmp/10)//用while循环判断有几位数 { count ++;//满足条件,计数器++ tmp /= 10; } tmp = i;//重新赋值 while(tmp)//判断i是否为水仙花数 { sum += pow((tmp % 10), count);//pow函数,求一个数的次方,如输入参数pow(3,3),即得27 tmp /= 10; } if(sum == i)//如果sum等于i,找到了,并且输出 printf(\ } return 0; } (6) #include { int a[N]; int i,j,temp; printf(\for(i=0; ipri[j]) { temp = pri[i]; pri[i] = pri[j]; #include pri[j] =temp; #define N 5 int pri[N]; } int flag=0;//判断有无素数 无则返回1,有则返回0 if(flag == 1) int count=0;//素数个数 { void prime(int ar[],int n); printf(\main() - 3 -

for(i=0; i

void prime(int ar[],int n) { int i,j,m;

for(i=0; i

m=(int)(sqrt(ar[i])+1); for(j=2; j<=m;j++) if(ar[i]%j == 0) break; if(j>m) { flag=1;

pri[count++]=ar[i]; printf(\

} }

printf(\} 3、

(1)fun的功能是求m个数的平均值 (3)这些偶数的平均值是16

- 4 -

2019西南大学0039C语言程序设计机考大作业答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1xrzh6spyg01k8300wxv0h1ll01f5u01c2z_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top