欢迎光临奥帕文库,如需获取更多资料请使用搜索功能。
奥帕文库
当前位置:首页 » 工程科技 » 电子/电路 » 正文

0993 C语言程序设计201404试点作业参考答案

0993+C语言程序设计201404试点作业参考答案注:所有网上作业除电算化会计外其余都可提前完成,但不能延后完成,请在5月30日前一次完成所有作业,以便老师及时评阅统计;本门课程实行网上作业及期末考试双及格和,没完成作业期末考试成绩无效。

一、目的:了解和熟悉VC++6.0集成开发环境,能够调试和运行具有多文件结构的C 语言程序。二、内容和步骤:1、在一个逻辑盘(如D 盘)或给定的目录下,使用VC++6.0环境中的“文件→“新建”命令,利用打开的“工作区”选项卡界面,建立名为“C 语言形成性考核”的工作区(文件夹);2、在上述工作区内建立一个内容为空的、属于控制台应用(Win32Console Application )的工程项目(目录),假定项目名用“xkzy1”表示;3、在上述项目内建立一个具有如下内容的、名称为“main.c ”的程序主文件;#include#include"head.h"void main(){int a,b,c,d;printf("请输入任意四个整数:");scanf("%d%d%d%d",&a,&b,&c,&d);printf("求和:%d\n",Sum(a,b,c,d));printf("乘积:%d\n",Product(a,b,c,d));}4、同时在上述项目内建立一个具有如下内容的、名称为“next.c ”的程序次文件;int Sum(inta,int b, int c, int d){return a+b+c+d;}int Product(inta,int b, int c, int d){return a*b*c*d;}5、同时在上述项目内建立一个具有如下内容的、名称为“head.h ”的用户头文件;int Sum(int,int, int, int);int Product(int,int, int, int);6、分别编译上述程序主文件和次文件,均无误后再进行连接,自动生成与工程项目名相同的可执行文件;7、选择编译菜单中的“执行”命令运行程序,按要求输入四个整数后,得到运行结果。三、提交内容程序执行时,在输出屏幕上呈现的所有内容,包括输入和输出的内容。(请将内容保存到文本文件,并压缩成一个压缩包上传。)参考答案:评分标准本次任务占形成性考核成绩的25%。由于在程序运行时,输入的四个整数是随意的,所以运行结果因输入数据的不同而异。只要是第2和3行的数据分别是第1行4个整数的和与积,就是正确结果。例如:若从键盘上输入的四个整数为1、2、3、4,则屏幕输出为:请输入任意四个整数:1234求和:10乘积:24

一、目的:会使用流程控制语句和数组,编写出进行数据处理的程序,并能够上机调试和运行。二、内容和步骤:1、利用第一次作业所建立的工作区,或另建一个新工作区;2、在工作区下建立一个内容为空的、进行控制台应用的工程项目,假定项目名用“xkzy2”表示;3、编写一个C 语言程序,要求实现的功能为:从键盘上输入一行带有英文字母的任意字符串,假定该字符串的长度不超过50,试统计出该串中所包含的每一种字母a 、b 、c 、d 的个数(字母大小写等效),并分行依次输出,每行的输出格式为“字母:个数”,如假定字母a 的个数为3,则输出格式为“a:3”。提示:请在for 循环内使用switch 语句分别进行字母个数的统计。4、在上述项目内建立一个能够实现上述功能的、名称为“main.c ”的程序文件,并输入、编译、连接和运行此C 语言程序文件。三、提交内容你所编写出的程序,以及在程序执行时,其输出屏幕上呈现的所有内容。(请将内容保存到文本文件,并压缩成一个压缩包上传。)参考答案:评分标准本次任务占形成性考核成绩的25%。由于在程序运行时,输入的一个字符串是随意的,所以运行结果因字符串不同而异。只要程序的逻辑正确,即能够统计和输出字符串中每一种字母a 、b 、c 、d 出现的次数,就是正确的运行结果。参考程序(谨供老师参考):#include<stdio.h>voidmain(){char s[51];int i,c[4]={0};printf("输入一个包含英文字母的字符串:");scanf("%s",s);for(i=0;s[i];i++)switch(s[i]){case 'a':case 'A':c[0]++;break; case 'b':case 'B':c[1]++;break; case 'c':case 'C':c[2]++;break; case 'd':case 'D':c[3]++;break; }for(i=0;i<4;i++)printf("%c:%d\n",'a'+i,c[i]);}通过编译、连接和运行此程序,得到的一种运行结果为:输入一个包含英文字母的字符串:qweasdascdcbfgghccabdcxa:3b:2c:5d:3

一、目的:会使用函数定义编写出具有一定功能的模块,学会进行结构化和模块化的程序设计。二、内容和步骤:1、打开第一次作业所建立的工作区,或另建一个新工作区;2、在工作区下建立一个内容为空的控制台应用工程项目,假定项目名用“xkzy3”表示;3、在上述项目内建立一个名称为“main.c ”的程序文件,程序内容如下;#include//函数功能说明:依次输出数组a[n]中大于平均值k 的所有元素值void greatMean(inta[],intn, int k);void main(){int a[8];int i,k,s=0;printf("请输入用空格分开的8个整数:");for(i=0;i<8;i++)scanf("%d",a+i);for(i=0;i<8;i++)s+=a[i];k=s/8;//k为数组a 中的平均值greatMean(a,8,k);printf("\n");}4、根据程序中的greatMean 函数声明和功能说明,在其程序下面编写出该函数的定义。5、编译、连接和运行上述程序,得到的运行结果。三、提交内容你所编写的greatMean 函数的定义模块。(请将内容保存到文本文件,并压缩成一个压缩包上传。)参考答案:评分标准本次任务占形成性考试成绩的25%。只要程序逻辑正确就可以给满分。参考程序(只供老师参考)void greatMean(inta[],int n, int k) {int i; for(i=0;i<n;i++)if(a[i]>k)printf("%d",a[i]);}例如,若程序运行时,从键盘上输入的8个整数为2013596134,则得到的运行结果为:请输入用空格分开的8个整数:201359613420913

一、目的:会利用数据文件存储数据,并学会使用数据文件的程序分析和设计。二、内容和步骤:1、打开第一次作业所建立的工作区,或另建一个新工作区;2、在工作区下建立一个内容为空的、进行控制台应用的工程项目,假定项目名用“xkzy4”表示;3、在上述项目内建立一个名称为“main.c ”的程序文件,程序内容如下;#include#includevoid main(void){int x;FILE*f1; //定义一个文件指针f1=fopen("data.txt","w");//在程序所在项目内建立一个空文件if (f1==NULL){//当f1对应的文件没有建立和打开时则退出运行printf("不能够打开文件!\n");exit(1);}printf("从键盘向数据文件输入一批整数,直到输入0时结束!\n");scanf("%d",&x);//从键盘读入一个整数while(x!=0){//对每个有效地整数进行处理int i=0,d[6];if(x<0){//若为负数则向文件写入一个负号fputc('-',f1); x=-x;}while(x/10!=0){//用d 数组保存整数中的每个数字位d[i++]=x%10;x=x/10;}fputc(48+x,f1); //把整数的最高位数字写入文件中while(--i>=0)//依次把整数的后续每位数字写入文件中fputc(48+d[i],f1);fputc('', f1); //每个整数后写入一个空格scanf("%d",&x);//再从键盘读入一个整数}fclose(f1);//关闭f1所对应的data.txt 文件}4、修改上述程序,使得从键盘输入到数据文件中的数据内容,每隔3个整数后增加一个换行;提示:在int x 语句后,增加一条定义变量的语句,用该变量记录从键盘上输入的整数个数;在fputc('', f1) 语句后,增加一条条件语句,用来记数和控制输出换行符。5、编译、连接和运行上述经修改后的程序,要求从键盘上输入至少10个整数。三、提交内容经修改后的完整程序,以及程序运行时所建立的数据文件的内容。(请将内容保存到文本文件,并压缩成一个压缩包上传。)参考答案:评分标准本次任务占形成性考试成绩的25%。程序应添加的两条语句为:int j=0;//用来记录输入数据的个数if(++j%3==0)fputc('\n',f1); //每3个整数后写入一个换