C语言自我测试题.doc

上传人:ni****g 文档编号:559850088 上传时间:2023-03-31 格式:DOC 页数:8 大小:63.51KB
返回 下载 相关 举报
C语言自我测试题.doc_第1页
第1页 / 共8页
C语言自我测试题.doc_第2页
第2页 / 共8页
C语言自我测试题.doc_第3页
第3页 / 共8页
C语言自我测试题.doc_第4页
第4页 / 共8页
C语言自我测试题.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《C语言自我测试题.doc》由会员分享,可在线阅读,更多相关《C语言自我测试题.doc(8页珍藏版)》请在金锄头文库上搜索。

1、C语言测试题C语言模拟测试题一、选择题1、以下叙述正确的是 。A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句D) C程序的每行中只能写一条语句2、若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为_ (x+y)%2+(int)a/(int)bA) 1 B) 1.750000C) 1.666666D) 23、阅读以下程序,当输入数据的形式为:25,13,10(注:表示回车),则正确的输出结果为 。 main() int x,y,z; scanf(“%d%d%d”,

2、&x,&y,&z); printf(“x+y+z=%dn”,x+y+z);A) x+y+z=48 B) x+y+z=35 C) x+z=35 D) 以上都不是4、已知ch是字符型变量,下面正确的赋值语句是 。A) ch=a+b; B) ch=“a”; C) ch=7+9;D) ch=5+9;5、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 。 if(xy) z=x; x=y; y=z; A) x=10, y=20, z=30 B) x=20, y=30, z=30 C) x=20, y=30, z=10 D) x=20, y=30, z=206、若运行时给变量x输入

3、12,则以下程序的运行结果是 。 main() int x,y; scanf(%d,&x); y=x12 ? x+10 : x-12; printf(%dn,y); A)3 B) 2 C) 1 D) 07、int x=3; doprintf(%dn,x-=2);while(!(-x); 则上面程序段_.A)输出的是1 B)输出的是1和-2 C)输出的是3和0 D)是死循环8、若有说明;int *p,m=5,n;以下正确的程序段的是_.A)p=&n; B)p=&n; scanf(%d,&p); scanf(%d,*p);C)scanf(%d,&n); D)p=&n; *p=n; *p=m;9、判

4、断字符串s1是否大于字符串s2,应当使用_.A)if(s1s2) B)if(strcmp(s1,s2)C)if(strcmp(s2,s1)0) D)if(strcmp(s1,s2)0)10、下面程序的运行结果是_. #include main() char str=SSSWLIA,c; int k; for(k=2;(c=strk)!=0;k+) switch(c) case I:+k;break; case L:continue; default:putchar(c);continue; putchar(*); A)SSW* B)SW* C)SW*A D)SW11、以下说法中正确的是 A)C

5、语言程序总是从第一个的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分12、以下程序的正确运行结果是_. #include void num() extern int x,y;int a=15,b=10; x=a-b; y=a+b; int x,y; main() int a=7,b=5; x=a+b; y=a-b; num(); printf(%d,%dn,x,y); A)12,2 B)不确定 C)5,25 D)1,1213、对下面程序段: #define A 3

6、 #define B(a) (A+1)*a) . x=3*(A+B(7);正确的判断是_. A)程序错误,不许嵌套宏定义 B)x=93 C)x=21 D)程序错误,宏定义不许有参数14、若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是_. A)a,point,*&a B)&*a,&a,*point C)*&point,*point,&a D)&a,&*point ,point15、下面程序的运行结果是_. #include #include main() char *s1=AbDeG; char *s2=AbdEg; s1+=2;s2+=2; printf(

7、%dn,strcmp(s1,s2); A)正数 B)负数 C)零 D)不确定的值16、若有定义:int a23,则对a数组的第i行j列元素地址的正确引用为_. A)*(ai+j) B)(a+i) C)*(a+j) D)ai+j17、下面程序的运行结果是_. main() struct cmplxint x; int y; cnum2=1,3,2,7; printf(%dn,cnum0.y/cnum0.x*cnum1.x); A)0 B)1 C)3 D)618、以下对结构体变量stu1中成员age的非法引用是_.struct student int age; int num; stu1,*p;

8、p=&stu1; A)stu1.age B)student.age C)p-age D)(*p).age19、若x=2,y=3,则x&y的结果是_.A)0 B)2 C)3 D)520、.若要用fopen函数建立一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应是_. A)rb+ B)wb+ C)wb D)rb二、程序填空21、以下程序的功能是:输出a、b、c三个变量中的最小值。请填空。#include main( ) int a,b,c,t1,t2; scanf(%d%d%d,&a,&b,&c); t1= ab ? ; t2= c t1 ? ; printf(%dn, t2 );22

9、、 以下程序中函数fun的功能是:统计person所指结构体数组中所有性别(sex)为M的记录的个数,存入变量n中,并做为函数值返回。请填空: #include #define N 3 typedef struct int num;char nam10; char sex;SS; int fun(SS person) int i,n=0; for(i=0;iN;i+) if( =M ) n+; return n; main() SS WN=1,”AA”,F,2,”BB”,M,3,”CC”,M; int n; n=fun(W); printf(“n=%dn”,n); 23、有以下程序段,且变量已

10、正确定义和赋值 for(s=1.0 , k=1; k=n; k+) s=s+1.0/(k*(k+1); printf(s=%fnn, s);请填空,使下面程序段的功能与之完全相同 s=1.0; k=1; while( ) s=s+1.0/(k*(k+1); ; printf(s=%fnn, s);24、 以下程序统计从终端输入的字符中大写字母的个数, num0 中统计字母 A 的个数, num 1 中统计字母B的个数,其它依次类推。用 # 号结束输入,请填空。#include #include main() int num26=0, i; char c; while( ( ) != #) if(isupper(c) num c A += 1 ; for(i=0; i26; i+) printf(%c : %dn ,i+A, numi);三、阅读程序25、阅读如下程序,填写运行结果。void main()int i=1,sum=0; while( i=6 ) sum += i; i+;printf(“sum=%dn”,sum);运行结果: 26、阅读程序,分析运行结果。void main() void swap

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号