C语言套题 - 图文

更新时间:2024-04-23 00:26:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

…………………密……………封……………线……………密……………封……………线………………… 考试时间:120分钟 ( 年 月) 考试形式: 卷 题 号 得 分 一 二 三 四 五 总分 复核人 评卷人 一、选择题(每题2分,共50分) 1. 下列语句中符合C语言语法的赋值语句是( )。 (A) a=7+b+c=a+7 (B) a=7+b++=a+7 (C) a=(7+b,b++,a+7); (D) a=7+b,c=a+7; 2. 在C语言中,要求运算数必须是整型的运算符是( )。 (A) % (B) / (C) < (D) ! 3. 以下有4个用户标识符,其中不合法的一个是 ( B )。 (A) for (B) 4d (C) f2_G3 (D) short 4. 在C语言中,形参的缺省存储类是( )。 (A) auto (B) register (C) static (D) extern 5. 以下不能正确进行字符串赋初值的语句是( A )。 (A) char str[5]=\(C) char *str=\str[5]={‘g',‘o',‘o',‘d'}; A应该为char str[6]=\6. 若定义:int a=511,*b=&a;, 则printf(\的输出结果为( )。 (A) 无确定值 (B) a的地址 (C) 512 (D) 511 7. 以下程序中,while循环的循环次数是( )。 main() { int i=0; while(i<10) { if(i<1) continue; if(i==5) break; i++; } ...... } (A) 1 (B) 10 (C) 6 (D) 死循环,不能确定次数 8. 假定x和y为double型,则表达式x=2,y=x+3/2的值是( )。 (A) 3.500000 (B) 3 (C) 2.000000 (D) 3.000000 9. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是 ( )。 (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回实参 (D) 传递方式由用户指定 10. 已知字母A的ASCⅡ码为十进制的65,下面程序的输出是( )。 第(A) 67,D (B) B,C (C) C,D (D) 不确定的值 一 页main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf(\11. 下面程序的输出是( )。 (A) 0 (B) 1 (C) 3 (D) 不确定的值 main() { int x=10,y=3; printf(\12. 若变量c为char类型,能正确判断出c为小写字母的表达式是( )。 (A) 'a'<=c<= 'z' (B) (c>= 'a')||(c<= 'z') (C) ('a'<=c)and ('z'>=c) (D) (c>= 'a')&&(c<= 'z') 13. 下面程序的输出是( )。 (A) 3 (B) 4 (C) 1 (D) 2 main() { int a[10]={ 1,2,3,4,5,6,7,8,9,10},*p=a; printf(\14. 执行下面程序中输出语句后,a的值是( )。 (A) 65 (B) 20 (C) 15 (D) 10 main() {int a; printf(\15. 若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是( )。 (A) p=q; (B) *p=*q; (C) n=*q; (D) p=n; 16. 下面程序的输出是( )。 (A) 0 0 3 (B) 0 1 2 (C) 1 0 3 (D) 1 1 2 main() { int a=-1,b=4,k; k=(a++<=0)&&(!(b--<=0)); printf(\17. 下列关于C语言数据文件的叙述中正确的是( )。 (A)文件由ASCII码字符序列组成,C语言只能读写文本文件 (B)文件由二进制数据序列组成,C语言只能读写二进制文件 (C)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件 (D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件 18. 下面程序把数组元素中的最大值放入a[0]中。则在if 语句中的条件表达式应该是( )。 (A) p>a (B) *p>a[0] (C) *p>*a[0] (D) *p[0]> *a[0] 19. 下面程序的输出是( )。 共(A)1 (B)2 (C)7 (D)10 三int m=13; 页int fun2(int x,int y) 班 姓 名 座 号 …………………密……………封……………线……………密……………封……………线………………… {int m=3; return(x*y-m); } main() {int a=7,b=5; printf(\20. 以下程序的输出结果是( )。 (A) 1,5,9 (B) 1,4,7 (C) 3,5,7 (D)3,6,9 main() { int i, x[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) printf(\} 21. 有如下程序段 int a=14,b=15,x; char c=’A’; x=(a&&b)&&(c<’B’); 执行该程序段后,x的值为( )。 (A) true (B) false (C) 0 (D) 1 22. 下面程序的输出是( )。 (A)741 (B)852 (C)963 (D)875421 main() {int y=9; for(;y>0;y--) {if(y%3==0) {printf(\} } 23. 有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是( )。 (A) *p+9 (B) *(p+8) (C) *p+=9 (D) p+8 24. 下面程序运行的结果是( )。 (A) 2ba56 (B) 6521 (C) 6 (D) 62 main() { char ch[7]={“65ab21“}; int i,s=0; for(i=0;ch[i]>='0' && ch[i]<='9';i+=2) s=10*s+ch[i]-'0'; printf(\} 25. 以下程序的输出结果是( )。 (A) -1 1 (B) 0 1 (C) 1 0 (D) 0 0 main( ) { int a= -1,b=1,k; if((++a<0)&& ! (b-- <=0)) printf(\,a,b); else printf(\,b,a); } 二、填空题(每空3分,共15分) 1. 若fp已正确定义并指向某个文件,当未遇到该文件结束标志时函数feof(fp)的值为 。 2. 以下程序运行后,输出结果是 。 main() { static char a[]=\char *p1,*p2; int k; p1=a; p2=b; for(k=0;k<=7;k++) if(*(p1+k)==*(p2+k)) printf(\printf(\} 3. 以下程序运行后的输出结果是 。 int a=5; fun(int b) { static int a=10; a+=b++; printf(\} main() { int c=20; fun(c); a+=c++; printf(\} 4. 请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。 ( double,double); main() { double x,y; scanf(\第共printf(\二三} 页页 班 姓 名 座 号 …………………密……………封……………线……………密……………封……………线………………… 班 姓 名 座 号 double max(double a,double b) { return(a>b ? a:b); } 5. 以下程序用于判断a、b、c能否构成三角形,若能,输出YES,否则输出NO。当给a、b、c输入三角形三条边长时,确定a、b、c能构成三角形的条件是需同时满足三个条件:a+b>c,a+c>b,b+c>a。请填空。 main() { float a,b,c; scanf(\%f%f%f\,&a,&b,&c); if( )printf(\\n\;/*a、b、c能构成三角形*/ else printf(\\n\;/*a、b、c不能构成三角形*/ } 三、编程题 编写一个程序,从3个红球,5个白球,6个黑球中任意取出8个球,且其中必须有黑球,输出所有可能的方案。(10分) #include main() { int red,white,black; for(red=0;red<=3;red++) for(white=0;white<=5;white++) for(black=1;black<=6;black++) if(red+white+black==8) printf(\红球=%d,白球=%d,黑球=%d\\n\ } 四、编程题 要将“china”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母“a”后面第4个字母是“e”,用“e”代替“a”。因此,“china”应译为“glmre”。请编一程序,用赋初值的方法使c1、c2、c3、c4、c5五个变量的值分别为?c?、?h?、?i?、?n?、?a?,经过运算,使c1、c2、c3、c4、c5分别变为?g?、?l?、?m?、?r?、?e?,并输出。(10分) 五、编程题 输入两个正整数m和n,求其最大公约数和最小公倍数,要求将N-S流程图画出来。 (10+5分) 第共 三三四 页页

本文来源:https://www.bwwdw.com/article/8gbp.html

Top