国开电大C++语言程序设计ch6_思考与练习
2021年国家开放大学电大C语言程序设计综合练习答案

2021年国家开放大学电大C语言程序设计综合练习答案综合练习1.C语言中的循环类语句有3条,它们是()。
正确答案是:for,while,do2.C语言中的跳转类语句有四条,它们是goto,return和()。
正确答案是:break,continue3.当不需要函数返回任何值时,则所使用的返回类型为()。
正确答案是:void4.在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()。
正确答案是:参数表5.在一个程序文件的开始,若需要使用一个包含命令包含一个头文件时,则命令标识符为()。
正确答案是:#include6.在#include预处理命令中,不可以包含()。
正确答案是:目标文件7.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据占用的字符位置个数为()。
正确答案是:68.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据中,其小数部分占用的字符位置个数为()。
正确答案是:29.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据中,其整数部分占用的字符位置个数为()。
正确答案是:310.在scanf()函数调用的格式字符串中,若使用格式符为“%f”,则对应输入的数据类型为()。
正确答案是:float11.在scanf()函数调用的格式字符串中,若使用格式符为“%Lf”,则对应输入的数据类型为()。
正确答案是:double12.每个C程序文件在编译时可能出现有严重性错误,其对应的标识符号为()。
正确答案是:error13.在VC++环境下,为运行一个程序而建立的工作区文件的扩展名为()。
正确答案是:dsw1.在C语言中,作为标识符的第一个字符可以是英文字母、数字或下划线字符。
正确答案是:“错”。
2.在C语言中,标识符中的非首字符可以是英文字母、数字或下划线字符。
C语言程序设计中国大学mooc课后章节答案期末考试题库2023年

C语言程序设计中国大学mooc课后章节答案期末考试题库2023年1.关于问题与问题求解,下列说法正确的是()。
答案:人类进行问题求解的一般思维过程可分为问题分析、提出假设和检验假设。
2.关于贪心算法(又称贪婪算法是指,在对问题求解时,总是做出在当前看来是最好的选择。
也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。
贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解),下列叙述中正确的是()。
答案:选择能产生问题最优解的最优量度标准是使用贪婪算法的核心。
3.将多个有序序列合并成一个有序序列,属于()。
答案:归并排序4.关于数学模型(Mathematical Model)和数学建模(MathematicalModeling),下列说法正确的是()。
答案:数学模型是对实际问题的数学抽象,是用数学符号、数学式子等对实际问题本质属性的抽象而又简洁的刻画。
5.在“八皇后问题”的问题求解中,采用“试探-失败返回-再试探”的问题求解方法,该方法属于()。
八皇后问题:在8×8格的国际象棋上摆放8个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。
答案:回溯法6.关于算法(Algorithm),下列叙述正确的是()。
答案:算法可以用自然语言、流程图或伪代码描述,各有其优点。
7.关于抽象(Abstraction),下列说法正确的是()。
答案:抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。
8.关于哥尼斯堡七桥问题,下列叙述不正确的是()。
哥尼斯堡七桥问题:哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥。
如图所示:我们要解决的问题是可否存在一种方案可以走过所有的桥然后回到起点。
答案:欧拉将七桥问题归结为了一个图形形式的“一笔画”问题,从而得到了问题的解。
年国家开放大学电大《C语言程序设计》期末考试及答案参考

年国家开放大学电大《C语言程序设计》期末考试及答案参考[试题分类]:C语言程序设计1.下列关于 C语言中 main 函数位置的叙述中,正确的是 A.必须在程序的最后 B.必须在程序的开始处 C.可以在程序中的任意位置 D.必须在系统调用的库函数后面答案:C 题型:单选题知识点:第 2章C 语言概述难度:12.下列选项中,不能作为 C语言标识符是 A.__ B.int C.a_1 D.ab1e_e 答案:B 题型:单选题知识点:第 2章C 语言概述难度:13.若有定义“int i; float f; double d;”,则表达式“10+d+i_f”的数据类型为 A.int B.float C.double D.不确定答案:C 题型:单选题知识点:第 3章数据类型与运算规则难度:14.判断 char型变量 c 是否为小写字母的正确表达式为 A."a"<=c<="z" B.(c>=a)&;&;(c<=z) C.("a">=c)("z"<=c) D.(c>="a")&;&;(c<="z") 答案:D 题型:单选题知识点:第3章数据类型与运算规则难度:15.若有定义“int _=11;”,则表达式“(_++_1/3) ”的值是 A.12 B.11 C.4 D.3 答案:D 题型:单选题知识点:第 3章数据类型与运算规则难度:26.若有定义“int a=1,b=2,c=3,d=4;”,则表达式“a<b?a:c<d?c:d”的值是 A.1 B.2 C.3 D.4 答案:A 题型:单选题知识点:第 3章数据类型与运算规则难度:27.若有定义“int a=1, b=0, c=0, _=35;”,则执行下列程序段后,变量 _的值是if(!a) _--;else if(b);if(c) _=3;else _=4; A.3 B.4 C.34 D.35 答案:B 题型:单选题知识点:第 5章选择结构的程序设计难度:28.{ 若有定义“int _=1,y=1,m=1,n=1;”,则执行下列语句后,变量 _和 y的值分别是switch (m) \{case 0: _=__2;case 1:switch (n) \{case 1: _=__2;case 2: y=y_2; break;case 3: _++;\}case 2: _++; y++;case 3: __=2; y_=2; break;default: _++;y++;\} } A._=2,y=1 B._=2,y=2 C._=6,y=6 D._=7,y=7 答案:C题型:单选题知识点:第 5章选择结构的程序设计难度:29.若有定义“int i,j;”,执行语句“for (i=0,j=1; i<=j+1; i+=2,j--) printf (“%d”,i);”时的循环次数是 A.3 B.2 C.1 D.0 答案:C 题型:单选题知识点:第 6章循环结构的程序设计难度:210.若有定义“int n=4;”,则执行语句“while(n--)printf(“%d”,n--);”后的输出结果是 A.20 B.31 C.210 D.321 答案:B 题型:单选题知识点:第 6章循环结构的程序设计难度:211.{ 若有定义“int _=3;”,则执行下列语句后的输出结果是do \{printf(“%d ”,_+=1);\} while(--_); }A.4 B.4 4 4 D.死循环答案:D 题型:单选题知识点:第 6章循环结构的程序设计难度:212.若有定义“char a[]=“_yz”,b[]={"_","y","z"};”,则下列叙述中正确的是 A.数组 a 的长度大于数组 b 的长度 B.数组 a 的长度小于数组 b 的长度 C.数组 a 和数组 b 的长度相同 D.数组 a 和数组 b 等价答案:A 题型:单选题知识点:第7章数组难度:113.{ 若有定义“intaa[4][4]=\{\{1,2,3,4\},\{5,6,7,8\},\{3,9,10,2\},\{4,2,9,6 \}\}, i,s=0;”,则执行下列语句后,变量 s 的值是for(i=0;i<4;i++)s+=aa[i][0];} A.20 B.19 C.11 答案:C 题型:单选题知识点:第 7章数组难度:214.调用函数时,若实参是一个数组名,则向函数传送的是 A.数组的长度 B.数组的首地址 C.数组每一个元素的地址 D.数组每个元素中的值答案:B 题型:单选题知识点:第 8章函数难度:115.下列各函数首部中,正确的是 A.void play(var :Integer,var b:Integer) B.void play(int a,b) C.Sub play(a as integer,b as integer) D.void play(int a,int b) 答案:D 题型:单选题知识点:第 8章函数难度:116.若有定义“int n=2,_p=&;n,_q=p; ”,则下列选项中,非法的赋值语句是 A.p=n; B.p=q; C.n=_q; D._p=_q; 答案:A 题型:单选题知识点:第 9章指针难度:217.若有定义“int _p[3]; ”,则下列叙述中正确的是 A.定义了一个类型为 int 的指针变量 p,该变量具有三个指针B.定义了一个名为_p的整型数组,该数组含有三个 int 类型元素 C.定义了一个指向一维数组的指针变量 p,该一维数组应具有三个 int 类型元素 D.定义了一个指针数组 p,该数组含有三个元素,各元素都是基类型为 int 的指针答案:D 题型:单选题知识点:第 9章指针难度:218.下列对枚举类型名的定义中正确的是 A.enum a={one,two,three}; B.enum a {one=9,two=-1,three}; C.enum a={“one”, “two”, “three”}; D.enum a{“one”, “two”, “three”}; 答案:B 题型:单选题知识点:第 10章结构、联合与枚举类型难度:219.{ 若有如下定义:struct student\{int num;int age;\}stu[3]=\{\{1001,20\} , \{1002,19\} , \{1003,21\}\} , _p=stu; 则下列表达式中,值为 1002的是 } A.p++->num B.(p++)->age C.(_++p).numD.(_p).num 答案:C 题型:单选题知识点:第 10章结构、联合与枚举类型难度:220.下列选项中,可以作为函数 fopen中第一个参数的是 A.“c:\\user\\te_t.t_t” B.c:\user\te_t.t_t C.“c:\user\te_t.t_t”D.c:user\te_t.t_t 答案:A 题型:单选题知识点:第 11章文件难度:121.若 y是 int型变量,则判断 y 为偶数的关系表达式为__________。
c 程序设计教程习题6_8章参考答案

习题及实验解答第六章一、选择题1、应为4(无正确选项)2、D3、B C4、D5、A6、A7、C8、B9、A 10、A二、程序填空1、stu[i].score k=j p[k]=p[i] p[i]=temp2、p!=NULL p->data p->next3、struct node * s->data=ch r=s NULL三、编程题1、#include "iostream.h"struct staff{char num[6];char name[8];float salary[3]; //分项工资float gs; //实得工资}s[100];void main( ){int i,j,n;cin>>n; /*输入职工人数*/for(i=0;i<n;i++){cin>>s[i].num>>s[i].name;for(j=0;j<3;j++)cin>>s[i].salary[j];}cout<<"NO. salary\n";for(i=0;i<n;i++){s[i].gs= s[i].salary[0]+ s[i].salary[1]- s[i].salary[2] ;cout<<s[i].num<<'\t'<<s[i].gs<<endl;}}2、#include "iostream.h"#include "stdio.h"struct str{char ch;struct str *next;};void main(){char s[100];int i=0,num=0;struct str *insert,*head=NULL,*p;gets(s);while(s[i]!='\0'){insert=new str;insert->ch=s[i];if(head==NULL){head=insert ;head->next=NULL;}else{insert->next=head ;head=insert;}i++;}p=head;while(p!=NULL){if(p->ch>='A'&&p->ch<='Z')num++;cout<<p->ch;p=p->next;}cout<<endl<<"num="<<num<<endl; }3、#include "iostream.h"#include "stdio.h"struct node{char ch;int count;struct node *next;};void main( ){struct node *head,*p1,*p2,*insert;char c;head=NULL;while((c=getchar())!='\n'){p1=head;while(p1!=NULL&&c>p1->ch){p2=p1;p1=p1->next;}if(p1==NULL){insert=new node;insert->ch=c;insert->count=1;if(head==NULL){insert->next=head;head=insert;}else{insert->next=NULL;p2->next=insert;}}else if(c==p1->ch)p1->count++;else{insert=new node;insert->ch=c;insert->count=1;if(p1==head){insert->next=head;head=insert;}else{insert->next=p1;p2->next=insert;}}}p1=head;while(p1!=NULL){cout<<p1->ch<<' '<<p1->count<<'\t';p1=p1->next;}}4、#include "stdio.h"#include "iostream.h"struct node{int coef;int expn;struct node *next;};struct node *creat(){struct node *head,*tail,*p;int c,e;head=NULL;cin>>c>>e;while(c!=0) //约定以输入系数为0作为多项式的结束{p=new node;p->coef=c;p->expn=e;if(head==NULL)head=p;elsetail->next=p;tail=p;cin>>c>>e;}tail->next=NULL;return head;}void print(struct node *h){struct node *p;p=h;while(p!=NULL){if(p->next!=NULL)cout<<p->coef<<'x'<<p->expn<<'+';else{if(p->coef!=0&&p->expn!=0)cout<<p->coef<<'x'<<p->expn<<endl;else if(p->coef!=0)cout<<p->coef<<endl;elsecout<<endl;}p=p->next;}}void main(){struct node *h1,*p1,*h2,*p2,*h3,*p3,*newnode,*t3;h1=creat();print(h1);h2=creat();print(h2);p2=h2;h3=NULL;p1=h1;p2=h2;p3=h3;t3=h3;while(p1!=NULL&&p2!=NULL){newnode=new node;if(p1->expn>p2->expn){newnode->coef=p1->coef;newnode->expn=p1->expn;p1=p1->next;}else if(p1->expn<p2->expn){newnode->coef=p2->coef;newnode->expn=p2->expn;p2=p2->next;}else{newnode->coef=p2->coef+p1->coef;newnode->expn=p2->expn;p2=p2->next;p1=p1->next;}if(h3==NULL){h3=newnode;t3=newnode;}elset3->next=newnode;t3=newnode;}if(p1==NULL)t3->next=p2;elset3->next=p1;print(h3);}第七章一、选择题1、D2、B3、B4、A5、B6、A7、D8、B9、C 10、B二、程序填空1、fname, “w”(ch=getchar())!=’#’count++2、(c=fgetc(fp)) length++ length=03、”wb”&emp, sizeof(employer),1,fp fclose(fp) “rb”&emp, sizeof(employer),1,fp三、编程题1、#include "iostream.h"#include "stdlib.h"#include "stdio.h"void main(){FILE *fp1,*fp2;char ch;fp1=fopen("f1.txt","a");if(fp1==NULL){cout<<"can't open f1.\n";exit(1);}if((fp2=fopen("f2.txt","r"))==NULL){cout<<"can't open f2.\n";exit(1);}while(1){ch=fgetc(fp2);if(feof(fp2))break;cout<<ch;fputc(ch,fp1);}fclose(fp1);fclose(fp2);}2、#include "iostream.h"#include "stdlib.h"#include "stdio.h"void main(){FILE *fp;int a[10],i,j;if((fp=fopen("d1.dat","w"))==NULL){cout<<"can't open d1.\n";exit(1);}for(i=0;i<10;i++)a[i]=rand();for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(a[j]<a[j+1]){int t=a[j];a[j]=a[j+1];a[j+1]=t;}for(i=0;i<10;i++)fprintf(fp,"%d\t",a[i]);fclose(fp);}3、#include "iostream.h"#include "stdlib.h"#include "stdio.h"#include "string.h"void main(){FILE *fp;char s[100];int a[26]={0},i;if((fp=fopen("f.txt","r"))==NULL){cout<<"can't open f.\n";exit(1);}fgets(s,100,fp);strlwr(s);i=0;while(s[i]!='\0'){if(s[i]>='a'&&s[i]<='z')a[s[i]-'a']++;i++;}for(i=0;i<26;i++)cout<<(char)('a'+i)<<":"<<a[i]<<endl;fclose(fp);}4、#include "iostream.h"#include "stdlib.h"#include "stdio.h"struct student{char num[8];char name[20];double s[3],ave;}st[5];void main(){student stu[5];FILE *fp;int i;if((fp=fopen("stu","wb"))==NULL){cout<<"can't open stu.\n";exit(1);}for(i=0;i<5;i++){cin>>stu[i].num>>stu[i].name>>stu[i].s[0]>>stu[i].s[1]>>stu[i].s[2];stu[i].ave=(stu[i].s[0]+stu[i].s[1]+stu[i].s[2])/3;}fwrite(stu,sizeof(student),5,fp);fclose(fp);}第八章一、选择题1、A2、A3、C4、C5、6、D7、B8、D9、C 10、B11、D 12、A 13、B 14、D 15、D二、阅读程序写结果1、con1 calledcon2 calledcon3 calleda=0,b=0a=10,b=10a=10,b=202、0 51 52 53 54 53、4564、10,106,67,95、x=0x=10x=7三、编程题1、#include "iostream.h"#include "string.h"class Cat{private:int age;double weight;char color[10];public:void set(int a,double w,char c[10]){age=a;weight=w;strcpy(color,c);}void print(){cout<<"age:"<<age<<"\tweight:"<<weight<<"\color:"<<color<<endl;}int getage(){return age;}double getweight(){return weight;}char *getcolor(){return color;}};void main(){Cat c1;int a;double w;char c[10];cin>>a>>w>>c;c1.set(a,w,c);c1.print();}2、#include "iostream.h"#include "string.h"#include "stdio.h"class Mystring{private:char *str;public:Mystring(){ }Mystring(char *s){str=new char[100];strcpy(str,s);}void set(char *s){str=new char[100];strcpy(str,s);}void print(){cout<<str<<endl;}int length( ){int i=0;while(str[i]!='\0')i++;return i;}char *stringcat(Mystring s2){int i=0,j=0;while(str[i]!='\0')i++;while(s2.str[j]!='\0')str[i++]=s2.str[j++];str[i]='\0';return str;}};void main(){Mystring s1;char s[100];gets(s);s1.set(s);s1.print();gets(s);Mystring s2(s);s2.print();cout<<s1.stringcat(s2);}3、#include "iostream.h"#include "string.h"#include "stdio.h"class Point{private:double x,y;public:Point(){ }Point(double x1,double y1){x=x1;y=y1;}void set(double x1,double y1){x=x1;y=y1;}void move(double x1,double y1){x=x+x1;y=y+y1;}void print(){cout<<"("<<x<<","<<y<<")"<<endl;}double getx(){ return x;}double gety(){ return y;}};class Circle:public Point{private:double r;public:void set(double x1,double y1,double r1){Point::set(x1,y1);r=r1;}void print(){Point::print();cout<<r<<endl;}double getr(){ return r;}double s(){ return 3.14*r*r;}};void main(){Point p1;Circle c1;double x1,y1,r1;cin>>x1>>y1;p1.set (x1,y1);p1.print ();cin>>x1>>y1;p1.move (x1,y1);p1.print ();cin>>x1>>y1>>r1;c1.set (x1,y1,r1);c1.print ();cout<<c1.s()<<endl;}4、#include "iostream.h"class Point{private:int x,y;public:Point(){ }Point(int x1,int y1){ x=x1; y=y1;}friend Point operator+(Point &p1,Point &p2){Point p(p1.x+p2.x,p1.y+p2.y);return p;}void print(){cout<<"("<<x<<","<<y<<")"<<endl;}};void main(){Point p1(1,2),p2(2,3),p3;p3=p1+p2;p3.print();}5、#include "iostream.h"#include "stdio.h"#include "string.h"class Teacher{private:char name[20];public:void virtual input(){cout<<"input name:";cin>>name;}virtual double wage()=0;void virtual print(){cout<<name<<'\t';}};class Professor:public Teacher{private:int cnum; //课时数public:void input(){Teacher::input ();cout<<"input cnum:";cin>>cnum;}double wage(){return (3000+40*cnum);}void print(){Teacher::print ();cout<<wage()<<endl;}};class ViceProfessor:public Teacher {private:int cnum; //课时数public:void input(){Teacher::input ();cout<<"input cnum:";cin>>cnum;}double wage(){return (2500+30*cnum);}void print(){Teacher::print ();cout<<wage()<<endl;}};class Lecture:public Teacher{private:int cnum; //课时数public:void input(){Teacher::input ();cout<<"input cnum:";cin>>cnum;}double wage(){return (2000+25*cnum);}void print(){Teacher::print ();cout<<wage()<<endl;}};void main(){Teacher *t;Professor *p;ViceProfessor *vp;Lecture *l;char ptitle[20],ch;//职称do{cout<<"input ptitle(professor,viceprofessor or lecture):"<<endl;gets(ptitle);if(!strcmp(ptitle,"professor")){p=new Professor;t=p;}else if(!strcmp(ptitle,"viceprofessor")){vp=new ViceProfessor;t=vp;}else{l=new Lecture;t=l;}t->input ();t->print ();cout<<"continue(y/n)?";cin>>ch;}while(ch=='y');}。
C_ch6

用数组方式读入5个整数 例6.1用数组方式读入 个整数,并求和。 用数组方式读入 个整数,并求和。 /* sum of 5 interger */ #include "stdio.h" void main() { int i,data[5],sum=0; printf("\nPlease enter 5 integer:"); for (i=0;i<5;i++) scanf("%d",&data[i]); for (i=0;i<5;i++) sum=sum+data[i]; printf("Sum is %d\n",sum); }
int data[5]={1,2,3,4,5};
注意
(1) 允许初始化一部分元素,而不是全部。 ) 允许初始化一部分元素,而不是全部。 int data[5]={1,2}; (2) 初始化数组时,允许省略数组的长度。 ) 初始化数组时,允许省略数组的长度。 int data[]={1,2,3,4,5}; 是完全等价的。 与int data[5]={1,2,3,4,5};是完全等价的。 是完全等价的 (3) 初始化数组时,不能对整个数组初始化。 ) 初始化数组时,不能对整个数组初始化。 例如, 例如,int data[5]=1;
stu_score有5个数组单元,每个数 有 个数组单元 个数组单元, 组单元又有3个元素 我们称stu_score是 个元素, 组单元又有 个元素,我们称 是 一个5×3的二维数组,该二维数组行的 一个 × 的二维数组, 的二维数组 个数是5,列的个数是3。 个数是 ,列的个数是 。 6.3.1 二维数组的定义 定义二维数组的语法是: 定义二维数组的语法是: 数组名[行数 列数] 行数][列数 数据类型说明符 数组名 行数 列数
国家开放大学电大《C语言程序设计》网络课形考网考作业及答案

国家开放大学电大《C语言程序设计》网络课形考网考作业及答案国家开放大学电大《C语言程序设计》网络课形考网考作业及答案100%通过考试说明:2021年秋期电大把该网络课纳入到“国开平台”进行考核,该课程共有4个形考任务,针对该门课程,本人汇总了该科所有的题,形成一个完整的标准题库,并且以后会不断更新,对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。
做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。
本文库还有其他网核及教学考一体化答案,敬请查看。
课程总成绩=形成性考核×50%+终结性考试×50%形考任务1一、选择题(共40分,每小题2分)题目1在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。
选择一项:A.main恭喜你,答对啦!!B.MAIND.function题目2C语言源程序文件的缺省扩展名为()。
选择一项:A.cppB.exeC.objD.c题目3由C语言目标文件连接而成的可执行文件的缺省扩展名为()。
选择一项:A.cppB.exeC.objD.c题目4程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用的分隔符为()。
选择一项:A.空格或逗号B.逗号或回车C.逗号或分号D.空格或回车题目5每个C语言程序文件的编译错误被分为()。
选择一项:A.1类B.2类C.3类D.4类题目6不符合C语言规定的复合语句是()。
选择一项:A.{}B.{;}C.{x=0;}D.{y=10}题目7C语言程序中的基本功能模块为()。
选择一项:A.表达式B.标识符C.语句D.函数题目8在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()。
选择一项:A.表达式B.语句C.参数表D.函数体题目9在一个程序文件中,若要使用#include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对()。
国家开放大学电大《C语言程序设计》网络课形考任务4作业及答案

国家开放大学电大《C语言程序设计》网络课形考任务4作业及答案形考任务4一、选择题(共30分,每小题2分)题目1假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”,则不正确的语句为()。
选择一项:a. struct BOOK *x=malloc(book);题目2假定有“struct BOOK{char title[40]; float price;} book;”,则正确的语句为()。
选择一项:b. struct BOOK *x=&book;题目3在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。
选择一项:c. 分号题目4假定一个结构类型的定义为“struct A{int a,b; double c;};”,则该类型的长度为()。
选择一项:d. 16题目5假定一个结构类型的定义为“struct D{int a; D* next;};”,则该类型的长度为()。
选择一项:b. 8反馈Your answer is correct.题目6假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。
选择一项:b. x->a题目7与结构成员访问表达式等价的表达式为()。
选择一项:c. (&x)->name题目8假定一个链表中结点的结构类型为“struct AA{int data, struct AA *next;};”,则next数据成员的类型为()。
选择一项:b. struct AA*题目9假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为()。
选择一项:b. p->next=f和f=p题目10标准输入设备键盘的文件流标识符是()。
选择一项:a. stdin题目11表示文件结束符的符号常量为()。
选择一项:c. EOF题目12C语言中打开一个数据文件的系统函数为()。
国家开放大学电大《C语言程序设计》网络课形考任务3作业及答案

国家开放大学电大《C语言程序设计》网络课形考任务3作业及答案形考任务3一、选择题(共30分,每小题2分)题目1在下面的函数声明语句中,存在着语法错误的是()。
选择一项:c. AA(int a; int b)题目2在下面的保留字中,不能作为函数的返回值类型的是()。
选择一项:c. enum题目3假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。
选择一项:c. 4题目4假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。
选择一项:b. *a++题目5用calloc函数创建具有10个整型元素的一维数组的正确语句是()。
选择一项:c. int *p=calloc(10,4);题目6假定变量m定义为“int m=7;”,则下面正确的语句为()。
选择一项:b. int *p=&m;题目7假定k是一个double类型的变量,则定义变量p的正确语句为()。
选择一项:d. char *p="Thank you!";题目8选择一项:d. x=*pa+3;题目9假定有语句为“int b[10]; int *pb;”,则下面不正确的赋值语句为()。
选择一项:d. pb=b[5];题目10已知“int *p=malloc(100);”,要释放p所指向的动态内存,正确的语句为()。
选择一项:a. free(p);题目11在程序的一个文件中定义的函数,若要在另一个文件中调用,则必须在这另一个文件中给出该函数的()。
选择一项:a. 原型语句题目12假定一个函数定义为“static int f1(int x,int y){return x+y;}”,该函数名称为()。
选择一项:c. f1题目13假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是()。
选择一项:b. ff(a[0])题目14假定一个函数的数组参数说明为char a[],与之等价的指针参数说明为()。
电大计算机科学与技术c语言各章练习题答案

各章练习题答案第1章C语言概述1.1简答题1.答:C语言单词分为保留字、标识符、字面常量、运算符和分隔符5类。
2.答:首字符必须是英文字母或下划线;其余位置上的字符必须是英文字母、十进制数字符号或下划线。
3.答:它们的首字符不同,此外各自还有详细的格式规定。
其中,数值字面常量以数字、正负号或小数点(如.01表示0.01)开头,字符字面常量必须用单引号括起来,字符串字面常量必须用双引号括起来,标识符首字符必须是英文字母或下划线。
4.答:分类如下。
数值常量3个:25 -8 +3.42字符常量3个:'4''D''+'字符串7个:"x1""-28""y=m+1""a12.c""else""+""int x。
"标识符7个:x2 n count main Hlist xy MaxA_1保留字3个:int void if运算符1个:+分隔符0个:非法数据1个:3ab以上共计25个。
5.答:C语句除空语句外,按照语句功能,可分为以下8类:类型定义语句、变量定义语句、函数原型语句、表达式语句、复合语句、选择语句、循环语句和跳转语句。
在以上8类语句中,前3类属于说明性语句,后5类属于执行性语句。
6.答:其格式为:#include <头文件>或#include “头文件"。
对于每条预处理包含命令,在预处理阶段将把该命令置换为所指定“头文件”中的全部内容,换句话说,是用该“头文件”保存的全部内容代替该预处理包含命令行。
对于上述给出的两种包含命令格式,系统处理时的查找头文件的路径有所不同。
对于第一种格式(即尖括号格式),将从C语言系统层次目录中查找头文件,若查找不到则给出错误信息;对于第二种格式(即双引号格式),如果头文件名没有给出磁盘号和路径名,则首先从当前工作目录(即包含该命令的程序文件所属的目录)中查找头文件,若查找不到,再接着从C语言系统层次目录中查找头文件,若还是查找不到则给出错误信息。
ch6参考答案

第六章参考答案仅供参考1、修改算法MINMAX,使得当n不是2的幂的情况下可以运行。
如果当 n不是2的幂,新算法执行的比较次数还是[3n/2-2]吗?证明你的答案。
解:将if high-low=1 then修改为:if high-low=0 thenreturn(A[low],A[high])else if high-low=1 then……证明:由于子部分的规模是因n的值而决定的,对于非2的幂的n,总会出现奇数个元素的子部分,即最后的可治理的子部分必是两种情形。
当考察的子部分要么为含有一个或者含有两个元素时,可以直接治理,即直接输出解MinMax或比较一次得到Min与Max。
这就决定对MInMax的算法修改必须覆盖这两个情形。
而不是教材中单一考虑n 为2的幂的情形。
解:当序列中的元素都相同时,每次执行算法SPLIT,仅出现一次元素交换,即将序列的第一个元素与最后一个元素交换,且划分元素的新位置为该序列的最后一个位置。
因此,在元素均相同的数组A[1..n]上,算法QUICKSORT的执行特点为:每次划分后只剩下一个非空子序列未处理的。
第一次划分后剩下A[1..n-1]未处理,第二次划分后剩下A[1..n-2]未处理,…,第n-1次划分后剩下A[1](已有序)。
在该实例上,算法的执行时间为:(n-1)+(n-2)+…+2+1=Θ(n2),属于最坏的情况。
且最后所得结果中各元素顺序如下:A[2],A[3],A[4],…,A[n],A[1](这里,A[i]表示输入时的第i个元素,i=1,2,…,n)。
解答:因为,(a+b)(c+d)=ac+ad+bc+bd,所以,xy=(ac-bd)+((a+b)(c+d)-ac-bd)i.因此,这样计算xy只需要3次乘法。
最新C语言程序设计应用 练习与思考 题目及答案

C语言程序设计应用练习与思考题目及答案练习与思考 91.1 填空题假设在程序中有这样一些语句:#include <stdio.h>FILE *fp1, *fp2;char ch, str[100];int nNumRead=-1;fp1 = fopen("test1.txt", "r");fp2 = fopen("test2.txt", "w");并且,假设两个文件都被成功打开,请完成下面代码的空格部分:a) ch = fgetc(__fp1__); /* 读取文件test1.txt中字符 */b) fprintf(__fp2__, "%c\n", __ch__); /* 把ch写入文件test2.txt中 */c) fclose(__fp2__); /* 关闭文件test2.txt */d) while(!__feof(fp1)__)fscanf(fp1, __”%c”__, __&ch__); /* 依次读入文件test1.txt中所有字符 */e) nNumRead = fread(__str__,__sizeof(char)__, 1, fp1);f) fseek(fp1, __0L__, __SEEK_END/2__); /* 将文件内部读写位置指针定位到文件尾*/1.2 选择题(1) 在C语言中对文件操作的一般步骤是( A )。
(A) 打开文件—操作文件—关闭文件(B) 操作文件—修改文件—关闭文件(C) 读写文件—打开文件—关闭文件(D) 读文件—写文件—关闭文件(2) fscanf()函数的正确调用形式为( B )。
(A) fscanf(fp, 格式字符串, 读入变量列表);(B) fscanf(文件指针, 格式字符串, 读入变量列表);(C) fscanf(格式字符串, 文件指针, 读入变量列表);(D) fscanf(格式字符串, 读入变量列表, fp);(3) 已知函数的调用形式:fread(buffer, size, count, fp); 其中buffer代表的是( C )。
(精华版)国家开放大学电大《教育学》《C语言程序设计》网络课形考网考作业(合集)答案

(精华版)国家开放大学电大《教育学》《C语言程序设计》网络课形考网考作业(合集)答案(精华版)国家开放大学电大《教育学》《C语言程序设计》网络课形考网考作业(合集)答案《教育学》网络课答案形考任务1一、单选题题目1在中国,最早把“教”与“育”连起来使用的是_____________。
选择一项:A.孟子的《孟子:尽心上》恭喜你,答对啦题目2提出“教育是生活的过程,而不是将来生活的预备。
教育是经验的改造或改组”的教育家是____________。
选择一项:E.杜威恭喜你,答对啦题目3教育史上第一个设想出全面完整教育学的人,教育学的真正奠基人是_______________。
选择一项:C.夸美纽斯恭喜你,答对啦题目4被认为是世界上第一部具有科学体系的教育学著作是____________。
选择一项:B.《普通教育学》恭喜你,答对啦题目5关于教育对象,我国最早提出了有教无类主张的是______________。
选择一项:E.孔子恭喜你,答对啦题目6在教育史上,第一个把教育学建立在心理学和哲学的基础之上进行研究,从而被誉为“科学教育学的奠基人”的教育家是____________。
选择一项:C.赫尔巴特恭喜你,答对啦题目7教育现代化的核心是()。
选择一项:C.教育观念的现代化题目8一个国家或地区教育经费投入的多少最终是由()选择一项:D.生产力发展水平题目9决定教育性质的根本因素是()。
选择一项:D.社会生产力题目10从作用对象上看,教育可以分为哪两种功能()。
选择一项:C.教育的个体功能和社会功能题目11一个地区的人们平均文化程度越高,人口出生率就越低,这体现了教育的()。
选择一项:A.人口功能题目12以下对于文化传统与教育关系的述说不正确的是()。
选择一项:E.文化传统直接决定着教育的性质题目13青少年儿童的大脑发展最迅速的时期是出生后第5个月到第11个月之间,这说明人的身心发展具有()。
选择一项:C.不均衡性题目14人的发展总是受到社会的制约,这意味着()。
国开电大C++语言程序设计试题解析

Company Logo
试题解析(写出下列每个函数的功能)
3. void cre_l(node* & head,int n) {
node * p; head=p=new(node); cin>>p->data; for(int i=0;i<n-1;i++) {
句、
、
。
do…while 语句
for 语句
16.程序的三种基本结构是(顺序 )结构、(分支 )结构和
(循环 )结构,它们的共同特点是(只有一个入口和一个出口)。
17.如果执行if(x>3)cout<<’A’;else cout<<’B’;后屏幕上 显示的是B,说明x>3的值是( false )。
Company Logo
(*p)++;”
p
26
46
46
P+1
P+1
Company Logo
试题解析(填空题)
Байду номын сангаас
23、 对一个类中的数据成员的初始化可以通过构造函数中的初始化表实 现,也可以通过构造函数中的____函数体____实现。
24.假定用户没有给一个名为AB的类定义构造函数,则系统为其隐含定 义的构造函数为 ___ AB(){} ___ 。
21、 假定一个二维数组的定义为“char a[3][4];”, 则该数组所占存储空间的字节数为____M*N____。
Company Logo
试题解析(填空题)
22、 假定p所指对象的值为25,p+1所指对象的值为46,则执 行“(*p)++;”语句后,p所指对象的值为____26____。
国家开放大学电大《文论专题》《C语言程序设计》网络课形考网考作业(合集)答案

国家开放大学电大《文论专题》《C语言程序设计》网络课形考网考作业(合集)答案国家开放大学电大《文论专题》《C语言程序设计》网络课形考网考作业(合集)答案《文论专题》网络课答案形考任务1题目1著名的改良派人士梁启超提出文艺的四种社会作用即:薰、浸、刺、提。
所谓“刺”,指的是文艺作品培养接受者审美接受能力的作用。
选择一项:对错题目2孔子所说的“兴”的含义,就是通过艺术形象的譬喻,引发人的联想,并进而使人领会到某种类似的,深微曲隐的思想感情,从而在精神上受到感染和熏陶。
选择一项:对错题目3孔子的思想,可以说是以“仁”为内容,以“礼”为形式,以“中庸”为准则,所以也被称为“仁学”。
选择一项:对错题目4“兴观群怨”的发展过程中存在着这样一种共同规律,就是在孔子那里主要是针对“用诗”,即发挥文艺社会作用而提出的“兴观群怨”,在后世都逐渐与“作诗”结合起来,使“兴观群怨”不仅成为对文艺社会作用的一种自觉认识,而且成为对文艺创作的一种明确要求。
选择一项:对错题目5孔子的思想主要保存在《论语》中。
选择一项:对错题目6庄子的“言不尽意”说对后世的影响深远而巨大,北宋欧阳修的就是例证。
选择一项: A.思表纤旨,文外曲致,言所不追B.言有尽而意无穷C.“状难写之景,如在目前;含不尽之意,见于言外“D.文已尽而意有余题目7通过艺术形象的譬喻,引发人的联想,并进而使人领会到某种类似的,深微曲隐的思想感情,从而在精神上受到感染和熏陶,这是选择一项: A.兴B.怨C.群D.观题目8明末清初的王夫之特别重视文艺的审美情感特征,他将“兴观群怨”称之为“”选择一项: A.四情B.四义C.四教D.四学题目9孔子的文艺观是他的“”思想在文艺方面的鲜明体现。
选择一项: A.礼学B.义学C.诗学D.仁学题目10“兴观群怨”说是孔子“”文艺观的代表。
选择一项: A.诗教B.礼教C.德教D.仁教题目11怎样理解庄子的得意忘言答:《庄子·外物》:“蹄者所以在兔,得兔而忘蹄。
国开电大C++语言程序设计ch1-思考与练习

第1章C++程序设计基础思考与练习一、填空题1. C++语言是在语言的基础上发展起来的。
答案:C“类”的C。
2. C++语言的编译单位是扩展名为的文件。
答案:obj 目标解析:3. 行尾使用注释的开始标记符为。
答案://4. 多行注释的开始标记符和结束标记符分别为和。
答案:/* */5. 用于输出表达式值的标准输出流对象是。
答案:cout6. 用于从键盘上为变量输入值的标准输入流对象是。
答案:cin7. 一个完整程序中必须有一个名为的函数。
答案:mainmain函数8. 一个函数的函数体就是一条语句。
答案:复合函数的函数体也就是一条复合语句。
9. 在C++程序中包含一个头文件或程序文件的预编译命令为。
答案:include程序中来,成为本程序的一部分。
10. 程序中的预处理命令是指以字符开头的命令。
答案:#件的内容作为程序的一部分插入到要编译的程序中。
11. 一条表达式语句必须以作为结束符。
答案:分号12. 在#include命令中所包含的头文件,可以是系统定义的头文件,也可以是定义的头文件。
答案:用户(或编程者)解析:13. 使用#include命令可以包含一个头文件,也可以包含一个文件。
答案:程序的C/C++程序文件,包括.c,.hpp,.cpp,.hxx,.cxx等,甚至.txt,.abc等等都可以。
二、选择题1. C++源程序文件的默认扩展名为( )。
A. cppB. exeC. objD. lik答案:A件(可能有多个)的形式存放。
2. 由C++源程序文件编译而成的目标文件的默认扩展名为( )。
A. cppB. exeC. objD. lik答案:C目标代码以汇编语言的形式存放。
3. 由C++目标文件连接而成的可执行文件的默认扩展名为( )。
A. cppB. exeC. objD. lik答案:B执行程序,形成一个扩展名为exe的可执行文件。
4. 以下标识符中不全是保留字的是( )。
A. case for intB. default then whileC. bool class longD. goto return char答案:B5能作为C++程序的基本单位是( )。
C语言程序设计试题集与答案解析

称为操作系统;而为办公自动
化( OA)、管理信息系统( MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程
序,统称为 _________。
11. 机器语言是以 __________形式表示的机器基本指令的集合, 是计算机系统唯一不需要翻 译可以直接识别和执行的程序设计语言。
12. 与机器语言相比,使用汇编语言来编写程序可以用 对
10. 124
11. 047
12. +002 13. 14. 1 15. \x41/41H 16. 符号常量 17. # define 18. 转义字符常量 19. F 20. b 21. \b 22. B 23. e 24. 16 25. 11 26. 0 27. A~F 28. U 29. 指数形式 30. #include 31. “ 0” 32. 变量类型 33. 数字
2. 常用于字符输入的函数为: ________________ 。
3. 常用于字符输出的函数为: ________________ 。
4. 常用于字符串输入的函数为: ________________ 。
5. 常用于字符串输出的函数为: ________________ 。
6. 格式输入函数的一般形式为: _________ Hello,Bob! ”占据的内存空间为 ______ 个字节
26. 十进制整型常量由 0~9 个数据组成,但不能以 ______
开始,没有小数部分
27. 十六进制常量由 0~9 和 ______
组成
28. unsigned long 类型常量通常以 ______
为后缀
29. 实型常量通常有小数形式和 ______
19. 执行速度
20. PASCAL
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第6章函数思考与练习一、填空题1. 若一函数是以return;结束运行的,说明该函数是()函数。
答案:无返回值解析:在无返回值函数的函数体中可用return;语句结束函数的运行。
2. 作为()的函数调用,即使有返回值也被舍弃不用。
答案:语句解析:作为语句调用的函数,一般为无返回值函数,即便有返回值也会被舍弃不用。
3. C++依据调用中实在参数在()上或()上的不同来确定调用的是重载函数的哪一个。
答案:数量类型解析:重载函数必须在参数的数量或类型上有所不同,这些不同之处可以是函数返回值类型的不同、函数参数的类型不同、参数的个数不同以及参数的顺序不同,系统会根据这些不同选用合适的函数。
4. 在函数外定义的变量称为()变量。
答案:全局解析:全局变量也称为外部变量,它是在函数外部定义的变量。
它不属于哪一个函数,它属于一个源程序文件。
其作用域是从定义该变量的位置开始至源文件结束。
5. 已知int incr(int n) {return n+1;} 和long incr(long n) { return n+1;} 是一个函数的模板的两个实例,则该函数模板的定义是()。
答案:template <class T>T incr(T n){return n+1;}解析:模板函数是可以用来创建一个通用功能的函数,支持多种不同形参,定义格式为:template <class 类型参数>返回类型函数名(函数参数表){ ……} //函数体即在函数定义的前面加上template <class 类型参数>。
二、选择题1. 从函数原型看,返回值类型为int的函数有()。
A. int F(char n);B. char F(int n);C. double F(int n);D. F(double n);答案:A解析:函数的定义格式如下:类型修饰符函数名(形式参数表) 函数体其中类型修饰符为函数返回值的数据类型,若类型修饰符的值为int,则函数的返回值类型为int。
2. 如果一个函数无返回值,只能作为()被调用。
A. 表达式B. 语句C. 有参函数D. 无参函数答案:B解析:有返回值函数,可以作为表达式调用,也可以作为语句调用(此时函数值无意义);而无返回值函数,只能作为语句调用,故选B。
3. 已知一函数有下列变量的定义,其中属于静态变量的是()。
A. int a;B. register int a;C. static char cD. auto long a;答案:C解析:static在C++语言中是静态存储类型的意思,选项C中定义的c就是静态存储变量。
4. 已知fp函数的原型是:int fp(char c,char* k=NULL,double d=100.0);下列调用中正确地调用fp的是()。
A. fp(99);B. fp(‘A’,5.6);C. fp(55,’A’);D. fp();答案:A解析:fp是具有3个形式参数的函数,其中两个参数有默认值;当调用fp时,需传递的最少实参个数为1,且实参与形参的类型必须匹配。
此题仅选项A符合要求。
5. 已知系统中已定义fp函数,其原型是:int fp(char c,char* k=NULL,double d=100.0);下列函数中可以加以重载的是()。
A. int fp(char);B. void fp(char,char*);C. int fp(char,char* ,double);D. int fp();答案:D解析:定义的重载函数至少要在参数类型、参数个数或参数顺序上有所不同,否则被视为错误的函数定义,故选项B、C错误;系统定义函数fp有三个形参,其中两个有默认值,暗含选项A。
故选D。
6. 下面程序的运行结果是()。
#include<iostream.h>void fun(int *a,int *b){int x=*a;*a=*b;*b=x;cout<<*a<<*b<<' ';}void main(){int x=1,y=2;fun(&x,&y);cout<<x<<y<<endl;}A. 12 12B. 12 21C. 21 12D. 21 21答案:D解析:fun函数中的语句cout<<*a<<*b<<' ';输出21,main函数的cout<<x<<y<<endl;输出21,故选D。
7. 函数int test(int a,int b=1,int c=0);,下列调用不合法的个数是()。
test(0); test(0,0); test(); test(0,0,0);A. 0B. 1C. 2D. 3答案:B解析:test();不合法,至少有一个实参值。
8. (多选)每一个实在参数就是一个()。
A. 表达式B. 常量C. 变量D. 函数调用答案:ABCD解析:实在参数是在调用时传递给函数的参数,即传递给被调用函数的值。
实参可以是常量、变量、表达式、函数等,故本题选ABCD。
注:无论实在参数是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参,因此应预先用赋值、输入等办法使实参获得确定值。
9. 在函数的定义格式中,必须使用C++保留字的部分是()。
A. 类型修饰符B. 函数名C. 形式参数表D. 函数体答案:没有必须使用的部分解析:已知选项B、D错,又如下函数定义:Rect fun_Name(Rect &Rec){return 一个Rect对象;}其中: Rect是自定义的类,它可以是类型修饰符,也可以是形式参数表的参数类型,故ABCD均不选。
10. 关于全局变量,下列说法正确的是()。
A. 全局变量必须定义于文件的首部,位于任何函数定义之前B. 全局变量可以在函数中定义C. 要访问定义于其他文件中的全局变量,必须进行extern说明D. 要访问定义于其他文件中的全局变量,该变量定义中必须使用static加以修饰答案:C解析:全局变量是在函数外定义的变量,其作用域是从定义该变量的位置开始至源文件结束,要访问定义于其他文件中的全局变量,必须进行extern说明。
故选C。
11. 所有在函数中定义的变量,连同形式参数,都属于()。
A. 全局变量B. 局部变量C. 静态变量D. 寄存器变量答案:B解析:定义于函数内部(形式参数和函数体)的变量称为局部变量,故选B。
12. 如下程序的执行结果是()。
#include<iostream.h>void main(){static int a[]={1,7,3,9,5,11};int *p=a;*(p+3)+=4;cout<<*p<<','<<*(p+3);}A. 1,13B. 1,16C. 3,13D. 1,14答案:A解析:由程序第5行知,指针P指向一维数组a的首元素,所以*p=1;又*(p+3)+=4,即将下标为3的数组元素加4,所以*(p+3)=13。
故选A。
13.下列程序的输出结果是()。
#include<iostream.h>void main(){double d=3.2;int x,y;x=1.2;y=(x+3.8)/5.0;cout<<y<<endl;}A. 3B. 3.2C. 0D. 3.07答案:C解析:因变量x、y的类型为int,所以当1.2赋值给x时,x的取值为1,然后将(x+3.8)/5.0的值赋值给y,则y值为0,故选C。
14.在int a=3; *p=&a;中,*p的值是()。
A. 量a的地址值B. 无意义C. 变量p的地址值D. 3答案:D解析:指针p指向整型变量a,故*p的值与a相等,而a的值为3,故选D三、写出下列函数的功能或执行结果:1.void F(){int i,j,k,p;cin>>i>>j>>k;if(i<j) { p=i; i=j; j=p;}if(i<k) { p=i; i=k; k=p;}if(j<k) { p=j; j=k; k=p;}cout<<i<<’ ’<<j<<’ ’<<k;}函数的功能:答案:从键盘读入三个整数,将其由大到小排序后输出。
2.int S(const char* d){int p=0;while(*d++) p++;return p}函数的功能:答案:统计字符串常量d的长度。
3.int M(int a,int b){cin>>a>>b;return (a>=b)?a:b;}函数的功能:答案:从键盘读入两个整数比较两个数的大小,并返回数值大的那个数。
4.bool M(int a,int b){cin>>a>>b;return (a>=b)?1:0;}函数的功能:答案:从键盘读入两个整数比较两个数的大小,如果第一个数比第二个数大则返回真,否则返回假。
5.# include <iostream.h>int AD(int a[] , int n){int x=1;for (int i=0; i<n; i++)x*=a[i];return x;}void main(){int a[]={ 2, 8, 6, 5};cout <<AD(a , 4)<<endl;}程序的运行结果:答案:480四、编程题1. 编写一个函数,返回三个整数形参中的最小值。
答案:int f(int a,int b,int c){int m=a;if(m>b)m=b;if(m>c)m=c;return m;}2. 完成下面的函数,对有n个元素的数组a,使数组元素按逆序排列。
void inverse(int *a, int n){}答案:void inverse(int *a, int n){int i,*p;p=new int[n];for(i=0;i<=n-1;i++)p[i]=a[i];for(i=0;i<=n-1;i++)a[i]=p[n-i-1];delete []p;}3. 利用递归设计一个函数sumAll求数组a中size个元素的和,并实现该函数的调用。
函数原型为:int sumAll(int a[], int size);答案:#include<iostream.h>int sumAll(int a[], int size){if(size==1) return a[0];return a[size-1]+sumAll(a,size-1);}void main(){int d[]={1,2,3,4,5};cout<<sumAll(d,sizeof(d)/sizeof(d[0]));}4. 请编写一个函数int pattern_index(char substr[],charstr[]),该函数执行含通配符"?"的字符串的查找时,该通配符可以与任一个字符匹配成功。