程序设计作业考点.ppt_第1页
程序设计作业考点.ppt_第2页
程序设计作业考点.ppt_第3页
程序设计作业考点.ppt_第4页
程序设计作业考点.ppt_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

作业七,数组名作为实参传递给形参时,数组名被处理为( )。 选择一个答案 a. 该数组中各元素的值 b. 该数组的长度 c. 该数组的元素个数 d. 该数组的首地址,d,变量的指针,其含义是指该变量的()。 a. 值 b. 地址 c. 一个标志 d. 名,b,若有说明语句 char a=“It is mine”; char *p=“It is mine”; 则以下不正确的叙述是()。 p变量中存放的地址值可以改变 p指向另外的字符串时,字符串的长度不受限制 a+1表示的是字符t的地址 a中只能存放10个字符,d,设有定义:int a,*pa=a;以下scanf语句中能正确为变量a读入数据的是()。 a. scanf(“%d”,pa); b. scanf(“%d”,a); c. scanf(“%d”,*pa); d. scanf(“%d”,*pa);,a,若x为整型变量,以下定义指针的正确语句是( c)。 a. int p=x; b. int p=x; c. int *p=x; d. p=x;,以下正确的程序段是( d)。 char str20; scanf(“%s”,下列能正确定义字符串的语句是 : a. char str=; b. char str =“0“; c. char str =064; d. char str=“kx43“;,b,判断字符串a和b是否相等,应当使用() a. if (a=b) b. if (strcpy(a,b) c. if (strcmp(a,b) d. if (a=b),c,# include stdio.h # include string.h main() char str12=s,t,r,i,n,g; printf(“%dn“,strlen(str); 选择一个答案 () a. 12 b. 11 c. 7 d. 6,d,#include stdio.h main() int b33=0,1,2,0,1,2,0,1,2,i,j,t=1; for(i=0;i3;i+) for(j=i;j=i;j+) t=t+bjj; printf(“%dn“,t); 选择一个答案 () a. 4 b. 9 c. 1 d. 3,a,不能把字符串:Hello!赋给数组b的语句是. 选择一个答案 () a. char b10=H,e,l,l,o,!; b. char b10; b=“Hello!“; c. char b10; strcpy(b,“Hello!“); d. char b10= “Hello!“,b,设有数组定义:char array =“China“; 则数组 array所占的空间为。 选择一个答案 () a. 5个字节 b. 6个字节 c. 7个字节 d. 4个字节,b,设有数组定义:char array =“China“; 则数组 array所占的空间为。 选择一个答案 () a. 5个字节 b. 6个字节 c. 7个字节 d. 4个字节,b,设int i,x33=1,2,3,4,5,6,7,8,9;则下面语句 for(i=0;i3;i+) printf(%d,xi2-i); 的输出结果是。 选择一个答案 b a. 159 b. 357 c. 369 d. 147,下面是对s的初始化,其中不正确的是. 选择一个答案 c a. char s5=“ “ ; b. char s5=a,b,c; c. char s5= “abcdef“; d. char s5= “abc“;,若要求从键盘读入含有空格字符的字符串,应使用函数( d)。 选择一个答案 a. getc b. getchar c. scanf d. gets,设有定义:char s8; int i=0;,以下不能将一行(不超过 80 个字符) 带有空格的字符串正确读入的语句或语句组是 d. a. do scanf(“%c“,作业六,若二维数组a有m列,则在aij前的元素个数为( d). a. i*m+j+1 b. j*m+i c. i*m+j-1 d. i*m+j,以下能对二维数组a进行正确初始化的语句是(d ). a. int a2=1,0,1,5,2,3 ; b. int a3=1,0,1,1,1; c. int a24=1,2,3,4,5,6; d. int a3=1,2,3,4,5,6 ;,若有说明:int a3=1,2,3,4,5,6,7;则数组a第一维大小是(c ). a. 无确定值 b. 4 c. 3 d. 2,以下对一维整型数组a的正确说明是 d。 a. int a(10); b. int n; scanf(“%d“,若有定义语句:int m=5,4,3,2,1,i=4;,则下面对 m 数组元素的引用中错误的是( d)。 选择一个答案 a. m-i b. m2*2 c. mmi d. mm0,下列程序的输出结果是. #include stdio.h main() char a7=“a00a00“; int i,j; i=sizeof(a); j=strlen(a); printf(“%d %dn“,i,j); 选择一个答案 c a. 7 6 b. 2 2 c. 7 2 d. 6 2,若二维数组a有m列,则计算任一元素aij在数组中位置的公式为( c)。 (设a00位于数组的第一个位置上) a. j*m+I b. i*m+j c. i*m+j+1 d. i*m+j-1,以下不能对二维数组a进行正确初始化的语句是( d)。 a. int a23=0; b. int a3=1,2,3,4,5,6; c. int a3=1,2,0; d. int a23=1,2,3,4,5,6;,若有定义语句:int a36;,按在内存中的存放顺序,a 数组的第 10 个元素是(a ). a. a13 b. a14 c. a04 d. a03,下列程序的输出结果是 a。 #include stdio.h main int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+7) if(pi%2) j+=pi; printf(“%dn“,j); a. 45 b. 56 c. 60 d. 42,作业五,凡是函数中未指定存储类别的局部变量,其隐含的存储类别为( d)。 外部(extern) 静态(static) 寄存器(register) 自动(auto),若函数调用时的实参为变量时,下列关于函数形参和实参的叙述中正确的是(c )。 a. 函数的实参和其对应的形参共占同一存储单元 b. 同名的实参和形参占同一存储单元 c. 函数的形参和实参分别占用不同的存储单元 d. 形参只是形式上的存在,不占用具体存储单元,以下叙述中正确的是(b )。 a. 未在定义语句中赋初值的auto变量和static变量的初值都是随机值 b. 静态(static)类别变量的生存期贯穿于整个程序的运行期间 c. 全局变量的作用域一定比局部变量的作用域范围大 d. 函数的形参都属于全局变量,有以下程序 #include void f(int x,int y) int t; if(xy) t=x; x=y; y=t; main() int a=4,b=3,c=5; f(a,b); f(a,c); f(b,c); printf(“%d,%d,%dn“,a,b,c); 执行后输出的结果是()。 a. 5,3,4 b. 4,3,5 c. 3,4,5 d. 5,4,3,b,有下列程序: #include fun(int x,int y) static int m=0,i=2; i+=m+1;m=i+x+y;return m; main int j=1,m=1,k; k=fun(j,m);printf(“%d“ ,k); k=fun(j,m);printf(“%dn“,k); 执行后的输出结果是(b )。 a. 5,5 b. 511 c. 11,11 d. 11,5,C 语言规定中,以下说法不正确的是( c)。 a. 实参可以是任意类型 b. 形参应与其对应的实参类型一致 c. 形参可以是常量、变量或表达式 d. 实参可以是常量、变量或表达式,以下正确的说法是( a)。 如果在一个函数中的复合语句中定义了一个变量,则该变量: a. 只在该复合语句中有效 b. 在该函数中有效 c. 在本程序范围内有效 d. 为非法变量,一个数据类型为void的函数中可以没有return语句,那么函数的被调用时(a )。 返回一个不确定的值 b. 返回一个系统默认值 c. 没有返回值 d. 返回值由用户临时决定,以下错误的描述是,函数调用可以( c)。 a. 出现在执行语句中 b. 做为一个函数的实参 c. 做为一个函数的形参 d. 出现在一个表达式中,以下关于语言程序中函数的说法正确的是( a)。 a. 函数的定义不可以嵌套,但函数的调用可以嵌套; b. 函数的定义和点用都可以嵌套。 c. 函数的定义和调用均不可以嵌套; d. 函数的定义可以嵌套,但函数的调用不可以嵌套;,作业四,下面程序的运行结果是( a)。 #include “stdio.h“ main() int x=8; for(;x0;x-) if(x%3) printf(“%d,“,x-); continue; printf(“%d,“,-x); a. 8,5,4,2, b. 8,7,5,2, c. 7,4,2, d. 9,7,6,4,以下for循环是(a )。 for(a=0,b=0;(b!=123) a. 无限循环 b. 执行4次 c. 循环次数不定 d. 执行5次,for语句中的表达式可以部分或全部省略,但两个(d )不可省略。但当三个表达式均省略后,因缺少条件判断,循环会无限制地执行下去,形成死循环。 a. 1 b. 0 c. , d. ;,while循环语句中,while后一对圆括号中表达式的值决定了循环体是否进行,因此,进入while循环后,一定有能使此表达式的值变为( d)的操作,否则,循环将会无限制地进行下去。 a. 1 b. 2 c. 成立 d. 0,下面有关for循环的正确描述是(d )。 for循环是先执行循环体语句,后判断表达式 在for循环中,不能用break语句跳出循环体 for循环只能用于循环次数已经确定的情况 for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来,以下程序的运行结果是:( d)。 #include “stdio.h“ Main() int n=4; while(n-) printf (“%2d“,-n); a. 3 1 b. 2 1 0 c. 3 2 1 d. 2 0,以下程序的输出结果( a)。 #include “stdio.h“ main() int x=3; do printf(“%3d“,x-=2); while(-x); a. 1 b. 死循环 c. 1 -2 d. 30 3,程序段如下: int k=0; while(k+=2) printf(“%d“,k); 则执行结果是( c)。 a. 234 b. 无结果 c. 123 d. 012,若i,j已定义为int型,则以下程序段中循环体的总的执行次数是(a )。 for(i=5;i;i-) for(j=0;j4;j+) a. 20 b. 25 c. 30 d. 24,以下程序的输出结果是( c)。 #includestdio.h void main() int i; for(i=1;i=5;i+) if(i%2) printf(#); else continue; printf(*); printf($n); a. *#*#*#$ b. *#*#$ c. #*#*#*$ d. #*#*$,作业三,1. 写出下面程序的执行结果( d)。 #include”stdio.h” main int x,y=1; if(y!=0) x=5; printf(“%dt”,x); if(y=0) x=3; else x=5; printf(“%dtn”,x); a. 5 3 b. 1 3 c. 1 5 d. 5 5,能表示整数x符合下面两个条件的语句是(c )。 (1)能被4整除,但不能被100整除”。 (2)能被4整除,又能被400整除。 (x%4=0&x%400!=0)|x%100=0 (x%4=0|x%100!=0)&x%400=0 (x%4=0&x%100!=0)|x%400=0 (x%100=0|x%4!=0)&x%400=0,以下程序的输出结果是( a)。 #include “stdio.h“ main() int a=-1,b=4,k; k=(+a=0) a. 1 0 3 b. 0 0 4 c. 0 0 3 d. 1 0 4,在嵌套使用if语句时,C语言规定else总是(c )。 a. 和之前的第一个if配对 b. 和之前与其最近的if配对 c. 和之前与其最近的且不带else的if配对 d. 和之前与其具有相同缩进位置的if配对,1. 若i为整型变量,则下列程序段的运行结果为( d)。 i=322; if(i%2=0) printf(“#”); else printf(“*”); #* 有语法错误,无法输出结果 * #,下列叙述中正确的是( c)。 a. break语句必须与switch语句中的case配对使用 b. 在switch语句中必须使用default c. 在switch语句中,不一定使用break语句 d. break 语句只能用于switch语句,1. 以下程序的运行结果是(b )。 #include”stdio.h” main int c,x,y; x=1; y=1; c=0; c=x+|y+; printf(“n%d%d%dn”,x,y,c); a. 001 b. 211 c. 110 d. 011,当a=1,b=3,c=5,d=4时,执行完下面程序段后x的值为( )。 if(ab) if(cd) x=1; else if(ac) if(bd)x=2; else x=3; else x=6; else x=7; 选择一个答案 a. 2 b. 1 c. 3 d. 6,设有如下定义:char ch=z,则执行下面语句后变量ch是值为:( a)。 ch=(A=ch&ch=Z)?(ch+32):ch a. z b. a c. Z d. A,累加、累乘、最大公约数与最小公倍数、求素数等)以及掌握一些常用算法,如穷举法、迭代法。 一维数组统计、排序、查找,求最大公约数和最小公倍数(方法一),#include “stdio.h“ void main() int x,y,z,f; scanf(“%d%d“, ,求最大公约数和最小公倍数(方法二),#include “stdio.h“ void main() int m,n,i,j; scanf(“%d%d“, ,用函数调用的方法求最大公约数和最小公倍数,#include “stdio.h“ max(int x,int y) /求最大公约数 int z; do z=x%y; x=y; y=z; while(z!=0); return(x); min(int x,int y,int z) /求最小公倍数 return(x*y/z); void main() int a,b,x,y; scanf(“%d%d“, ,求素数,#include void main() int i,n; /i用作循环变量 printf(“Please input a positive number:“); scanf(“%d“, ,一个数等于它的因子之和,则是完数。求6-1000之间的完数。,#include “stdio.h“ void main() int m,i,s; for(m=6;m1000;m+) s=0; for(i=1;im;i+) if(m%i=0) s=s+i; if(s=m) printf(“完数%d的因子是:“,m); for(i=1;im;i+) if(m%i=0) printf(“%d “,i); printf(“n“); ,从键盘输入三个整数到变量a,b,c,输出其中最大的数。,枚举法(列举出所有的可能情况)。 main( ) int a,b,c,t; scanf(“%d,%d,%d”, ,计算3组14累加求和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论