1、有1、
2、
3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
编写程序:
#include
void main()
{
int a[]={1,2,3,4};
int i,j,k;
int sum=0;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
for(k=0;k<4;k++)
if((a[i]!=a[j])&&(a[j]!=a[k])&&(a[k]!=a[i]))
{
sum=sum+1;
printf("%d%d%d\n",a[i],a[j],a[k]);
}
}
printf("共有%d个\n",sum);
}
2、输入某年某月某日,判断这一天是这一年的第几天?
编写程序:
#include
void main()
{
struct Date
{
int year;
int month;
int day;
};
struct Date x;
int a[]={31,28,31,30,31,30,31,31,30,31,30,31};
int i;
int sum=0;
printf("请输入年月日:");
scanf("%d,%d,%d",&x.year,&x.month,&x.day);
for(i=0;i sum=sum+a[i]; sum=sum+x.day; if((((x.year%4==0)&&(x.year%100!=0))||(x.year%400==0))&&(x.month>2)) sum=sum+1; printf("这一天是该年的第%d天\n",sum); } 3、输出9*9口诀。 编写程序: #include void main() { int i,j; for(i=1;i<=9;i++) for(j=1;j<=i;j++) { printf("%d*%d=%d ",j,i,i*j); if(j==i) printf("\n"); } } 4、古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?编写程序: #include void main() { int f1=2,f2=2,f3; int i; printf("%5d\n%5d\n",f1,f2); for(i=0;i<30;i++) { f3=f1+f2; printf("%5d\n",f3); f1=f2; f2=f3; } } 5、判断101-200之间有多少个素数,并输出所有素数。 编写程序: #include void main() { int i,n,sum=0; for(n=101;n<200;n++) { for(i=2;i if(n%i==0)break; if(i==n) { sum=sum+1; printf("%d\n",n); } } printf("共有%d个素数\n",sum); } 6、输入两个正整数m和n,求其最大公约数和最小公倍数。 编写程序: #include void main() { int a,b,r,s; printf("请输入两个数:"); scanf("%d,%d",&a,&b); r=a%b; s=a*b; while(r!=0) { a=b; b=r; r=a%b; } s=s/b; printf("这两个数的最大共约数为%d\n",b); printf("这两个数的最小共倍数为%d\n",s); } 7、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。编写程序: #include #include void main() { char s; int a,b,c,d; a=b=c=d=0; printf("请输入一行字符:"); while((s=getchar())!='\n') { if((s>='A'&&s<'Z')||(s>='a'&&s<='z')) a++; else if(s==' ') b++; else if(s>='0'&&s<='9') c++; else d++; } printf("字母的个数为%d个\n空格的个数为%d个\n数字的个数为%d个\n其他为%d个\n",a,b,c,d); } 8、猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少? 编写程序: #include void main() { int sum=1; int i; for(i=1;i<10;i++) sum=2*(sum+1); printf("第一天共摘了%d个\n",sum); } 9、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。编写程序: #include void main() { double i,f1=2,f2=1,t; double sum=0.0; for(i=0;i<20;i++) { sum=sum+f1/f2; t=f2; f2=f1; f1=t+f2; } printf("前20项之和为%f\n",sum); } 10、求1+2!+3!+...+20!的和。 编写程序: #include void main() { int i; long sum=0,s=1; for(i=1;i<=20;i++) { s=s*i; sum=sum+s; } printf("sum=%d\n",sum); } 11、对10个数进行排序(要求从大到小)。编写程序: #include void main() { int i,j,k,t; int a[10]; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++) { k=i; for(j=i+1;j<10;j++) if(a[j]>a[k]) k=j; {t=a[k];a[k]=a[i];a[i]=t;} } for(i=0;i<10;i++) printf("%d",a[i]); printf("\n"); } 12、求一个4*4矩阵主对角线元素之和。 #include void main() { int a[4][4]; int i,j,sum=0; printf("请输入一个4*4矩阵:"); for(i=0;i<4;i++) { for(j=0;j<4;j++) scanf("%d",&a[i][j]); } for(i=0;i<4;i++) { for(j=0;j<4;j++) if(i=j) sum=sum+a[i][j]; } printf("对角线的元素之和为%d\n",sum); } 13、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。编写程序: #include void main() { int i,x; int a[80]={0,1,2,3,4,5,7,8,9}; printf("请输入一个数:"); int n=9; scanf("%d",&x); for(i=8;i>=0;i--) if(a[i]>=x) a[i+1]=a[i]; else break; a[i+1]=x; for(i=0;i<10;i++) printf("%d",a[i]); printf("\n"); } 14、将一个数组逆序输出。 #include void main() { int a[10]={0,1,2,3,4,5,6,7,8,9}; int i; for(i=0;i<10;i++) a[i]=i; for(i=9;i>=0;i--) printf("%d",a[i]); printf("\n"); } 15、打印出杨辉三角形(要求打印出10行) 编写程序: #include void main() { int a[10][10]; int i,j; for(i=0;i<10;i++) { a[i][i]=1; a[i][0]=1; } for(i=2;i<10;i++) for(j=1;j<=i-1;j++) a[i][j]=a[i-1][j]+a[i-1][j-1]; for(i=0;i<10;i++) { for(j=0;j<=i;j++) printf("%5d",a[i][j]); printf("\n"); } } 16、输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。编写程序: #include void main() { int i,j=0,k=0,max,min,t; int a[10]={1,3,5,7,9,2,4,0,6,8}; max=min=a[0]; for(i=0;i<10;i++) if(max { max=a[i]; j=i; } {t=a[j];a[j]=a[0];a[0]=t;} for(i=0;i<10;i++) if(min>a[i]) { min=a[i]; k=i; } {t=a[k];a[k]=a[9];a[9]=t;} for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); } 17、写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。编写程序: #include #include void main() { int sum=0; int i; char a[80]; gets(a); for(i=0;a[i]!='\0';i++) sum=sum+1; printf("长度为%d\n",sum); } 18、编写主函数,当输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1!+1/3!+...+1/n! 编写程序: #include void main() { int n; double sum=0.0; double os(int n); double js(int n); scanf("%d",&n); if(n%2==0) printf("%5.2f\n",os(n)); else printf("%5.2f\n",js(n)); } double os(int n) { int i; double sum=0.0; for(i=1;i<=n/2;i++) sum=sum+1.0/(2*i); return sum; } long jc(int n) { int i; long s=1; for(i=1;i<=n;i++) s=s*i; return s; } double js(int n) { int i; long s; double sum=0.0; for(i=0;i<((n+1)/2);i++) { s=2*i+1; sum=sum+1.0/jc(s); } return sum; } 19、已知一个学生的信息有两项:学生姓名,学生成绩,从键盘上输入10个学生的信息,然后按学生成绩从小到大排序(排序方法不限),最后输出排序过的学生信息。编写程序: 20、编程计算从N各元素取出M个元素的组合数 编写程序: 21、编写程序,输入三角型的三条边长,求其面积。注意:对于不合理的边长输入 要输出数据错误的提示信息。 编写程序: 22、按要求编写程序: (1)编写求N阶乘的函数JACK() (2)编写判断素数的函数ISPRIME(); (3)编写主函数,输入一个整数N,调用ISPRIME(),如果是素数就调用JACK ()求出N的阶乘并输出,否则显示该数不是素数。 编写程序: 23、编写程序计算下列序列的值: 要求最后一项小于0.001时、或者当N=20时尚未达到精度要求,则停止计算。 编写程序: 24、利用结构: struct complx { int real; int im; }; 编写求两个复数之积的函数cmult,并利用该函数求下列复数之积: ⑴(3+4i)×(5+6i) ⑵(10+20i)×(30+40i 编写程序: 25、搜索一个字符在字符串中的位置(例如:’I’在”CHINA”中的位置为3)。如果没有搜索到,则位置为-1。 编写程序: 26、按要求编写程序: 假设学生有:学号,姓名,年龄,四门课成绩,总分等信息请先定义结构体student来描述学生信息。 (1)编写输入n个学生信息存入数组a的函数void shur(studen a[],int n); (2)编写输出数组a中n个学生的函数void shuc(student a[],int n); (3) 编写del函数的作用是删除数组a中的指定学生x,n为数组a的学生个数。void del(student a[],int,n, student x) (4) 编写查找search函数的作用是查找数组a中的指定学生元素x,n为数组a的学生个数,如果找到,函数返回找到学生的序号,否则函数返回-1, int search(student a[],student x) (5)编写插入元素insert函数的作用是将指定学生x插入到数组a中的指定位置w, n为数组a 的学生个数。void insert(student a[],int,n,student x,int w) (6)编写排序sort函数,其功能是,按学号排序,void sort(student a[],int,n) (7)编写主函数,调用void shur(student a[],int n)输入n个学生信息存入数组,然后调用shur(student a[],int n)输出;实现删除学生信息操作并显示,实现查找学生操作,显示查找结果,实现插入学生操作,并显示结果实现按学号排序并显示。(提示,可将n设置为全局变量) 编写程序: 实验一C语言的运行环境的使用 一、目的与要求 1. 了解Windows系统下C语言的运行环境,熟悉C程序调试、运行的基本操作方法。 2. 熟练掌握编辑、编译、连接和运行C程序的方法。 3. 通过运行简单的C程序,初步了解C源程序的特点。 4. 初步理解C语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运 行结果的基本输出方法。 二、实验例题 在C语言运行环境下,按以下例题要求完成程序的编辑、编译、连接和运行,直至取得正确的运行结果。 【例1】编程实现在屏幕上显示如下三行文字 Hello, world ! Wolcome to the C language world! Everyone has been waiting for. (1)输入如下程序: #include 1、定义一个函数int fun(int a,int b,int c) ,它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰返回2, —般三角形返回1,若不能构成三角形返回0。 #include 2、编写一个程序,将两个变量的值交换,例如变量a中的值原为 3 , b中的值原为8,程序运行后a中的值为8, b中的值为3。 #include 《C语言程序设计》作业参考答案 作业一 C语言概述 一、选择题: 1-5 ACDCB 二、编程题: main() { printf(“****************************************\n”); printf(“ Hello,world! \n”); printf(“****************************************\n”); } 作业二程序的灵魂——算法 一、填空题: 1.确定性有效性有零个或多个输入有一个或多个输出 2.顺序结构选择结构循环结构 3.函数 作业三数据类型、运算符与表达式 一、选择题: 1-5 BDDAB 6-10 BCAAB 11-15 BCADC 16-20 DACCA 21-25 ADDBA 26-30 DDDDD 作业四顺序结构 一、选择题: 1-5 BCDDD 6-10 BDADD 二、填空题: 1.【31.415920,3.14159e+01】 2.【c=k】 3.【a=1,b=空格,c=2】 4.【a=12,b=345】 5.【c=A】 作业五选择结构 一、选择题:1-5 ADCBC 6-10 BBBBA 11-15 DBAAC 16-17 CB 二、填空题: 1.【-1】 2.【3】 3.【4】 4.【11】 5.【97或'a'】 作业六循环结构 一、选择题: 1-5 CBAAC 6-10 CBCCB 11-15 DBDDB 16-20 BCAAC 21-25 CDBBB 作业七数组 一、选择题: 1-5 CDDAC 6-10 CCDBC 11-15 DDBCA 16-20 DCBDD 21-23 BDB 二、填空题: 1. LBLMNP 2. SW* 3. mo 4. a=2,b=1 作业八函数 一、选择题: 1-5 AAACA 二、填空题: 1.【编程中的main( )函数】 2.【函数说明部分】和【函数体】 3.【–125= –5*5*5】 4.【void add (float a, float b)】【float add (float a, float b)】 5.【i=7; j=6; x=7 i=2; j=7; x=5】 6.【111】 三、编程题: 1.参考代码 main() { int score,temp,log; char grade; log=1; while (log) { printf(“enter score:”); scanf(“%d”,&score); if ((score>100)||(score<0)) printf(“\n error,try again! \n”); else log=0; } if (score==100)temp=9; else temp=(score-score%10)/10; switch(temp) { case 0:case 1:case2: case 3:case 4:case 5:grade=’E’;break; case 6:grade=’D’;break; case 7:grade=’C’;break; case 8:grade=’B’;break; case 9:grade=’A’; } printf(“score=%d,grade=%c\n”,score,grade); } 2.解:设计以高度n为参数的函数trangle(int n),打印等边三角形。参考程序如下: #include C语言程序设计 期末考试试题及其答案 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( ) A、C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件进行操作 D、C语言移植性好 2、以下不正确的C语言标识符是( ) A、ABC B、abc C、a_bc D、ab.c 3、一个C语言程序是由( ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性 5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( ) A、int B、float C、double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后( #include 第一章作业 答案:一,59,14.4,28.e 二1小题,59 2,15 一、将数89、20.25、40.875用十六进制表达 二、填空 1.在C语言中,数值常量0x3b十进制值是。 2.字母f ASCII码为十进制数___________。 第三章作业 一、选取题: 1、下列变量名中, B 是非法。 A) Tom B) 3n C) little_boy D) c10 2、若有如下类型阐明 char a; int b; float c; double d;则表达式a*b+d-c成果类型是(A ) A)float B)char C)int D)double 3、若x为整型,则逗号表达式(x=4*5,x*5),x+25成果及x值分别是(C )对的答案是100,45 A)45 20 B)125 20 C)125 45 D)100 100 4、假设所有变量均为整型,则表达式(a=3,b=2,b++,a+b)值是 C 。 A) 5 B) 8 C) 6 D)7 5、已知c2为字符型,则执行语句c2=’E’+’8’-‘A’后,c2值为 C 。 A) 12 B) 11 C)不拟定值D) 10 6、设a为double变量,b为int型变量,c为字符型变量,则a+b+c为( C )型 A) int B) float C) double D) char 7、C语言中不可用作标记符字符有( C ) A下划线 B % C数字 D字母 8、下面四个选项中,均是合法整型常量是(D ) A)160 B)- 0xcdf C)- 01 D)0x - 0xffff 01a 0668 2e5 9、设a为字符变量,b为int型变量,c为double型变量,则a*b+c为( C )型 A. int B. float C. double D. char 10.若a是int型变量,则表达式(a=4*5,a*2),a+4值为( C ) A. 20 B.22 C. 24 D. 44 第四章作业 一、选取题 1、若x为int型变量,则执行如下语句后x= C 。 x=5; x-=x-=x+x; A. -10 B. -5 C.0 D.10 2、在printf()函数格式阐明符中,字符型数输出格式阐明符是 D 。 《C语言程序设计》综合练习题与答案 一、简要问答下列问题 1.什么是源程序? 2.C语言源程序的编译过程是怎样的? 3.简述C语言的特点 4.C/C++程序都是由函数组成的,其中最主要的、不可缺少的函数是哪一个?举例说明该函数的结构。 5.函数的返回值是通过什么语句来实现的,它的格式是什么? 6.在编写C程序时,为什么要把库函数的头文件包含到用户源程序中?如何把用户的头文件包含到用户源程序? 7.在计算机中,存储的数据为什么要分成多种不同的数据类型? 8.什么是常量?什么是变量? 9.C语言的五种基本数据类型有哪些?它们的关键字和所占的字节数分别是什么? 10.判断标识符是否合法的三条规则是什么? 11.什么是C语言的关键字?关键字对标示符有何影响? 12.全局变量和局部变量有什么区别? 13.什么是空语句,什么是语句块? 14.结构化程序设计的三种基本结构是什么? 15.三种循环语句各有什么特点? 16.什么叫多重循环结构? 17.Continue语句与break语句有什么区别? 18.字符与字符串有什么区别?‘b’与“b”相同吗? 19.什么是数组?一维数组的定义形式是怎样的? 20.字符串的结束标记是什么? 21.什么是按位操作?C语言对按位操作有哪些要求? 22.什么是指针?指针的两个操作符表示什么意义? 23.指针和数组有什么关系? 24.指针有那几种算术运算?说明指针变量的算术运算与一般变量的算术运算有何区别? 25.函数是由哪三部分组成的?函数定义的一般形式是什么? 26.函数原型是什么情况下使用?有什么作用? 27.形参和实参有什么关系,函数的两种调用方式是什么? 28.什么是函数的递归调用? 29.什么是函数指针?说明定义函数指针的一般形式。 30.什么是内部函数?什么是外部函数? 31.C语言的四种用户定义数据类型是什么? 32.C系统提供的三种主要预处理功能是什么? 33.什么是文件包含? 34.什么是文件?什么是流? 1、分析下面程序: # include 因为int表示整型,%c是输出字符,a的ASCLL代码是97,b的是98,所以输出 c1=a,c2=b.%d是表示输出十进制整型,所以输出c1=97,c2=98 2、用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。 问在键盘上如何输入? #include 一.填空题 26.C#源程序的后缀名为______.cs________。 26.C#中每个int 类型的变量占用____4___个字节的内存。 26.C#的每行语句以________分号_______结尾。 26.布尔型的变量可以赋值为关键字_____true__________或_____false_________。 26.如果int x的初始值为5,则执行表达式x - =3之后,x的值为_____2_________。 26.do...while语句在执行循环体_____之后________测试语句是否满足循环条件。 26.关键字_______class________表示一个类的定义。 26.如果一个类包含一个或多个抽象方法,它是一个_________抽象_____________类。 26.try块运行后,总是会执行_________finally_____________块中的代码。 26.一个数组如果有两个索引值,那么它是__________二维__________数组。 二.单项选择题 1.在对SQL Server 数据库操作时应选用()。 A、SQL Server .NET Framework 数据提供程序; B、OLE DB .NET Framework 数据提供程序; C、ODBC .NET Framework 数据提供程序; D、Oracle .NET Framework数据提供程序; 2.下列选项中,()是引用类型。 A、enum类型 B、struct类型 C、string类型 D、int类型 3.C#的数据类型有() A、值和调用类型; B、值和引用类型; C、引用和关系类型; D、关系和调用类型 4.下列描述错误的是() A、类不可以多重继承而接口可以; B、抽象类自身可以定义成员而接口不可以; C、抽象类和接口都不能被实例化; D、一个类可以有多个基类和多个基接口; 5.下列关于构造函数的描述正确的是() A、构造函数可以声明返回类型。 B、构造函数不可以用private修饰 C、构造函数必须与类名相同 D、构造函数不能带参数 6.int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; 那么myArray3[2][2]的值是( )。 A、9 B、2 C、6 D、越界 7.接口是一种引用类型,在接口中可以声明(),但不可以声明公有的域或私有的成员变量。 A、方法、属性、索引器和事件; B、方法、属性信息、属性; C、索引器和字段; D、事件和字段; 8.在https://www.wendangku.net/doc/c317138984.html,中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误 的是()。 A、insert、update、delete等操作的Sql语句主要用ExecuteNonQuery()方法来执行; B、ExecuteNonQuery()方法返回执行Sql语句所影响的行数。 C、Select操作的Sql语句只能由ExecuteReader()方法来执行; D、ExecuteReader()方法返回一个DataReder对象; 9.Winform中,关于ToolBar控件的属性和事件的描述不正确的是( )。 A、Buttons属性表示ToolBar控件的所有工具栏按钮 B、ButtonSize属性表示ToolBar控件上的工具栏按钮的大小,如高度和宽度 C、DropDownArrows属性表明工具栏按钮(该按钮有一列值需要以下拉方式显示)旁边是否显示下箭 头键 D、ButtonClick事件在用户单击工具栏任何地方时都会触发 《C 语言程序设计》课程作业 适用层次:专升本 培养类型:理工科专业 专业班级: 姓名: 学号: 作业要求:题目可打印,答案要求手写,考试时交作业。 第1次: 1.编写程序,分别计算1到100之间的奇数之和及偶数之和,并输出。 2.输入三角形的三条边a 、b 、c ,如果能构成一个三角形,则计算并输出三角形的周长和面积(结果保留两位小数);否则输出“无效的边长!”。 三角形面积计算公式为: s=))()((c x b x a x x ---,其中,x=(a+b+c)/2。 3.输入一个整数,求它的各位数字之和。例如,123的各位数字之和为6,-63的各位数字之和为9。 4.使用格里高利公式求π的近似值,精确到最后一项的绝对值小于10-6 。 +-+-=71 513114π …… 5.中国古代数学史上著名的“百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三,鸡雏三,值钱一。百钱买百鸡,问翁、母、雏各几何? 6.编写程序,键盘输入正整数n (0 1.从键盘上输入两个复数的实部与虚部,求出并输出它们的和、积、商。 2.以下程序的功能如(图1)。 |x+1| x<0 f= 2x+1 0≤x≤5 sinx+5 x>5 3.输入三个整数x,y,z,请把这三个数由小到大输出。 4.统计读入的整数数据中大于零的整数个数和小于零的整数个数。用输入零来结束输入,程序中用变量i统计大于零的整数个数,用变量j统计小于零的整数个数。 5.以每行5个数输出500以内能被7或17整除的偶数,并求出其和。 6.以下程序不借助任何中间变量把a、b的值进行交换。 7.输出斐波那契(Fibonacci)数列(1,1,2,3,5,8,13……)的前20项。 8.求 1-3+5-7+……-99+101 的值。 9.输出如下形式的乘法表。 1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9 …… 9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 10.实现求解下面的式子的结果,请填空将程序补充完整。 s=1*2+2*3+3*4+…+20*21。 11.以下程序的功能是分别求出一批非零整数中的偶数、奇数的平均值,用零作为终止标记。 12.求任一整数x的各位数字之和。 13.以下程序的功能是求两个非负整数的最大公约数和最小公倍数。 14.以下程序的功能如(图1)。 15.算式:?2*7?=3848中缺少一个十位数和一个个位数。编程求出使该算式成立时的这两个数,并输出正确的算式。 16.输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行。 17.下面的程序是求1!+3!+5!+……+n!的和. 18.请编程序打印如下图形。 $ $$ $$$ $$$$ $$$$$ 19.打印出如下图案(菱形) * *** ***** ******* ***** *** * 20.从键盘上输入20个元素的值存入一维数组m中,然后将下标为(0. 2. 4. 6. 8. 10…… 18)的元素值赋值给数组n,最后输出数组n的内容。请填空 21.产生25个[50,90]上的随机整数,求出其中能被5整除的所有数的和。 22.从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。 23.以下程序的功能是将一个数组中的元素按逆序存放。 24.产生15个[20,80]上的随机整数,用顺序法(比较法)按从小到大排序后输出。 25.以下程序是用选择法对10个整数按升序排列 26.以下程序的功能是产生10个[30,90]区间上的随机整数,然后对其用选择法进行由小到大的排序。 27.以下程序的功能是产生并输出如下形式的方阵。 1 2 2 2 2 2 1 3 1 2 2 2 1 4 3 3 1 2 1 4 4 3 3 3 1 4 4 4 3 3 1 5 1 4 4 3 1 5 5 5 1 4 1 5 5 5 5 5 1 28.以下程序的功能是产生并输出杨辉三角的前七行。 1 1 1 1 2 1 C语言程序设计综合练习题 一、选择题 C(1)以下叙述中正确的是 A)C语言比其他语言高级 B)C语言可以不用编译就能被计算机识别执行 C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D)C语言出现的最晚,具有其他语言的一切优点 a.错误,c语言是由B语言发展过来,是低级语言向高级语言发展的过渡语言,而且更偏向底层~~java和C#才算是高级语言 b、明显错误,C语言是编译型语言,需要编译执行 d、这就错的更离谱了,现在微软都在研制F#,C怎么可能最晚?再说,java和c#都比它晚了,再说一下,C语言的主要优点是简洁紧凑、可移植性强,由指针这一特色,更能操作底层,它没有java的跨平台性,没有C#的通俗性。。。 最后,说下C,早期的C在贝尔实验室研制出来的,用于做数值计算和一些数学模型的求解,所以更接近自然语言和数学语言 B(2)在一个C语言程序中 A)main()函数必须出现在所有函数之前 B)main()函数可以在任何地方出现 C)main()函数必须出现在所有函数之后 D)main()函数必须出现在固定位置 B(3)下列关于C语言用户标识符的叙述中正确的是 A)用户标识符中可以出现下划线和中划线(减号) B)用户标识符中不可以出现中划线,但可以出现下划线 C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头 D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头 A不能出现中划线 C下划线可以放在开头 D数字不能放开头 D(4)下列关于单目运算符++,--的叙述中正确的是 A)它们的运算对象可以是任何变量和常量 B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量 C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量 D)它们的运算对象可以是char型变量、int型变量和float型变量 A(5)有以下程序段: int m=0,n=0;char c=′a′; scanf(″%d%c%d″,&m,&c,&n); printf(″%d,%c,%d\n″,m,c,n); 若从键盘上输入:10A10<回车>,则输出结果是 A)10,A,10 B)10,a,10 C)10,a,0 D)10,A,0 格式字符%d用于输入整数,%c用于输入字符。在输入时,系统把第一个10作为整数10赋给m,把随后的A作为字符赋值给c,后面的10作为整数赋给n,最后输出的结果为10,A,10 printf语句中,屏幕输出时所显示的间隔符应与输出格式项之 第一章作业 答案:一,59,14、4,28、e 二1小题,59 2,15 一、将数89、20、25、40、875用十六进制表示 二、填空 1、在C语言中,数值常量0x3b得十进制值就是。 2、字母f得ASCII码为十进制数___________。 第三章作业 一、选择题: 1、下列变量名中, B 就是非法得。 A) Tom B) 3n C) little_boy D) c10 2、若有以下类型说明 char a; int b; float c; double d;则表达式a*b+d-c得结果类型就是( A ) A)float B)char C)int D)double 3、若x为整型,则逗号表达式(x=4*5,x*5),x+25得结果及x得值分别就是(C )正确答案就是100,45 A)45 20 B)125 20 C)125 45 D)100 100 4、假设所有变量均为整型,则表达式(a=3,b=2,b++,a+b)得值就是 C 。 A) 5 B) 8 C) 6 D)7 5、已知c2为字符型,则执行语句c2=’E’+’8’-‘A’后,c2得值为 C 。 A) 12 B) 11 C)不确定得值D) 10 6、设a为double变量,b为int型变量,c为字符型变量,则a+b+c为( C )型 A) int B) float C) double D) char 7、C语言中不可用作标识符得字符有( C ) A下划线 B % C数字 D字母 8、下面四个选项中,均就是合法整型常量得就是(D ) A)160 B)- 0xcdf C)- 01 D)0x - 0xffff 01a 0668 2e5 9、设a为字符变量,b为int型变量,c为double型变量,则a*b+c为( C )型 A、int B、float C、double D、char 10、若a就是int型变量,则表达式(a=4*5,a*2),a+4得值为( C ) A、20 B、22 C、24 D、 44 第四章作业 一、选择题 《C语言程序设计》各章练习题 2016年12月汇编 第1-3章C语言基础、编程规范、顺序结构程序设计 编程题1:设a和b均为int型变量,编写一个程序,通过键盘读入a,b的值,然后交换a,b的 值。要求屏幕显示“输入2个整数,用空格隔开”的提示语句,并且输出交换前a,b的值,交 换后a,b的值。 个变量,实现交换;)允许定义第3附加要求:(1 个变量,实现交换。)不允许定义第3 (2章选择结构程序设计第4的值。的值,输出y编程题2:根据下列函数关系写程序, 要求提示输入x y的值。x编程题2:根据下列函数关系写程序,要求提示输入的值,输出22b(只 输出+bx+c=0方程的解。,输出“不予3:求 ax的求解结果,小于0-4ac>=0编程题”)求 ?,如n编程题4:编程计算为负数,不予计算,直接返 解!循环结构程序设计第5章n 回。。要求提示键盘输入n i1i?,不予计算。小于0!,要求n从键盘输入,如n5编程题:编程序 计算n n是否是素数。,判断编程题6:从键盘输入一个数n55个偶数一行,每个数占6:编写程 序输出1~100之间的偶数,要求屏幕显示时编程题位,右对齐。,并将其输出。1000之间有 多少个数其各位数字之和是5:编程计算编程题7100到的各位数n11(整数相除)所得到的商 等于编程题8:求满足下列条件的三位数n,它除以字的平方和,且其中至少有二位数字相同 的数。如:c≠d且。,和abcd具有如下特性:ab×cd=ba×dc其中a≠b有一些十进制整数对9 编程题:值,并按上述等式的格式输,mn之间满足上述等式所有。请编程找出12×42=21× 2430~50 表示)*(×用出。. 编程题10:从键盘上输入一个整数,然后把这个整数的各位逆序输出。例如,输入123456,输 出654321。 第6章数组 编程题11:有一个已排好序的数组int a[11]={-5,-3,0,6,8,12,16,28,66,88};,要求输入一个数后, 按原来排序的规律将它插入数组中。 编程题12:输入一个字符串(字符个数为小于100),统计其中字母、数字、空格以及其它符号 的个数,并将大写字母改为小写字母,输出改变后的字符串。(提示:A的ASCII值为65,a 的ASCII值为97) 编程题12:输入一行字符(字符数组的个数小于100),统计其中字母、数字以及其它符号的个 数。(注:数组限定字符个数小于100) 编程题12:输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。(注:字 符个数不受限制) 第7章函数 编程题13:编写一个子函数int fun ( int n),其功能是判断整数n是否为素数,n是素数,返 回值为1;n不是素数,返回值为0。调用该函数,将100~200之间的素数全部输出,要求屏幕 上每个数占4位,每行显示5个素数,左对齐。(循环、条件分支、子函数、变量的值传递、屏 幕显示格式控制) 程序设计基础复习题答案 一、填空题 1、C语言所提供的实型变量分为两种类型,它们是float和double 。 2、一个C源程序中至少应包含一个主函数或main函数。 3.已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=’a’+’8’-’3’ 4.在标准C 5.对以下说明:int c[10] = {116, 125, 218, 312, 100, 40, 13, 67, 186}; c[4]的值为 100 。 6.在C语言中,引用数组元素时,引用数组元素时,其数组下标的数组类型允许是整型常量或整型表达式。 7.设y为int 型变量,请写出描述“y是偶数”的表达式 (y%2)==0 。 8.设int i=0,j=1,k=2,a=3,b=4; 执行表达式(a=i C语言程序设计课程作业_A 一、单选题 1. (4分)设有以下定义int k=7, x=12;,则能使值为3的表达式是() ? A. x%=(k%=5) ? B. x%=(k-k%5) ? C. x%=k ? D. (x%=k)-(k%=5) 答案D 解析C语言程序设计/数据类型与运算/整型算术表达式 2. (4分)以下程序的输出结果是? #include main() { int x=020,y=0x20,z=20; printf('%d,%d,%d ', x,y,z); } ? A. 20,20,20 ? B. 32,16,20 ? C. 16,32,20 ? D. 20,32,20 答案C 解析C语言程序设计/数据类型及运算 3. (4分)C语言中while和do while循环的主要区别是( ) ? A. do-while的循环至少无条件执行一次 ? B. while循环控制条件比do-while的循环控制条件严格 ? C. do-while允许从外部转入到循环体内 ? D. do-while的循环体不能是复合语句 答案A 解析C语言程序设计/循环程序设计/while语句与do-while语句 4. (4分)执行语句scanf('%d,%d',&m,&n);使m和n的值分别为1和2,正确输入是( ) ? A. 1 ? B. 1 2 ? C. 1,2 ? D. 12,2 答案C 解析C语言程序设计/顺序程序设计/整型数据的格式输入 5. (4分)sizeof(float)是( ) ? A. 一个双精度型表达式 ? B. 一个整型表达式 ? C. 一种函数调用 ? D. 一个不合法的表达式 答案B 解析C语言程序设计/数据类型与运算/实型变量存储 6. C++程序设计模拟题 三、用C++语言描述下列命题 1、A小于B并且A大于C 2、A和B中有—个小于C 3、A是奇数 4、B和C中较大者与A相等 5、年份Y是闰年 四、写出下列程序的执行结果 #include swap2(&a,&b); cout< voidprint(intw) { inti; if(w!=0) { print(w-1); for(i=1;i<=w;i++) cout< C语言程序设计习题(编程类) 1、从键盘输入任意的字符,按下列规则进行分类计数。 第一类'0','1','2','3','4','5','6','7','8','9' 第二类'+','-','*','/','%','=' 第三类其它字符 当输入字符'\'时先计数,然后停止接收输入,打印计数的结果。 参考答案: #include 《C程序设计》作业内容
C语言程序设计练习题(含程序及参考答案)
C语言程序设计作业参考答案
C语言程序设计期末考试试题(含答案)
C程序设计作业样本
《C语言程序设计》综合练习题与答案
c程序设计作业
(完整版)C程序设计语言复习题(试题及答案版)
C语言程序设计-作业与答案
C程序设计练习题1
C语言程序设计综合练习题
C程序设计作业
C语言程序设计各章练习题
C程序设计复习题答案
C语言程序设计课程作业
C程序设计综合练习题读程序写结果题
C语言程序设计习题题(编程题)