《C程序设计基础》模拟考试题题目.docx
- 文档编号:26052437
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:9
- 大小:17.39KB
《C程序设计基础》模拟考试题题目.docx
《《C程序设计基础》模拟考试题题目.docx》由会员分享,可在线阅读,更多相关《《C程序设计基础》模拟考试题题目.docx(9页珍藏版)》请在冰豆网上搜索。
《C程序设计基础》模拟考试题题目
《C程序设计基础》模拟考试题(题目)
《C程序设计基础》模拟考试题
一、选择题(每题2分。
共23道选择题)
1、关于C程序的叙述,错误的说法是()
A、C程序总是从主函数开始执行
B、C程序中定义的第一个函数是主函数
C、在主函数中可以调用其他函数
D、一个C程序可以包括多个函数
2、C语言的基本数据类型包括()
A、char
B、struct
C、string
D、typedef
3、C语言的关键字是()
A、while
B、printf
C、main
D、FILE
4、错误的C标识符是()
A、e2
B、name_
C、A_B
D、2e
5、在下列运算中,优先级最低的运算符是()
A、==
B、=
C、&&
D、+
6、设a、b和c都是int型变量,且a=7,b=8,c=9,则表达式(a*b)/c+6-14%c的值是()
A、6
B、7
C、8
D、9
7、下列一维数组说明中,错误的是()
A、inta[]={1,2,3};
B、inta[5];
C、intn=5,a[n];
D、inta[5]={1,2,3};
8、执行语句:
printf(“a\nb”)输出的结果是()
A、a\nb
B、ab
C、第一行输出a,第二行输出b
D、不能输出
9、要表示年龄(age)在18到25之间,正确的表达式是()
A、18<=age<=25
B、18<=age&&age<=25
C、18<=age||age<=25
D、18<=ageandage<=25
10、设有定义inta,*p;下列赋值语句中,正确的是()
A、p=a;
B、p=&a;
C、p=*a;
D、*p=&a;
11、若已经定义chara[10]={“abcd”},*p=a;则表达式*(p+1)的值是()
A、abcd
B、bcd
C、b
D、语法错误
12、若已经定义structstu{inta,b;}student;,则下列叙述中正确的是()
A、stu是结构变量
B、student是结构变量
C、student是结构类型
D、a和b是结构型变量
13、设有定义inta[10],*p=a;下列对数组元素a[1]的引用中,错误的是()
A、p[1]
B、*(++a)
C、*(++p)
D、*(a+1)
14、下列叙述中,错误的是()
A、不同函数中可以使用相同的变量名
B、全局变量和局部变量可以同名
C、形式参数是局部变量
D、main()函数中定义的变量在整个程序中都可
15、设有函数定义:
voidp(intx){printf(“%d”,x);}则正确的函数调用是()
A、p(3);
B、a=p(3);
C、printf("%d";p(3));
D、p(intx);
16、有如下程序段unionu{inta;intb;floatc;}vu;vu.a=1;vu.b=2;vu.c=3;则vu.a的值是()
A、1
B、2
C、3
D、以上都不对
17、设有如下定义:
intx=2,y;intfun(int*a){return*a+1;}下列函数调用中,实际参数正确的是()
A、y=fun(x);
B、y=fun(&x);
C、y=fun(*x);
D、y=fun(a);
18、设有宏定义#defineN3+2,则语句printf(“%d”,N*N);的输出结果为()
A、11
B、25
C、10
D、3;5
19、执行scanf(“%d+%d”,&a,&b);时,正确的键盘输入是()
A、3,5
B、35
C、3+5
D、3;5
20、执行if(a<=b){a=b;b=a;}else{a++;++b;}语句后,正确的说法是()
A、当条件满足时变量a和b的值对换
B、当条件满足时变量a和b的值不变
C、当条件不满足时变量a和b的值各增加1
D、当条件不满足时变量b的值增加1,a不增加
21、设已定义inta=3,b=4;执行if(a=b)printf(“aaa\n”);elseprintf(“bbb\n”);语句后,正确的说法是()
A、输出aaa
B、输出bbb
C、编译时会出错
D、运行时会出错
22、设有说明语句intx=1,y=2;则执行表达式x=y==3后,变量x的值是()
A、0
B、1
C、2
D、3
23、已定义floatf=1.2;执行语句printf(“%d\n”,f);正确的说法是()
A、输出1.2
B、输出1
C、语法错误
D、可以输出,但不是1.2和1
二、阅读题。
(每题6分。
要求给出程序运行结果)
第1题:
#include
#defineN5
intmain(intargc,char*argv[])
{
inti,t,a[]={1,2,3,4,5};
for(i=0;i { t=a[i]; a[i]=a[N-i-1]; a[N-i-1]=t; } for(i=0;i { printf("%d\n",a[i]); } return0; } 第2题: #include inttest(intz) { intx=2; staticinty=2; z+=++x; z+=++y; returnz; } voidmain() { printf("%d\n",test (1)); printf("%d\n",test (2)); } 第3题: #include inta=1,b=1; f(intx,int*y) { x=3;*y=3; } main() { intb=2,c=2,d=2; f(c,&d); printf("a=%d\n",a); printf("b=%d\n",b); printf("c=%d\n",c); printf("d=%d\n",d); } 三、改错题(每题3个错,每改对一个加2分,如果把对的改错了,适当扣分但不能扣成负分) 第1题: #include voidmain() { intk,sum=0; printf("输入一个正整数(54842): "); scanf("%d",&k);//输入整数: 54842 whilek {sum+=k/10; k/=10; } printf("sum=%d\n",sum); //******以下部分不能修改! ************ FILE*f; f=fopen("error1.txt","w"); fprintf(f,"%d\t%d\n",k,sum); fclose(f); } 第2题: #include voidmain() {inti,j for(i=1;i<=5;i++) {for(j=1;j<=i;j--) printf("%d\t",j*j); printf("\n"); } //******以下部分不能修改! ************ FILE*f; f=fopen("error2.txt","w"); fprintf(f,"%d\t%d\n",i,j); fclose(f); } 四、编程题(只要实现题目要求即得6分,完成部分功能适当得分) 1、请在考生文件夹下的prog1.cpp文件中编写程序,要求: 输入圆的半径r,计算并输出其周长C和面积S。 (c=2*3.14159*r,s=3.14159*r*r)完成后保存并运行程序. 2、请在考生文件夹下的prog2.cpp文件中编写程序,要求: 商场进行打折销售,如顾客一次购买商品100元~999元按9折结算,如一次购买商品1000元以上,则按8折结算。 已知某顾客的采购金额,求该顾客的实际支付金额。 完成后保存并运行程序. 3、请在考生文件夹下的prog3.cpp文件中编写程序,要求: 输出所有个位数和百位数之和为10的三位正整数(如: 109,119,129,......,981,991),每行输出5个数,各个数之间用"\t"分隔。 完成后保存并运行程序. ==========================此后无内容============================
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C程序设计基础 程序设计 基础 模拟 考试题 题目