c语言复习题(49题)

合集下载

C语言复习60题

C语言复习60题

01计算机本身最擅长的能力是?A、推理B、想像C、重复D、分析正确答案: C、重复。

02 计算机(CPU)能够直截了当运行人类编写的程序A、√B、×正确答案: B、×、03编程语言是与计算机交谈的语言A、√B、×正确答案: B、×。

04 关于C语言,以下讲法错误的有:A、C语言是与Unix操作系统一同发展起来的B、C语言不能写图形界面的软件C、C语言一般是编译执行的D、C语言诞生于1970年代正确答案: B、C语言不能写图形界面的软件、06 IDE的中文翻译是什么?正确答案是:集成开发环境、07 给定:int a,b; 以下哪些scanf的使用是正确的?A、scanf("%d”,&a); scanf(”%d",&b);B、scanf(”%d %d”, &a, &b);C、scanf("%d, %d", &a,&b);D、scanf("%d%d”, a, b);正确答案: A、scanf("%d”,&a); scanf(”%d", &b);。

B、scanf(”%d%d", &a, &b);、C、scanf(”%d,%d”,&a,&b);、08 以下哪些是有效的变量名?A、mainB、4everC、monkey—kingD、__int正确答案:A、main。

D、__int。

09给定:inta,b; scanf("%d %d", &a, &b);则以下哪些输入方式是正确的?A、1 2B、1,2C、1(回车)2D、1、2正确答案:A、1 2。

C、1(回车)2、10给定以下代码段:inta,b=0;则a的初始值是0A、√B、×正确答案: B、×、11写出下式的运算结果:10/3、0*3 正确答案是:10、0。

12写出下式的运算结果:10/3*3、0正确答案是:9、0。

C语言考试复习题

C语言考试复习题

一、选择题1.在每个 C 程序中都一定包括有这样一个函数,该函数的函数名为。

A. mainB. MAINC. nameD. function2.在以下对于 C 语言的说明的表达中,不正确的选项是A.说明可用 "/*" 、"*/" 形式表示,也可用 "//" 形式表示。

B.编译器在编译一个程序时,将跳过说明,不对其进行办理C.编译器在编译一个程序时,可发现说明中的单词拼写错误D.程序中说明的多少不会影响所生成的可履行文件的长度3.以下表达不正确的选项是。

A.在 C 程序中,严格划分大小写字母B.一个 C 源程序有且仅有一个main 函数C.在 C 程序中,说明只好位于一条语句的后边D.一个 C 程序老是从 main 函数开始履行4.以下合法的表记符为A. abde+B. #KDJFC. 67KDJD. DK3_5.对于字符串和字符的关系正确的选项是A.“A”与’A’是同样的B.字符串是常量,字符是变量C.“A”与’A’是不一样的D.“A ”与“ A”是同样的6.下边对于语句的说法正确的选项是A.下边这两段程序的履行成效是一致的if (x>y){z=x; s=z*z;} else{z=y;s=1/(z*z);}if (x>y)z=x; s=z*z; elsez=y;s=1/(z*z);B.空语句是只有一个分号的语句,它其实什么也不干C.语句的构成不必定需要分号D.语句的书写对程序的运转不起作用,所以能够随意写都能够7.以下各表记符中,合法的用户表记符组为。

A.PAd,P#d,b-b,abc,_0123,ssipedB.cin,a10,CPP,float,del_word,signedC.void, max,hiy, <fr>,list ,*jerD.a,temp, _isw,INT ,keep,wind8.字符串“ ”E””的长度是。

C语言复习题

C语言复习题

《C语言》复习题一、选择题(1) 有如下程序main(){ int y=3,x=3,z=1;printf(“%d %d\n”,(++x,y++),z+2);}运行该程序的输出结果是: DA) 3 4 B) 4 2 C) 4 3 D) 3 3(第三章输出语句)(2)当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是: CA)c=b=a;B)(a=c)‖(b=c);C)(a=c)&&(b=c);D)a=c=b;(第四章关系表达式)(3)在以下一组运算符中,优先级最高的运算符是: CA)<= B)=C)% D)&&(第四章运算符的优先级)(4) 请选出合法的C语言赋值语句: BA) a=b=58 B) i++;C) a=58,b=58 D) k=int(a+b)(第三章赋值语句)(5)以下说法中正确的是: CA)#define和printf都是C语句B)#define是C语句,而printf不是C)printf是C语句,但#define不是D)#define和printf都不是C语句(第三章语句概述)(6)若有以下定义: Dchar a; int b;float c; double d;则表达式a*b+d-c值的类型为A) float B) int C) char D) double(第二章类型混合运算)(7)若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是: CA)1 B)2C)2.0 D)2.5(第二章类型混合运算)(8)有以下程序#includemain(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是: AA) 2,1 B) 3,2 C) 4,3 D) 2,-1(第四章逻辑运算符)(9) 以下程序运行后,输出结果是: CA) cde B) 字符c的ASCII码值C) 字符c的地址D) 出错main(){ char *s="abcde";s+=2;printf("%ld\n",s);}(第九章指针的概念)(10)若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为:DA)a<>0 B)!aC)a=0 D)a(第4章条件表达式)(11)有如下程序段,其输出结果是什么: Amain( ){int a=1,b=3,c=5;if (c=a+b)printf ("yes\n");else printf("no\n"); }A) yes B) no C) yes\n D) no\n(第4章条件语句)(12) 假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表1示代数式----- 的表达式是: DabcA) 1/a*b*cB) 1/(a*b*c)C) 1/a/b/(float)cD) 1.0/a/b/c(第二章类型混合运算)(13)若i ,j已定义为int类型,则以下程序段中内循环体的总的执行次数是: Afor (i=5;i;i--)for(j=0;j<4;j++){...}A)20 B)15C)24 D)16(第五章for循环语句)(14)下面哪个程序段不是死循环: C(A) a=0; sum=0;while(a=1){sum=sum+a;a++;}(B) {int I,sum=0;For(i=1;i<=3;sum++)sum+=I;}(C) sum=0;for(i=1;i<10;i++);sum=sum+i;(D) sum=0;for(i=1; ;i++)sum=sum+i;(第五章for循环语句)15、设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是: DA)*((*prt+1)[2]) B)*(*(p+5))C)(*prt+1)+2 D)*(*(a+1)+2)16、不能把字符串:Hello!赋给数组b的语句是: BA)char b[10]={'H','e','l','l','o','!'};B)char b[10];b="Hello!";C)char b[10];strcpy(b,"Hello!");D)char b[10]="Hello!";17、设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是: DA)*((*prt+1)[2]) B)*(*(p+5))C)(*prt+1)+2 D)*(*(a+1)+2)18、请选出以下语句的输出结果: Aprintf("%d\n",strlen("\t\"\065\xff\n"));A) 5 B) 14 C) 8 D) 输出项不合法,无正常输出(19)假定所有变量均已正确说明,下列程序段运行后x的值是: Ba=b=c=0;x=35;if(!a)x--;else if(b);if(c)x=3;else x=4;A)34 B)4 C)35 D)3(第四章if语句)(20) 运行以下程序后,如果从键盘上输入china#<回车>,则输出结果为: CA) 2,0 B) 5,0 C) 5,5 D) 2,5#include<stdio,h>main(){ int v1=0,v2=0;char ch;while((ch=getchar())!='#')switch(ch){ case 'a';case 'h';default; v1++;case '0'; v2++;}printf("%d,%d\n",v1,v2);}(第四章switch语句)(21) 执行以下程序段时: AA) 循环体将执行一次B) 循环体将执行两次C) 循环体将执行无限次D) 系统将提示有语法错误x=-1;do {x=x*x; } while(! x);(第五章do_whule语句)(22)执行下面的程序后,a的值为: Bmain(){ int a,b;for (a=1,b=1;a<=100;a++){ if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}}A)7 B)8C)9 D)10(第5章break,continue 语句)23) 下面能正确进行字符串赋值操作的语句是: CA) char s[5]={"ABCDE"}; B) char s[5]={'A','B','C','D','E'};C) char *s;s="ABCDEF"; D) char *s; scanf("%s",s);(第6章字符数组的定义;第9章字符串指针)(24)不能把字符串:Hello!赋给数组b的语句是: BA)char b[10]={'H','e','l','l','o','!'};B)char b[10];b="Hello!";C)char b[10];strcpy(b,"Hello!");D)char b[10]="Hello!";(第6章字符数组的使用)(25)函数调用:strcat(strcpy(str1,str2),str3)的功能是: CA)将串str1复制到串str2中后再连接到串str3之后B)将串str1连接到串str2之后再复制到串str3之后C)将串str2复制到串str1中后再将串str3连接到串str1之后D)将串str2连接到串str1之后再将串str1复制到串str3中(第6章字符串处理函数)(26)给出以下定义:char x[ ]="abcdefg";char y[ ]={'a','b','c','d','e','f','g'};则正确的叙述为: CA) 数组X和数组Y等价B) 数组x和数组Y的长度相同C) 数组X的长度大于数组Y的长度D) 数组X的长度小于数组Y的长度(第6章字符数组的定义)(27)以下程序的输出结果是: DA)AfghdEFG B)Abfhd C)Afghd D)Afgd#includemain( ){ char *p1,*p2,str[50]="ABCDEFG";p1="abcd";p2="efgh";strcpy(str+1,p2+1);strcpy(str+3,p1+3);printf("%s",str);}(第6章字符串处理函数;第9章字符串指针)(28)下面哪个程序段编译会出错: DA) max(int x,int y,int *z) B) max(int x, int y){ *z=x>y?x:y;} {return x>y?x:y;}C) max(int x,int y) D) int max(int x, y){ int z; { int zz=x>y?x:y; z=x>y?x:y;return z;} return z;}(29)下列程序执行后输出的结果是: D#include 〈stdio.h〉f(int a){ int b=0;static c=3:a=c+ +,b+ +;returu(a);}main( ){ int a=2,i,k;for(i=0;i<2;i+ +)k=f(a+ +);printf("%d\n",k);}A)3 B)0 C)5 D)4(第7章静态变量)(30)下列程序执行后输出的结果是: Aint d=1;fun (int q){ int d=5;d + =q+ +;printf("%d".d);}main( ){ int a=3;fun(a);d + = a + +;printf("%d\n",d);}A)8 4 B)9 6 C)9 4 D)8 5(第7章函数调用;第3章复合赋值运算符)(31)以下程序的输出结果是: Dmain(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A)10 10 B)9 9C)9 10 D)10 9(第7章函数调用时,参数结合方式:右结合)(32)有以下程序int fun(int x , int y , int *cp , int *dp){ *cp=x+y; *dp=x-y; }main(){ int a, b, c, d;a=30; b=50;fun(a,b,&c,&d);printf("%d,%d\n", c, d);}输出结果是: CA)50,30 B)30,50 C)80,-20 D)80,20(第7章函数调用;第9章指针变量做参数)(33)执行下面的程序后,a的值是: B#define SQR(X) X*Xmain( ){ int a=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("%d\n",a);}A)10 B)1 C)9 D)0(第8章带参宏定义)(34) 以下有关宏替换的叙述不正确的是: DA) 宏替换不占用运行时间 B)宏名无类型C)宏替换只是字符替换 D)宏名必须用大写字母表示(第8章宏定义)(35)C语言的编译系统对宏命令的处理是: DA) 在程序运行时进行的B) 在程序连接时进行的C) 和C程序中的其它语句同时进行编译的D) 在对源程序中其它成份正式编译之前进行的(第8章宏定义运行特点)(36)若有宏定义如下:#define X 5#define Y X+1#define Z Y * X / 2则执行以下printf语句后,输出结果是: Dint a; a=Y;Printf("%d\n", Z);Printf("%d\n", - - a);A) 7 B) 12 C) 12 D) 76 6 5 5(第7章函数调用;第8章带参宏定义)37、若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是: DA) &t[3][2]B) t[3][2] C) t[1][0] D) t[2]+138、若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是: CA)1 B)2C)2.0 D)2.539、当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是: CA)c=b=a;B)(a=c)‖(b=c);C)(a=c)&&(b=c);D)a=c=b;40、C语言的编译系统对宏命令的处理是: DA) 在程序运行时进行的B) 在程序连接时进行的C) 和C程序中的其它语句同时进行编译的D) 在对源程序中其它成份正式编译之前进行的(41)请读程序:#define ADD(x) x+xmain(){int m=1, n=2, k=3;int sum=ADD(m+n) * k;printf("sum=%d", sum);}上面程序的运行结果是: BA) sum=9 B) sum=10 C) sum=12 D) sum=18(第8章带参宏定义)(42)在宏定义 #define PI 3.14159中,用宏名PI代替一个: DA) 常量 B)单精度数 C)双精度数 D)字符串(第8章宏定义)(43)设有以下定义:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};int (*prt)[3]=a,*p=a[0]则下列能够正确表示数组元素a[1][2]的表达式是: DA)*((*prt+1)[2]) B)*(*(p+5))C)(*prt+1)+2 D)*(*(a+1)+2)(第9章数组指针与指向主组的指针)44、能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假“的表达式是___C____。

c语言复习题

c语言复习题

A. 6 B. 7 C. 11 D. 12
(10) 合法的数组定义是( )。 A
A. char a[ ]= "string " ; B. int a[5] ={0,1,2,3,4,5}; C. char a= "string " ; D. char a[ ]={0,1,2,3,4,5}
A. int a[7]; B. #define N 5 long b[N]; C. char c[5]; D. int n,d[n];
(4) 对字符数组进行初始化,( )形式是错误。 B
A. char c1[ ]={'1', '2', '3'}; B. char c2[ ]=123; C. char c3[ ]={ '1', '2', '3', '\0'}; D. char c4[ ]="123";
2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为 0 。
3、设 c='w',a=1,b=2,d=-5, 则表达式 'x'+1>c, 'y'!=c+2, -a-5*b<=d+1, b==a=2的值分别为 1 、 0 、 1 、 1 。
(8) 设有定义:char s[12] = "string" ; 则printf( "%d\n",strlen(s)); 的输出是( )。 A
A. 6 B. 7 C. 11 D. 12
(9) 设有定义:char s[12] = "string"; 则printf("%d\n ", sizeof(s)); 的输出是( )。 D

C语言期末复习资料

C语言期末复习资料

D. a = 0
36、下列程序段运行后 x 的值是 A 。
main ()
{ int a, b, c, x ;
a=b=c=0 ; x= 35 ;
if ( !a ) x-- ;
else if ( b ) ;
if ( c ) x =3 ;
printf ( "%d", x ); }
A. 34
B. 0
C. 35
{ case 1: printf ("*\n");
case 1+2: printf ("**\n"); }
case 2: printf ("**\n"); }
32、以下由 while 构成循环的次数是
D。
int i = 1 ;
while ( i == 1 ) i++;
A. 执行无限次
B. 语法错
C. 一次也不执行
17、以下程序的输出结果是 _____A_____。
# include <string.h>
main( )
{ printf ( "%d\n", strlen ("IBM\n012\1\\" ) ) ;
}
A. 9
B. 7
C. 11
D. 10
18、下列叙述中,不是 C 语言特点的是
B。
A. 简洁、紧凑,使用方便、灵活,易于学习和掌握
}
A. 10
B. 11
C. 13
D. 3
8、若以下变量均已正确说明为 char 类型,要给 x、y 和 z 输入数据,正确的是 B 。
A. scanf ( x, y, z );

c语言复习题(49题)

c语言复习题(49题)

以下作业编程练习,每个主题至少选择4道题作为作业题(各主题中所列题目不足4题的按实际数量选做)。

每次作业计2分,作为平时成绩。

另外,此练习题作为C 语言上机考试的考题来源之一(共49题)。

一、 顺序结构程序设计========================================1 已知三角形的三边长为a ,b ,c ,计算三角形面积的公式为: area = ))()((c s b s a s s ---,s =)(21c b a ++ 要求编写程序,从键盘输入a ,b ,c 的值,计算并输出三角形的面积。

2 编程从键盘输入圆的半径r ,计算并输出圆的周长和面积。

二、 选择结构程序设计==========================================1 从键盘任意输入一个年号,判断它是否是闰年。

若是闰年,输出“Yes ”,否则输出“No ”。

已知符合下列条件之一者是闰年:能被4整除,但不能被100整除。

能被400整除。

2 通过键盘输入一个字符,判断该字符是数字字符、大写字母、小写字母、空格还是其他字符。

3 华氏和摄氏温度的转换公式为C =5/9×(F -32)。

其中,C 表示摄氏温度,F 表示华氏温度。

要求:华氏0℉~300℉,每隔20℉输出一个华氏温度对应的摄氏温度值。

4 编程判断输入整数的正负性和奇偶性。

5 编程计算分段函数e 1exx y -⎧⎪=⎨⎪-⎩ 000x x x >=< 输入x ,打印出y 值。

流程图如图1-2所示。

6 输入三角形的三条边a ,b ,c ,判断它们能否构成三角形。

若能构成三角形,指出是何种三角形(等腰三角形、直角三角形、一般三角形)。

7 在屏幕上显示一张如下所示的时间表:*****Time*****1 morning2 afternoon3 nightPlease enter your choice:操作人员根据提示进行选择,程序根据输入的时间序号显示相应的问候信息,选择1时显示"Good morning", 选择2时显示"Good afternoon", 选择3时显示"Good night",对于其他选择显示"Selection error!",用switch 语句编程实现。

C语言复习题

C语言复习题

1. 若有定义:long int j,*p;,则操作j=(long int)p;是合法操作。

√ ×正确2. 设有说明int(*ptr)[M];其中ptr是指向含有M个整型元素的一维数组的指针。

()√ ×正确3. 对同一类型的两个指针变量而言,一个变量向另外一个变量赋值的结果是使得两个指针指向同一个对象。

√ ×正确4. 定义一个指向某种类型函数的指针后,就可以讲任何函数的首地址赋给这个指针变量。

√ ×错误正确答案为×5. 可以将一个整型指针变量的值赋给一个实型指针变量,但可能引起符号位扩展。

√ ×错误正确答案为×6. 可以将一个实型指针变量的值赋给一个整型指针变量,但可能影响指针的精度。

√ ×错误正确答案为×7. 由于指针的数据类型实际上是指定指针所能指向对象的数据类型,所以不通数据类型的指针变量不能相互赋值。

√ ×正确8. 函数中使用指针变量作为形式参数,就有可能在被调函数中操作主调函数中的实参。

√ ×正确9. 若有定义:int a[5],*p;,则操作p=a;是合法的操作。

√ ×正确10. 若有定义:int a[5],*p;,则操作p=&a[2];是合法的操作。

√ ×正确11. 若有定义:int a[5][5],*p;,则操作p=a;是合法操作。

√ ×错误正确答案为×12. 若有定义:int a[5][5],*p;,则操作p=*a;是合法操作。

√ ×正确13. 若有定义:int a[5][5],*p;,则操作p=a[0];是合法操作。

√ ×正确14. 若有定义:int a[5][5],*p;,则操作p=&a[0][0];是合法操作。

√ ×正确15. 若有定义:int a[5][5],(*p)[5];,则操作p=a;是合法操作。

C语言程序设计复习题

C语言程序设计复习题

C 语言程序设计复习题一、单项选择题1.以下关于C 程序的说法中错误的是( D )。

A )必须有一个且只能有一个主函数B )可以有任意多个不同名的函数C )必须用main 作为主函数名D )主函数必须放在其他函数之前2.以下叙述中正确的是(A )。

A )C 程序中注释部分可以出现在程序中任意合适的地方B )花括号“{”和“}”只能作为函数体的定界符C )构成C 程序的基本单位是函数,所有函数名都可以由用户命名D )分号是C 语句之间的分隔符,不是语句的一部分3.以下叙述中正确的是( C )。

A )C 程序的基本组成单位是语句B )C 程序中的每一行只能写一条语句C )简单C 语句必须以分号结束D )一个C 语句必须在一行内写完4. 下列关于C 程序的说法错误的是( B )。

A )一个程序必须有一个main 函数B )函数首部后面必须有分号C )可以使用“/* */”来注释一段代码D )每个语句的末尾必须有分号5. 下列关于C 程序的说法错误的是( D )。

A )stdio.h 是输入输出头文件B )一个C 语句必须以分号结束C )VC6.0中可以使用“//”来注释一行D )#define 命令不是预处理命令6.下面四个选项中,均是合法的标识符是( )。

A )abc A_4d _student xyz_abcB )auto 12a a_b ab5.xC )A_4d student xyz_abc ifD )abc a_b union scan7.按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是( C )。

A )大写字母B )数字字符C )-D )下划线8.C 语言提供的合法的数据类型关键字是( B )。

A )DoubleB )shortC )integerD )Char9.下列数据中,不合法的C 语言实型数据是( C )。

A )0.123B )123e3C )2.1e3.5D )789.010. 下列选项中,不能作为C 语言标识符的是( C )。

C 语言复习题(完整版)

C 语言复习题(完整版)

所有单选题1、C语言中下列叙述正确的是__d____。

A:不能使用do-while语句构成的循环B:do-while语句构成的循环,必须用break语句才能退出C:do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 1真0假,1 进入循环 D:do-while语句构成的循环,当while语句中的表达式值为零时结束循环答案:D2、以下选项中属于C语言的数据类型是__C____。

A:复数型B:逻辑型C:双精度型D:集合型答案:C3、下列描述中不正确的是__C____。

A:字符型数组中可以存放字符串B:可以对字符型数组进行整体输入、输出C:可以对整型数组进行整体输入、输出D:不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值答案:C4、以下程序的输出结果是______。

main(){ int x=10,y=10,i;for(i=0;x>8 ;y=++i)printf("%d %d ",x--,y);}A:10 1 9 2B:9 8 7 6C:10 9 9 0D:10 10 9 1答案:D5、以下程序的输出结果是______。

main(){ char a[10]={'1','2','3','4','5','6','7','8','9',0},*p; int i ;i=8;p=a+i;printf("%s\n",p-3);}A:6B:6789C:'6'D:789答案:B6、能正确表示a和b同时为正或同时为负的逻辑表达式是__D____。

A:(a>=0||b>=0)&&(a<0|| b<0)B:(a>=0&&b>=0)&&(a<0&&b<0)C:(a+b>0)&&(a+b<=0)D:a*b>0答案:D7、以下程序的输出结果是__A____。

C语言复习题及参考答案

C语言复习题及参考答案

C语言复习题及参考答案一、单项选择1、以下叙述正确的是:__B__。

A)C语言的源程序不必通过编译就可以直接运行。

B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。

C)C语言源程序经编译形成的二进制代码可以直接运行。

D)C语言中的函数不可以单独进行编译。

2、以下4个用户定义标识符中,全部合法的一组是__A__。

A)_main enclude sin B)if –max turbo C)txt REAL 3COM D)int k_2 _001 3、以下不能定义为用户标识符的是_D__。

A)scanf B)Void C)_3com D)int4、C语言中用于结构化程序设计的3种基本结构是__A__。

A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue5、为解决某一特定问题而设计的指令序列称为__C__。

A)文档B)语言C)程序D)系统6、用高级程序设计语言编写的程序称为__C__。

A)目标程序B)可执行程序C)源程序D)伪代码7、能将高级语言编写的源程序转换成目标程序的是__B__。

A)编辑程序B)编译程序C)驱动程序D)链接程序8、下列叙述中,正确一条是__C__。

A)计算机语言中,只有机器语言属于低级语言。

B)高级语言源程序可以被计算机直接执行。

C)C语言属于高级语言。

D)机器语言是所用机器无关的。

9、以下符合C语言语法的实型常量是__C__。

A)1.2E0.5B)3.14159E C).5E-3D)E1510、下面叙述正确的是__A___。

A)C程序中注释部分可以出现在程序中任何合适的地方。

B)花括号“{”和“}”只能作为函数体的定界符。

C)构成C程序的基本单位是函数,所有函数名都可以由用户命名。

D)分号是C语句之间的分隔符,不是语句的一部分。

11、设有以下定义:int a=0; double b=1.25; char c=’A’;#define d 2则下面语句中,错误是__D__。

大学C语言复习题_附答案

大学C语言复习题_附答案

(A)字节 (B)位 (C)字 (D)记录 12. 因特网中某主机的二级域名为“edu” ,表示该主机属于______。C (A)赢利性商业机构 (B)军事机构 (C)教育机构 (D)非军事性政府组织机构 13. 下列字符中,其 ASCII 码值最大的是______。D (A)9 (B)D (C)a (D)y 14. 语句 printf(“%%d%d”, 123); 将输出: A、%123%d B、%%d123 √C、%d123 D、上述语句语法有错 15. 对于 int x, y; 语句 if (x<0) y= -1; else if (!x) y=0; else y=1; 等价于: A、 y=0; if (x>=0) if (x) y=1; else y= -1; √B、 if (x!=0) if (x>0) y=1; else y= -1; else y=0; C、 if (x<0) y= -1; if (x!=0) y=1; else y=0; D、 y= -1; if (x!=0) if (x>0) y=1; else y=0; 16. 语句 if (a>b) k=0; else k=1;等价于: A、k=(a>b)?1:0; B、k=a>b; √C、k=a<=b; D、以上均不是 17. 执行下列程序段: int i, j; i = 3/2 + 7/2 == 5; j = 45 % 11 + (((7>8) ? 14:21) == 14); 后变量 i,j 的值应为: √A、i=0 j=1 B、i=1 j=1 C、i=0 j=2 D、i=1 j=2 18. 如果 int i=16, j=23 ; 执行 printf("%x--%o",i, j)后输出为: A、10—23 √B、10--27 C、16--23 D、16—27 19. 若 x 是 double 型变量,n 是 int 型变量,执行 ,并输入 3 1.25 后,x=1.25, n=3。 √A、scanf("%d%lf", &n, &x); B、scanf("%lf%d", &x, &n); C、scanf("%lf%d", &n, &x); D、scanf("%d,%lf", &n, &x); 20. 若变量已经被正确定义,为表示“变量 x 和 y 都能被 3 整除” ,应使用的 C 表达式 是 。 A、(x%3 != 0) || (y%3 != 0) B、(x%3 != 0) && (y%3 != 0) C、(x%3 == 0) || (y%3 == 0) √D、(x%3 == 0) && (y%3 == 0) 21. while( ) 等价于 while(x)。 A、x == 0 √B、x != 0 C、x == 1 D、x != 1 22. 下列程序段的输出结果是 。 int count = 0, x, y, z; for(x = 1; x <= 2; x++) for(y = 1; y <= 3; y++) for(z = 1; z <= 4; z++) count++; printf("%d", count); A、10 B、9 √C、24 D、0 23. 判断变量 ch 是英文字母的表达式为 。 A、( 'a' <= ch <= 'z') || ( 'A' <= ch <= 'Z')

C语言命令习题大全复习参考

C语言命令习题大全复习参考

C语言复习一、选择题(25*2分=50分)1.C语言可执行程序的开始执行点是。

A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D)包含文件中的第一个函数2.下列说法不正确的是________A)一个C语言程序可以由一个或多个函数组成B)C语言程序的基本组成单位是函数C)C程序总是从main函数开始执行,而不论main函数在整个程序中的位置如何;D )C语言注释只能位于一条语句后面3.一个完整的C源程序是________。

A)要由一个主函数(或)一个以上的非主函数构成B)由一个且仅由一个主函数和零个以上(含零)的非主函数构成C)要由一个主函数和一个以上的非主函数构成D)由一个且只有一个主函数或多个非主函数构成4.以下________不是算法的特征之一。

A)有穷性B)确定性C)有效性D)复杂性5.下面哪个表示浮点数的科学计数表示法是正确的?A)3e2.5 B)1.25e C)3.45e-5 D)e+86.请判断下列哪些用户自定义标识符是合法的?A)a&b,1_xy,e5,a.bB)exam,x1,int,defineC)ram,_mn,3ep,x*yD)ch,x_3_1,z2,num7.下列选项中,均可作为C语言用户标识符的是_________A dolla$ include scanfB _total **kdd printC average 2c sumD Y ear month _day8.设有如下定义:int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是________A 0B 1C 4D 39.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为。

A)0 B)1 C)2 D)310.以下________是流程图的处理框。

C语言复习题及答案

C语言复习题及答案

C语言复习题及答案一.单项选择题1.下列选项中,不是转义字符集中的符号是( C )。

A \\B \’C 074D \02. 下列给出的符号串中,不属于C语言保留字的是( B )。

A switchB cherC caseD else3. 下列给出的符号串中,不能作为C语言标识符的是( C )。

A a_2B _2aC a.3D a_34. 下列属于C语言字符常量的是( C )。

A ‘abc’B “\n”C ‘a’D ‘a\0’5. 字符串”ABC”再内存占用的字节数为( B )。

A 3B 4C 6D 86. 设有宏定义“#define R 2+3”,则R*R的宏替换结果正确的是( B )。

A (2+3)*(2+3)B 2+3*2+3C 5*5D 5.0*5.07. 设整形变量I的值为3,则表达式i---i的值为( A )。

A 0B 1C 2D 38. 表达式“10!=9”的值为( D )。

A trueB 非零值C 0D 19. 设有语句int a=3;则执行了语句a+=a-=a*a;后,变量a的值为( D )。

A 3B 0C 9D -1210. 下列选项中,正确的赋值表达式为( C )。

A a=7+b+c=a+7B a=7+b++=a+7C a=(7+b,b++,a+7)D a=7+b,c=a+711. 若有以下定义语句:char a;float c; double d; 则表达式a*b+d-c值的类型为( D )。

A floatB intC charD double12. 用十进制数表示表达式“12||012”的运算结果是( A )。

A 1B 0C 14D 1213. 下列一组运算符中,优先级别最高的运算符是( C )。

A <=B =C %D &&14. 设定“ char a=3,b=6,c;”,计算表达式c=(a^b)<<2后c的二进制值是( D )。

A 00011100B 00000111C 00000001D 0001010015. 设x,y,z,t 均为int类型,则执行下列语句串后,变量t的值为(C )。

C语言期末复习题(填空选择判断题)

C语言期末复习题(填空选择判断题)

一、单选题:1、已知ch是字符型变量,下面不正确的赋值语句是( B )。

A、ch=‘\0’B、ch=‘a+b’C、ch=‘7’+‘9’D、ch=7+92、以下4组用户定义标识符中,全部合法的一组是(A )。

A、s_5B、IfC、txtD、intabout -max REALk_2E2 turbo 3COM_0013、C语言中的简单数据类型包括( B )A、整型、实型、逻辑型B、整型、实型、字符型、枚举型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型4、已知:int i=1,j;执行语句j=-i++;后,j的值是(C )A、1B、2C、-1D、-25、已知:int i=5;执行语句i+=++i;后,i的值是( C )A、10B、11C、12D、A、B、C答案都不对7、若x为int型变量, x=6;则执行以下语句后,x的值为( C )。

x+=x-=x*x;A、 36B、 60C、- 60D、-248、设d为字符变量,下列表达式不正确的是( D )。

A、d=’g’B、d=’a’C、d=97D、d=”g”9、若a=1,b=2,c=3,d=4;则条件表达式 a>b?a:c<d?c:d结果为( B )A、4B、3C、2D、110、printf函数中用到格式符"%8s",其中数字8表示输出的字符串占用8列。

如果字符串长度大于8,则按原字符长从左向右全部输出;如果字符串长度小于8,则输出方式为( B )。

A、从左起输出该字符串,右补空格B、右对齐输出该字符,左补空格C、按原字符长从左向右全部输出D、输出错误信息11、在嵌套的if-else语句中,else总是与( D )配对。

A、其之前最近的ifB、第一个ifC、缩进位置相同的ifD、其之前最近的且不带else的if12、一个C语言程序总是从( B )开始执行。

A、程序的第一个函数B、主函数C、子函数D、主程序13、设x=2.9,a=8,y=3.7,算术表达式x+a%3*(int)(x+y)%5/2的值是 ( A )A、3.9B、4C、4.2D、3.7514、程序片段执行后输出结果是 ( A )int x=5, y=8;printf ("% d", x<y ? x : (x, y));A、5B、8C、5,8D、编译出错15、下面能正确表示变量a在区间[0,8]或(4,10)内的表达式为:( D )。

C语言复习题与答案

C语言复习题与答案

考试时选择题部分需要涂答题卡,请带2B铅笔考试题型:单项选择:填空题:读程序:程序填空:编写程序:一、单项选择1.一个C语言程序是由()。

A.函数组成B.一个主程序和若干子程序组成C.若干过程组成 D.若干子程序组成2.在C语言中,复合语句()。

A. 必须出现在循环或分支中B. 必须包含多条语句C. 必须使用{}将有关语句括起来D. 以上三种都对3. 以下叙述不正确的是()。

A.一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C程序中,注释说明只能位于一条语句的后面4. C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

A.必须为字母B.可以是字母、数字和下划线中任一种字符C.必须为下划线D.必须为字母或下划线5. 下面不正确的字符串常量是()。

A. …abc‟B.“12‟12”C.“0”D.“”6. 下面正确的字符常量是()。

A."c" B. "\\" C. 'W' D. ''7. 以下表达式值为3的是()。

A.16-13%10 B. 2+3/2C. 14/3-2D.(2+6)/(12-9)8. 下列表达式的值为0的是()。

A. 3<5B. 3/5.0C. 3/5D. 3%59. 若有代数式3ae/(bc),则不正确的C语言表达式是()。

A. a/b/c*e*3B. 3*a*e/b/cC. 3*a*e/b*cD. a*e/c/b*310. 在C语言中,要求运算数必须是整型的运算符是()。

A. /B. ++C. !=D. %11. 若x、i、j和k都是int型变量,则执行下面表达式后x的值为()。

x=(i=4,j=16,k=32)A. 4B. 16C. 32D. 5212. 执行表达式a=12,a=a+13,a+20后a的值为()。

《C语言程序设计》题库及答案

《C语言程序设计》题库及答案

《C语言程序设计》复习题库1、计算下面公式的值。

T=1/1!+1/2!+1/3!+……+1/m! 当m=5时的结果(按四舍五入保留3位小数)。

(注:所有变量用float数据类型定义!)答案:1.7172、程序填空:用*号输出字母C的图案。

#include "stdio.h"#include "conio.h"main(){_____________printf(" *\n");__________________________getch();}3、8232和9678,它们的个、十、百、千各位数字之和是15的倍数,8+2+3+2=15,9+6+7+8=30。

编写程序,求四位数的所有奇数中,这样的数(各位数字之和是15的倍数)的总和。

(注:所有变量用long数据类型定义!) 答案:15334594、/*下面程序的功能是:计算并输出700以内的最大的10个能被13或者17整除的自然数之和。

请改正程序中的错误,并运行,最后给出程序运行的正确结果。

(注:只有一处错误!)*/ 答案:6591#include <stdio.h>void main(){int total=0, mc=1, k=700;int pm[10],count=0;while( (k>=2) && mc<=10 ){if ((k%13==0) || (k%17==0)){pm[mc] = k;mc++;}k--;}for( k=1;k<=10;k++ )total += pm[k-1];printf(" %d\n",total);}5、求x = 1+1/5+1/7+1/9+…的近似值,直到最后一项的绝对值小于10-5为止。

6、计算如下公式的A20值。

A1=1, A2=1/(1+A1), A3=1/(1+A2), A4=1/(1+A3), ......(按四舍五入保留10位小数)。

C语言程序设计复习题

C语言程序设计复习题

一、选择题:1、以下能正确定义数组并正确赋初值的语句是( D )。

A、int N=5,b[N][N];B、int a[1][2]={{1},{3}};C、int c[2][]={{1,2},{3,4}};D、int d[][2]={{1,2},{3,4}};2、执行下面的程序时若从键盘上输入6,则输出结果是( D )。

main(){ int x;scanf("%d",&x);if(x++>5) printf("%d\n",x);else printf("%d\n",x--); }A、7B、 6C、5 D、43、下列四组选项中,不合法的用户标识符的选项是( D )。

A、P_0B、 _AC、temp_123D、b-a4、若x、i、j和k都是int型变量,则计算下面表达式后,x的值为( C )。

x=(i=4,j=16,k=32)A、 4B、 16C、 32D、 525、下列选项中哪个是合法的标识符( B )。

A、 intB、 _a2C、 b#D、 7b6、下列选项定义了整型变量a和b,并为这两个变量赋初值为5,不正确的语句是( B )。

A、 int a=5,b=5;B、 int a=b=5;C、 int a,b;D、 int a=5,b;a=5;b=5; b=5;7、若变量已正确定义并赋值,下面不符合C语言语法的表达式是( A)。

A、a=a+7;B、a=7+b+c,a++C、int 12.3%4D、a=a+7=a+b8、执行下面的程序时若从键盘上输入6,则输出结果是( C )。

main(){ int x;scanf("%d",&x);if(x-->5) printf("%d\n",x);else printf("%d\n",++x); }A、7B、 6C、5 D、49、设有程序段 int k=10;while(k==0) k=k-1;则下面描述中正确的是( B )。

C语言题库(194道)

C语言题库(194道)

C语言1、以下叙述不正确的是()。

——[单选题]A c程序中,语句之间必须用分号分隔。

B c程序中,多行语句可以写在一行上。

C c程序中,可以不必包含主函数。

D 一个c程序,可以由多个函数组成正确答案:C2、c语言规定,在一个源程序中,main函数的位置()——[单选题]A 必须在最开始B 必须在系统调用库函数的后面C 可以任意D 必须在最后正确答案:C3、以下叙述不正确的是()。

——[单选题]A main函数必须位于程序的最前面B c程序中,每行可以写多条语句C c语言本身不提供输入输出语句。

D 在对c语言程序进行编译的过程中,不能发现注释中的错误正确答案:A4、一个C程序的执行是从()——[单选题]A 本程序的main函数开始,到main函数结束B 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C 本程序文件的第一个函数开始,到本程序main函数结束D 本程序的main函数开始,到本程序文件的最后一个函数结束正确答案:A5、以下叙述不正确的是()——[单选题]A 一个C源程序必须包含一个main函数B 一个C源程序可由一个或多个函数组成C C程序的基本组成单位是函数D 在C程序中,注释说明只能位于一条语句的后正确答案:D6、以下叙述不正确的是()。

(2分)——[单选题]A 1. 若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中,且b中的值不变。

B 1. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。

C 1. 在C程序中,逗号运算符的优先级最低。

D 1. 在C程序中,MAX和max是两个不同的变量。

正确答案:B7、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句:c2='A'+'6'-'3';printf("%c",c2);后,屏幕输出内容为()。

C语言复习

C语言复习

C语言复习一、判断题:1.‟\x72‟、‟\n‟、‟\\‟都是字符常量。

(y )。

2.若有说明int c[4][50];则gets(c[1]);是正确的C命令语句。

(y)3.若有变量定义long data=10000000;则使用命令printf(”%d”,data);实现变量值输出是错误的命令语句,无法通过编译。

(n)4.若有变量定义int a=1;表达式a- -?+ +a:- -a的值为1。

(y)5.若有变量定义double x=-3.4;循环语句while (x){ x = x>0; }是错误命令。

(n)6.定义数组char s[ ]={“abc“},则数组s的元素个数为3。

(n)7.int *p=&a ,a=0;是正确的C变量定义语句。

(n )8.C语言程序从main函数开始执行,所以main函数必须写在其他被调用的函数之前。

( n )9.表达式7=3+4不正确。

(y)10.字符数组char str[ ]="abcd"; 有5个数组元素( y )11.while 1 i,j; 一定是错误的C语句。

(y )12.for( ; ; )S中的语句S必执行无穷多次。

(n)13.用字符型指针变量p作为函数void fa(char *pa)的实际参数时,应采用以下的命令格式fa (*p ); ( n )14.sub()和Sub( )是不同的函数(y)15.在C程序中,函数中所定义的局部变量与全局变量同名时,局部变量屏蔽全局变量。

(y )16.全局外部变量定义命令必须写在函数之外。

( y )17.指针变量算术运算只能可作+、—运算。

( y )18.如有定义float a[10]; 可定义表达式a=a+1。

(n )19.在逻辑表达式的计算中,必须所有的逻辑远算符都被执行后,才会结束表达式的计算(n)20.数组名作为函数实际参数,传送的是地址(y)21.若变量pointer是指针变量,命令pointer=0x2000; 是正确的赋值命令. (n)22.int c[2][ ]={{1,2},{3,4}}; 是正确的二维数组定义命令。

C语言期末复习题

C语言期末复习题

C语言期末复习题您的姓名: [填空题] *_________________________________1、在每个C程序中都必须包含有这样一个函数,该函数的函数名为 [单选题]A、main(正确答案)B、MAINC、nameD、 function2、下列合法的标识符为 [单选题]A、abde+B、 #KDJFC、 67KDJD、DK3_(正确答案)3、关于字符串和字符的关系正确的是 [单选题]A、“A”与’A’是相同的B、字符串是常量,字符是变量C、“A”与’A’是不同的(正确答案)D、“A”与“A”是相同的4、以下各标识符中,合法的用户标识符组为 [单选题]A、 PAd,P#d,b-b,abc,_0123,ssipedB、cin,a10,CPP,float,del_word,signedC、void,max,hiy,<fr>,list,*jerD、a,temp,_isw,INT,keep,wind(正确答案)5、C语言中,表示一条语句结束的标号是 [单选题]A、#B、;(正确答案)C、//D、}6、每个C程序中都必须有且仅有一个 [单选题]A、类B、预处理命令C、主函数(正确答案)D、语句7、运算符 +、<=、=、% 中,优先级最低的运算符是 [单选题]A、+B、<=C、=(正确答案)D、%8、下列字符列中,可以作为“字符串常量”的是 [单选题]A、 ABCB、″xyz″(正确答案)C、′uvwD、′a′9、设x和y均为逻辑型变量,则x && y为真的条件是 [单选题]A、它们均为真(正确答案)B、其中一个为真C、它们均为假D、其中一个为假10、在if语句中,用作判断的表达式为 [单选题]A、关系表达式(正确答案)B、逻辑表达式C、算术表达式D、任意表达式11、下面合法的C语言字符常量是 [单选题]A、'\t'(正确答案)B、 "A"C、 65D、 A12、表达式: 10!=9的值是 [单选题]A、trueB、非零值C、0D、1(正确答案)13、C语言提供的合法的数据类型关键字是 [单选题]A、 DoubleB、 short(正确答案)C、 integerD、 Char14、C语言程序的基本单位是 [单选题]A、程序行B、语句C、函数(正确答案)D、字符15、设有如下定义: int x=10,y=3,z; 则语句 printf("%d\n",z=x%y);的输出结果是 [单选题]A、 1(正确答案)B、 0C、 4D、 316、表达式5!=3的值是 [单选题]A、TB、非零值C、0D、1(正确答案)17、下列数据中哪个是整型数 [单选题]A、6(正确答案)B、6.00C、”a”D、7.e+018、下列数据中哪个是实型数 [单选题]A、6B、6.00(正确答案)C、”a”D、abc19、下面对变量的定义语句哪个是正确的 [单选题]A、int a;(正确答案)B、char a1,int a1;C、a,b char;D、int x,y20、下面对变量的定义语句哪个是正确的 [单选题]A、int x,y ;(正确答案)B、char a1,int a1;C、a,b char;D、char if21、一个C程序的执行是从 [单选题]A、本程序的main函数开始,到main函数结束(正确答案)B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序main函数结束。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

以下作业编程练习,每个主题至少选择4道题作为作业题(各主题中所列题目不足4题的按实际数量选做)。

每次作业计2分,作为平时成绩。

另外,此练习题作为C 语言上机考试的考题来源之一(共49题)。

一、 顺序结构程序设计========================================1 已知三角形的三边长为a ,b ,c ,计算三角形面积的公式为: area = ))()((c s b s a s s ---,s =)(21c b a ++ 要求编写程序,从键盘输入a ,b ,c 的值,计算并输出三角形的面积。

2 编程从键盘输入圆的半径r ,计算并输出圆的周长和面积。

二、 选择结构程序设计==========================================1 从键盘任意输入一个年号,判断它是否是闰年。

若是闰年,输出“Yes ”,否则输出“No ”。

已知符合下列条件之一者是闰年:能被4整除,但不能被100整除。

能被400整除。

2 通过键盘输入一个字符,判断该字符是数字字符、大写字母、小写字母、空格还是其他字符。

3 华氏和摄氏温度的转换公式为C =5/9×(F -32)。

其中,C 表示摄氏温度,F 表示华氏温度。

要求:华氏0℉~300℉,每隔20℉输出一个华氏温度对应的摄氏温度值。

4 编程判断输入整数的正负性和奇偶性。

5 编程计算分段函数e 1exx y -⎧⎪=⎨⎪-⎩ 000x x x >=< 输入x ,打印出y 值。

流程图如图1-2所示。

6 输入三角形的三条边a ,b ,c ,判断它们能否构成三角形。

若能构成三角形,指出是何种三角形(等腰三角形、直角三角形、一般三角形)。

7 在屏幕上显示一张如下所示的时间表:*****Time*****1 morning2 afternoon3 nightPlease enter your choice:操作人员根据提示进行选择,程序根据输入的时间序号显示相应的问候信息,选择1时显示"Good morning", 选择2时显示"Good afternoon", 选择3时显示"Good night",对于其他选择显示"Selection error!",用switch 语句编程实现。

8 读入一个年份和月份,打印出该月有多少天(考虑闰年),用switch 语句编程。

三、 循环结构程序设计==========================================1 编程计算1!+2!+3!+4!+…+10!的值。

2 编程计算 a+aa+aaa+…+aa …a (n 个a )的值,n 和a 的值由键盘输入。

3 利用2π= (7)656543432122⨯⨯⨯⨯⨯⨯=π×…的前100项之积计算π的值。

4 计算 +-++-+-100199********,直到最后一项的绝对值小于10-4为止。

5 利用泰勒级数sin(x )≈,!9!7!5!39753 -+-+-x x x x x 计算sin(x ) 的值。

要求最后一项的绝对值小于10-5,并统计出此时累加了多少项。

6 打印所有的“水仙花数”。

所谓“水仙花数”,是指一个三位数,其各位数字的立方和等于该数本身。

例如,153是“水仙花数”,因为153=13+33+53。

7 从键盘任意输入一个4位数x ,编程计算x 的每一位数字相加之和(忽略整数前的正负号)。

例如,输入x 为1234,则由1234分离出其千位1、百位2、十位3、个位4,然后计算1+2+3+4=10,并输出10。

8 三色球问题。

若一个口袋中放有12个球,其中有3个红色的,3个白色的,6个黑色的,从中任取8个球,问共有多少种不同的颜色搭配?9 编程打印以下图案。

(1) (2) (3) 10 按如下格式打印100以内整数的平方根表。

****** ****** ****** ****** * *** ***** ********** *** ***** *******950.9899.9849.9798.9747.9695.9644.9592.9539.9487.99434.9381.9327.9274.9220.9165.9110.9055.9000.9944.88888.8832.8775.8718.8660.8602.8544.8485.8426.8367.87307.8246.8185.8124.8062.8000.8937.7874.7810.7746.76681.7616.7550.7483.7416.7348.7280.7211.7141.7071.75000.7928.6856.6782.6708.6633.6557.6481.6403.6325.64245.6164.6083.6000.6916.5831.5745.5657.5568.5477.53385.5292.5196.5099.5000.5899.4796.4690.4583.4472.42359.4243.4123.4000.4873.3742.3606.3464.3317.3162.31000.3828.2646.2449.2236.2000.2732.1414.1000.1000.009876543210四、 一维数组==========================================1 下面程序模拟了骰子的6000次投掷,用rand 函数产生1~6之间的随机数face ,然后统计1~6每一面出现的机会(概率)存放到数组frequency 中。

2 从键盘输入10个整型数据,放入数组a 中,求其最大值、最小值及其所在元素的下标位置,并输出。

3 编程实现从键盘任意输入20个整数,统计非负数个数,并计算非负数之和。

4 从键盘任意输入10个整数,用函数编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组。

五、 二维数组==========================================1 输入5×5阶的矩阵,编程实现:(1)求两条对角线上的各元素之和。

(2)求两条对角线上行、列下标均为偶数的各元素之积。

2 编程打印如下形式的杨辉三角形。

11 11 2 11 3 3 11 4 6 4 1 1 5 10 10 5 13 利用公式c ij =a ij +b ij 计算m ×n 阶矩阵A 和m ×n 阶矩阵B 之和。

已知a ij 为矩阵A 的元素,b ij 为矩阵B 的元素,c ij 为矩阵C 的元素(i =1,2,…,m ;j =1,2,…,n )。

4* 利用公式c ij =∑=nk ik a 1*b kj 计算矩阵A 和矩阵B 之积。

已知a ij 为m ×n 阶矩阵A 的元素(i =1,2,…,m ;j =1,2,…,n ),b ij 为n ×m 阶矩阵B 的元素(i =1,2,…,n ;j =1,2,…,m ),c ij 为m ×m 阶矩阵C 的元素(i =1,2,…,m ;j =1,2,…,m )。

六、字符数组==========================================1 输入一行字符,统计其中的英文字符、数字字符、空格和其他字符的个数。

2 编写一个程序,实现将字符数组中的字符串逆序存放的功能。

3 从键盘输入一行字符,统计其中有多少单词。

假设单词之间以空格分开。

4 编写一个程序,其功能是删除字符串s 中所出现的与变量c 相同的字符。

5 不用函数strcat(),编程实现字符串连接函数strcat()的功能,将字符串srcStr 连接到字符串dstStr 的尾部。

七、 函 数==========================================1 设计一个函数,判断一个整数是否为素数。

【算法思想】 按照素数的定义,可以用2到number -1的所有整数去除number ,只要有能整除的,便说明number 不是素数。

不过对任意值的number ,如果它能被比其平方根小的数整除的话,那么也不可能被比其平方根大的整数整除。

2 编程计算组合数)!(!!k m k m C p k m -==的值。

3 设计一个函数MinCommonMultiple(),计算两个正整数的最小公倍数。

4 设计一个函数MaxCommonFactor(),利用欧几里德算法(也称辗转相除法)计算两个正整数的最大公约数。

八、 函数高级应用(选做)=================================1 用递归方法实现快速排序。

对一个一维数组进行快速排序的基本算法如下:(1)分割——取未排序数组中的第一个元素,确定它在最终排序的数组中的位置。

这时数组中的所有小于该元素的元素都位于它的左边,所有大于该元素的元素都位于它的右边。

至此,有一个元素已经处于它该处的位置,另外还有两个未排序的子数组。

(2)递归——对每一个未排序的数组执行步骤(1)。

九、 指 针==========================================1 编写一个交换变量值的函数,利用该函数交换数组a 和数组b 中的对应元素值。

2 从键盘任意输入10个整数,用函数编程实现计算最大值和最小值,并返回它们所在数组中的位置。

3 不用函数strcat(),编程实现字符串连接函数strcat()的功能,将字符串srcStr连接到字符串dstStr的尾部。

4 编程实现从键盘输入一个字符串,将其字符顺序颠倒后重新存放,并输出这个字符串。

5 编程判断输入的一串字符是否为“回文”。

所谓“回文”,是指顺读和倒读都一样的字符串。

如"level","ABCCBA"都是回文。

6 编写一个能对任意m×n阶矩阵进行转置运算的函数Transpose()。

7 用指针数组编程实现:从键盘任意输入一个数字表示月份值n,程序输出该月份的英文表示,若n不在1~12之间,则输出“Illegal month”。

8 口袋中有若干红、黄、蓝、白、黑五种颜色的球,每次从口袋中取出3个球,编程打印出得到3种不同颜色的球的所有可能取法。

十、结构体与共用体==========================================1 请读者自己编写一个程序,该程序可以完成个人财务管理。

每个人的财务项目应当包括姓名、年度、收入、支出等。

为了叙述简单,以一个财政年度为统计单位,程序中可以计算每个人的每个财政年度的收入总额、支出总额、存款余额等,并能够打印出来。

相关文档
最新文档