c语言试卷3
- 格式:doc
- 大小:71.00 KB
- 文档页数:5
C语言期末考试复习题及答案一、选择题:下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确的选项涂写在答案纸上。
答在试卷上不得分。
(1)C语言规定:在一个源程序中,main函数的位置。
A)必须在最后B)必须在系统调用的库函数的后面。
C)必须在最开始。
D)可以任意(2) C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。
A)必须为字母或下划线。
B)必须为下划线。
C)必须为字母D)可以是字母、数字和下划线中的任一种字符。
(3)下面四个选项中,均是正确的八进制数或十六进制数的选项是。
A)-10 0x8f -011 B) 010 -0x11 0xf1C) 0abc -017 0xc D) 0a12 -0x123 -0xa(4) C语言中int型数据在内存中占两个字节,则unsegned int取值范围是。
A)0 ~ 65535 B)0 ~ 32767C)-32767 ~ 32768 D)-32768 ~ 327687(5) 若有定义:int a = 7; floa x = 2.5 , y = 4.7 ;则表达式x + a % 3 *(int) (x + y)% 2/4 的值是。
A) 2.750000 B) 0.00000 C) 3.500000 D) 2.500000(6)已知ch是字符型变量,下面不正确的赋值语句是。
A)ch = 5 + 9 ; B) ch= ' a + b '; C) ch = ' \ 0 '; D) ch= '7' + '6' ;(7) 设x , y和z是int型变量,且x = 3, y = 4 , z = 5 则下面表达式中值为0的是。
A)!((x < y )&&!z || 1) B) ' x ' && ' y ' C) x || y+z && y - z D)x <= y(8)设有程序段int k = 10 ;while ( k = 0 ) k = k - 1 ;以下描述正确的是。
青少年软件编程(C语⾔)等级考试试卷(三级)1.因⼦问题因⼦问题任给两个正整数N、M,求⼀个最⼩的正整数a,使得a和(M-a)都是N的因⼦。
时间限制:10000内存限制:65536输⼊包括两个整数N、M。
N不超过1,000,000。
输出输出⼀个整数a,表⽰结果。
如果某个案例中满⾜条件的正整数不存在,则在对应⾏输出-1样例输⼊35 10样例输出5#include <stdio.h>int main(int argc, char *argv[]){int N,M,a=0,t;scanf("%d%d",&N,&M);t=M/2;for(a=1;a<=t;a++){if( N%a==0 && (N%(M-a)==0) ) { t=-1; break; }}if(t!=-1) printf("-1\n");else printf("%d\n",a);return0;}2.质数的和与积质数的和与积两个质数的和是S,它们的积最⼤是多少?时间限制:10000内存限制:65536输⼊⼀个不⼤于10000的正整数S,为两个质数的和。
输出⼀个整数,为两个质数的最⼤乘积。
数据保证有解。
样例输⼊50样例输出589#include <bits/stdc++.h>int prime(int h){if(h < 2){return0;}for(int i=2;i<=h/2;++i){if(!(h%i))return0;}return1;}int main( ){int n;int max=0;int sj=1;int m;{if(prime(i)){m=n-i;if(prime(m)){sj=m*i;if(max<sj)max=sj;}}}printf("%d",max);}3.扩号匹配问题扩号匹配问题在某个字符串(长度不超过100)中有左括号、右括号和⼤⼩写字母;规定(与常见的算数式⼦⼀样)任何⼀个左括号都从内到外与在它右边且距离最近的右括号匹配。
江苏省计算机等级考试- 学年第学期 c程序设计试卷( )1. 设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是A)把x和y按从大到小排列B)把x和y按从小到大排列C)无确定结果D)交换x和y中的值2. 下面程序的输出是void prtv(int *x)printf("%d\n", ++*x);}main(){ int a=25;prtv(&a);}A) 23 B) 24C) 25 D) 263. 设x为int型变量,则执行以下语句后,x的值为x=10;x+=x-=x-x;A)10 B)20 C)40 D)304. 设有以下宏定义:#define N 3#define Y(n)((N+1)*n)则执行语句:z=2 *(N+Y(5+1));后,z的值为A)出错B)42 C)48 D)545. 语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是A) a\bre\'hi\'y\\\bou B) a\bre\'hi\'y\bou1C) re'hi'you D) abre'hi'y\bou(说明:'\b'是退格符)6. 当执行以下程序段时x=-1;do { x=x*x;} while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误7. 以下程序段的输出结果是int x=3;do { printf("%3d",x-=2);} while(!(--x));A) 1 B) 3 0 C) 1-2 D) 死循环8. 下面程序的输出是main(){int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A)k=11,k=12,k=11 B)k=11,k=13,k=13C)k=11,k=013,k=0xb D)k=11,k=13,k=b9. 下面的程序main(){ int x=3;do {printf("%d\n",X-=2);}while(!(--x));}A) 输出的是1 B) 输出的是1和-2 C) 输出的是3和0 D) 是死循环10. 表示关系x≤y≤z的c语言表达式为A) (X<=Y)&&(Y<=Z)B) (X<=Y)AND(Y<=Z)C) (X<=Y<=Z)D) (X<=Y)&(Y<=Z)211. 设x,y,z,t均为int型变量,则执行以下语句后,t的值为x=y=z=1;t=++x||++y&&++z;A)不定值B)2 C)1 D)012. 有以下程序main(){char a[]="programming",b[]="language";char *p1,*p2;int i;p1=a;p2=b;for(i=0;i<7;i++)if(*(p1+i)==*(p2+i))printf("%c",*(p1+i));}输出结果是A)gm B)rg C)or D)ga13. 以下程序的输出结果是# include <stdio.h># include <string.h>main(){ char str[12]={'s','t','r','i','n','g'};printf("%d\n",strlen(str)); }A) 6 B) 7 C) 11 D) 1214. 运行以下程序后,如果从键盘上输入65 14<回车>,则输出结果为main ( ){int m,n;printf("Enter m,n:");scanf("%d%d,&m,&n");while(m!=n){3while(n>m)n-=m;}printf("m=%d\n",m);}A)m=3 B)m=2 C)m=1 D)m=015. 下面函数的功能是sss(s, t)char *s, *t;{ while((*s)&&(*t)&&(*t++== *s++));return(*s-*t);}A) 求字符串的长度B) 比较两个字符串的大小C) 将字符串s复制到字符串t中D) 将字符串s接续到字符串t中16. 若有以下的说明和语句:main(){int t[3][2], *pt[3],k;fpr(k=o; k<3;k++)pt[k]=t[k];}则以一选项中能正确表示t数组元素地址的表达式是A) &t[3][2] B) *pt[0]C) *(pt+1) D) &pt[2]17. 语句:printf("%d \n",12 &012);的输出结果是A) 12 B) 8 C) 6 D) 01218. 能正确表示a≥10或a≤0的关系表达式是A)a>=10 or a<=0 B)a>=10│a<=0C)a>=10││a<=0 D)a>=10 ││a<=019. 假定a和b为int型变量,则执行以下语句后b的值为a=1;b=10;do{b-=a;a++;}4A)9 B)—2 C)—1 D)820. 以下说法中正确的是A) #define和printf都是C语句B) #define是C语句,而printf不是C) printf是C语句,但#define不是D) #define和printf都不是C语句二、填空题(每空1分,共10分。
《C语言程序设计》模拟试卷三一、填空题。
(每空2分,共16分)1.在内存中,短整型变量占字节,单精度实型变量占字节,字符型变量占字节。
2.一个C语言文件就是由若干个组成。
3.设有以下变量定义,并已赋确定得值char w; int x; float y; double z;则表达式:w*x+z-y所求得得数据类型为。
4.若x为int类型,请以最简单得形式写出与逻辑表达式!x等价得C语言关系表达式。
5.若有如下图所示五个连续得int类型得存储单元并赋值如下图,a[0]得地址小于a[4]得地址。
p与s就是基类型为int得指针变量。
请对以下问题进行填空。
a[0] a[1] a[2] a[3] a[4]p,给s赋值,使s指向最后一个存储单元a[4]得语句就是。
(2)若指针s指向存储单元a[2],p指向存储单元a[0],表达式s-p得值就是。
二、单项选择题。
(每题2分,共40分)1.设有 int x=11; 则表达式 (x++ * 1/3) 得值就是()。
A) 3 B) 4 C) 11 D) 122.下列程序得输出结果就是()。
A) 3 B) 3、2 C) 0 D) 3、07main(){double d=3、2; int x,y;x=1、2; y=(x+3、8)/5、0;printf(“%d \n”, d*y);}3.下列程序执行后得输出结果就是(小数点后只写一位)()。
A) 6 6 6、0 6、0 B) 6 6 6、7 6、7C) 6 6 6、0 6、7 D) 6 6 6、7 6、0main(){ double d; float f; long l; int i;i=f=l=d=20/3;printf("%d %ld %f %f \n", i,l,f,d);scanf("%d",&d);}4.下列变量定义中合法得就是()。
A) short _a=1-、le-1; B) double b=1+5e2、5;C) long do=0xfdaL; D) float 2_and=1-e-3;5.设 int x=1, y=1; 表达式(!x||y--)得值就是()。
c语言试卷集(10套)-试题及答案C语言试卷集(10套)-试题及答案试卷一一、选择题(每题2分,共20分)1. C语言中,用于表示逻辑“真”的值是()。
A. 0B. 1C. -1D. 任意非零值答案:B2. 下列哪个选项是C语言中的合法变量名?()A. 2variableB. variable2C. variable_2D. variable!答案:C3. C语言中,用于定义一个整型数组的语句是()。
A. int array[10];B. int [10] array;C. int 10 array;D. int array=10;答案:A4. 下列哪个选项是C语言中的合法字符串常量?()A. "Hello"B. 'Hello'C. "HelloD. Hello答案:A5. C语言中,用于表示逻辑“假”的值是()。
A. 0B. 1C. -1D. 任意非零值答案:A6. 下列哪个选项是C语言中的合法浮点数常量?()A. 3.14B. 314.C. .314D. 3.14E答案:A7. C语言中,用于定义一个整型变量的语句是()。
A. int x;B. var x;C. x int;D. int = x;答案:A8. 下列哪个选项是C语言中的合法字符常量?()A. 'A'B. "A"C. 'AB'D. "AB"答案:A9. C语言中,用于定义一个字符数组的语句是()。
A. char array[10];B. char [10] array;C. char 10 array;D. char array=10;答案:A10. C语言中,用于表示字符常量的是()。
A. 'A'B. "A"C. AD. "A"答案:A二、填空题(每题3分,共15分)1. C语言中,用于定义一个整型变量并初始化为0的语句是()。
安徽大学20 -20 学年第学期《C语言程序设计》期末考试试卷(A卷120分钟)年级院系专业姓名学号座位号1.下面程序段执行后,a的值是______。
int a;printf("%d \n", (a=3*5, a*4, a+5) );A)60 B)20 C)15 D)102.下列程序段的输出是______。
int x=023;printf("%d \n", --x );A)19 B)18 C)23 D)223.执行下列语句后,a的值是______。
int a=8;a+=a-=a*a;A)-240 B)64 C)112 D)-1124.执行下列语句后,输出的值是______。
int x=6;printf("%d,%d,%d\n",x,x++,--x);A)5,5,5 B)6,5,5 C)7,6,5 D)5,6,55.指出下列程序段所表示的逻辑关系是______。
if(a<b){if(c==d)x=1;}elsex=2;A)若a<b且c=d,则x=1;若a>=b且c!=d,则x=2。
B)若a<b且c=d,则x=1;若a>=b,则x=2。
C)若a<b且c=d,则x=1;若a<b且c!=d,则x=2。
D)若a<b且c=d,则x=1;若c!=d,则x=2。
6.下列程序段的执行结果是______。
int i,x;for(i=1,x=1;i<=20;i++){if(x>=10) break;if(x%2==1){x+=5;continue;}x-=3;}printf("%d,%d\n",x,i);A)6,4 B)7,5 C)10,6 D)14,7 7.下列程序的执行结果是______。
#include "stdio.h"#include "string.h"main(){static char s[10]={'C','h','i','n','a'};printf("%d\n",strlen(s));}A)6 B)5 C)11 D)10 8.函数的数据类型是______决定的。
国家二级C语言(C语言基础知识)机试-试卷3(总分50,考试时间90分钟)1. 选择题1. 以下叙述中错误的是A. C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件B. 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中C. C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令D. C语言源程序经编译后生成后缀为.obj的目标程序2. 下列叙述中错误的是A. C程序可以由多个程序文件组成B. 一个C语言程序只能实现一种算法C. C程序可以由一个或多个函数组成D. 一个C函数可以单独作为一个C程序文件存在3. 以下叙述中错误的是A. 结构化程序由顺序、分支、循环三种基本结构组成B. C语言是一种结构化程序设计语言C. 使用三种基本结构构成的程序只能解决简单问题D. 结构化程序设计提倡模块化的设计方法4. 以下叙述中错误的是A. 算法正确的程序最终一定会结束B. 算法正确的程序可以有零个输入C. 算法正确的程序可以有零个输出D. 算法正确的程序对于相同的输入一定有相同的结果5. 以下选项中关于程序模块化的叙述错误的是A. 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块B. 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序C. 把程序分成若干相对独立的模块,可便于编码和调试D. 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序6. C语言源程序名的后缀是A. .exeB. .objC. .cD. .cp7. 关于算法,以下叙述中错误的是A. 同一个算法对于相同的输入必能得出相同的结果B. 一个算法对于某个输入的循环次数是可以事先估计出来的C. 某个算法可能会没有输入D. 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕8. 以下不能用于描述算法的是A. 程序语句B. E-R图C. 伪代码和流程图D. 文字叙述9. 以下叙述中正确的是A. 程序的算法只能使用流程图来描述B. N—S流程图只能描述简单的顺序结构的程序C. 计算机可以直接处理C语言程序,不必进行任何转换D. 结构化程序的三种基本结构是循环结构、选择结构、顺序结构10. 以下叙述中正确的是A. 在C语言程序设计中,所有函数必须保存在一个源文件中’B. 在算法设计时,可以把复杂任务分解成一些简单的子任务C. 只要包含了三种基本结构的算法就是结构化程序D. 结构化程序必须包含所有的三种基本结构,缺一不可11. 以下叙述中正确的是A. 每个后缀为.c的C语言源程序都应该包含一个main函数B. 在C语言程序中,main函数必须放在其他函数的最前面C. 每个后缀为.c的C语言源程序都可以单独进行编译D. 在C语言程序中,只有main函数才可单独进行编译12. 有以下程序#include main(){ int s,t,A=10;double B=6:s=sizeof(A);t=sizeof(B);printf("%d,%d\n",s,t);} 在VC6平台上编译运行,程序运行后的输出结果是A. 4,4B. 2,4C. 4,8D. 10,613. 对于一个正常运行的C程序,以下叙述中正确的是A. 程序的执行总是从程序的第一个函数开始,在main函数结束.B. 程序的执行总是从main函数开始,在程序的最后一个函数中结束C. 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束D. 程序的执行总是从main函数开始14. 计算机能直接执行的程序是A. 目标程序B. 可执行程序C. 汇编程序D. 源程序15. 以下叙述中正确的是A. 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行B. C语言程序将从源程序中第一个函数开始执行C. main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等D. C语言规定必须用main作为主函数名,程序将从此开始执行16. 以下叙述中错误的是A. C程序在运行过程中所有计算都以二进制方式进行B. 所有C程序都需要编译链接无误后才能运行C. C程序在运行过程中所有计算都以十进制方式进行D. C程序中字符变量存放的是字符的ASCII值17. 下列叙述中正确的是A. 在C程序中main函数的位置是固定的B. C程序中所有函数之间都可以相互调用C. 每个C程序文件中都必须要有一个main函数D. 在C程序的函数中不能定义另一个函数18. 以下叙述正确的是A. C语言程序是由过程和函数组成的B. C语言函数可以嵌套调用,例如:fun(fun(x))C. C语言函数不可以单独编译D. C语言中除了main函数,其他函数不可作为单独文件形式存在19. C语言程序的模块化通过以下哪个选项来实现A. 变量B. 程序行C. 函数D. 语句20. 以下叙述中正确的是A. 程序的主函数名除main外,也可以使用Main或mainB. 在C程序中,模块化主要是通过函数来实现的C. 程序可以包含多个主函数,但总是从第一个主函数处开始执行D. 书写源程序时,必须注意缩进格式,否则程序会有编译错误21. 以下叙述中正确的是A. C语言程序总是从最前面的函数开始执行B. C语言程序总是从main函数开始执行C. C语言程序中main函数必须放在程序的开始位置D. C语言程序所调用的函数必须放在main函数的前面22. C语言主要是借助以下哪种手段来实现程序模块化A. 定义常量和外部变量B. 使用丰富的数据类型C. 使用三种基本结构语句D. 定义函数23. 以下四个程序中,完全正确的是A. #include<stdio.h>main();main() {/*/Programming /*/printf("programming!\n");}B. #include<stdio.h>{/*programming*/printf("programming!\n");}C. #include<stdio.h>main() main() {/*/*programming*/*/printf("programming!\n");}D. include<stdio.h>{/*programming*/print("programming!\n");}24. 以下关于结构化程序设计的叙述中正确的是A. 结构化程序使用goto语句会很便捷B. 一个结构化程序必须同时由顺序、分支、循环三种结构组成C. 由三种基本结构构成的程序只能解决小规模的问题D. 在C语言中,程序的模块化是利用函数实现的25. 以下叙述中正确的是A. C程序中的每一行只能写一条语句B. 简单C语句必须以分号结束C. C语言程序中的注释必须与语句写在同一行D. C语句必须在一行内写完。
《C 语言程序设计》模拟试卷3考试班级:一、判断题(2’×10=20’)1、C 语言源程序文件的扩展名均为.c 。
( )2、所谓常量,就是在程序运行过程中其值可以改变的量。
( )3、一个C 语言程序总是从main 函数开始执行。
( )4、若int i=10,j=2;则执行i*=j+8;后i 的值为28。
( )5、在C 语言中do-while 至少执行1次。
( )6、算术运算符中‘%’的优先级高于‘*’。
( )7、int a[10];该语句表明数组a 中的第十个元素为a[10]。
( ) 8、函数putchar()的作用是:输入一个字符。
( )9、C 语言程序区分大小写。
( )10、在函数调用中将数组名字作为实参时,实现的是单向的值传递。
() 二、单项选择题(2’×15=30’)1、以下定义字符常量PI 语句正确的为( )。
A 、define PI 3.14B 、define PI= 3.14C 、#define PI=3.14D 、#define PI 3.142、在C 语言中,要求运算量必须是整型的运算符是( )。
A 、!B 、++C 、!=D 、%3、下列四个选项中,均是不合法的用户标识符是( )。
A 、A P_0 doB 、float lao _AC 、b-a if intD 、_123 temp INT4、C 语言的三种基本结构是( )。
A 、顺序结构、逻辑结构、选择结构B 、顺序结构、选择结构、循环结构C 、逻辑结构、层次结构、网状结构D 、层次结构、顺序结构、循环结构 系部:班级:学号:姓名:5、下列有关函数的叙述中,不正确的是()。
A、函数可以有返回值,也可以有参数B、函数可以没有返回值,也可以有参数C、函数可以没有返回值,也可以没有参数D、函数必须有返回值,也必须有参数6、设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为()。
2023年9月青少年软件编程C语言等级考试试卷三级(含答案)分数:100题数:5一、编程题(共5题,共100分)第1题.谁是你的潜在朋友“臭味相投”——这是我们描述朋友时喜欢用的词汇。
两个人是朋友通常意味着他们存在着许多共同的兴趣。
然而作为一个宅男,你发现自己与他人相互了解的机会并不太多。
幸运的是,你意外得到了一份北大图书馆的图书借阅记录,于是你挑灯熬夜地编程,想从中发现潜在的朋友。
首先你对借阅记录进行了一番整理,把N个读者依次编号为1,2,…,N,把M本书依次编号为1,2,…,M。
同时,按照“臭味相投”的原则,和你喜欢读同一本书的人,就是你的潜在朋友。
你现在的任务是从这份借阅记录中计算出每个人有几个潜在朋友。
时间限制:1000内存限制:65536输入第一行两个整数N,M,2<=N,M<=200。
接下来有N行,第i(i=1,2,…,N)行每一行有一个数,表示读者i-1最喜欢的图书的编号P(1<=P<=M)输出包括N行,每行一个数,第i行的数表示读者i有几个潜在朋友。
如果i和任何人都没有共同喜欢的书,则输出“BeiJu”(即悲剧,^^)样例输入452321样例输出1BeiJu1BeiJu参考答案:#include<iostream>using namespace std;int a[10000],ans,c;int main(){int n,m;cin>>n>>m;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(a[i]==a[j]){ans++;}}if(ans>1){cout<<ans-1<<endl;}else{cout<<"BeiJu"<<endl;}ans=0;}return0;}第2题.课程冲突小A修了n门课程,第i门课程是从第ai天一直上到第bi天。
一、选择填空:(每题1.5分,共15分)1.以下可以正确表示字符型常数的是。
(A) “a”(B) ‘297’ (C) ‘\t’ (D)“\n”2. typedef struct{ char name[10];int age;char interests[20];} student;以上语句中 student 是:(A)结构体变量,有存储空间 (B)结构体数据类型,无存储空间(C)结构体变量,无存储空间 (D)结构体数据类型,有存储空间3.函数:void f(void){int i = 12, j;for(j=0; j<20; j++)i++;}当f执行完退出后,i的值为_____ _____(A) 12 (B) 32 (C) 29 (D) 无定义4.若有以下说明: int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为6的表达式是(A)*p+6 (B)*(p+6) (C)*p+=5(D)p+55.以下代码执行后,result的值为:#define FIVE 2+3result = FIVE * FIVE(A) 11 (B) 13 (C) 25 (D)106.已知函数定义的形式如下:struct data *f(void){……}则函数f:(A) 没有参数,返回值是一个结构体(B)有一个参数void, 返回值是一个结构体(C)没有参数,返回值是一个结构体指针(D)有一个参数void, 返回值是一个结构体指针7.下列说法中,不正确的是_ ____(A)函数中可以没有return语句。
(B)所有的函数都不能嵌套定义,但可以相互调用。
(C)函数的实参应与其对应的形式参数类型一致。
(D)函数可以不加函数返回值类型标识符。
8.一个C程序的执行是。
(A)从本程序的main函数开始,到main函数结束(B)从本程序文件的第一个函数开始,到本程序文件最后一个函数结束(C)从本程序的main函数开始,到本程序文件的最后一个函数结束(D)从本程序文件的第一个函数开始,到本程序的main函数结束9.在C语言的算术运算符中只能用于整型数的运算符是(A)* (B)/ (C)++ (D)%10 在下列选项中,没有构成死循环的程序段是(A)int i=100;while (1) {i=i%100+1;if(i>=100) break;}(B)for(;;);(C)int k=1000;do{++k;} while (k>=1000);(D)int s=36while(s); --s;二、写出下列程序的运行结果:(共35分)1.(8分)int funa(int *a) { a[0] ++; }int funb(int b[]) { b[1] += 5; }main(){int a[5] = {2,3,4,5,6};int b[5] = {2,3,4,5,6};int *p, i;p = &a[0];(*p)++;funb(p);for(i = 0; i <5; i++)printf("%d,",a[i]);p = &b[1];funa(p);funb(p);for(i = 0; i < 5; i++)printf("%d,",b[i]);}运行结果:2、(6分)main(){char a[]="programming", b[]="language";char *p1,*p2;int i;p1=a; p2=b;for(i=0; *(p1+i)!=’\0’&&*(p2+i)!=’\0’;i++)if(*(p1+i)==*(p2+i)) printf("%c",*(p1+i)); }运行结果是:3、(8分)int f(int n){if (n==1){return 1;}else{return 2 * f(n/2);}}运行结果: f(20)的值是多少?4、(6分)void change (int *a, int *b){int x =* a;*a = *b; *b = x;printf(“%d %d “, *a, *b)';}void main(){int x=10,y=25;change (&x, &y);printf(“%d %d “, x, y)';}运行结果:5、(5分)已知字母A的ASCII码为十进制的65,下面程序的输出是void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}答案三、程序填空(每空2分,共38分)1、下面是一个求数组元素之和的程序。
湖北汽车工业学院《C语言程序设计》考试试卷3一、填空题(每小空1分,共20分)1.C语言程序的三种基本结构是、、。
2.一个C程序中必须有函数,无论该函数在整个程序中的位置如何,C程序总是从该函数开始执行。
3.C语言中没有逻辑型数据,在给出逻辑运算结果时,以代表“真”,以代表“假”。
4.为了避免嵌套的条件语句if-else的二义性,C语言规定else与if配对。
5.数组名作为参数传递给函数,作为实参的数组名被处理为该数组的。
6.静态变量和外部变量的初始化是在阶段完成的,而自动变量的初始化是在时进行的。
7.C语言中构造类型数据有、和。
8.void的用途有三个:①说明的函数;②在函数的参数表中写void,表示函数;③说明void型指针,它是一个指针,可被任何类型的指针赋值,也可以赋给任何类型的指针而不需强制转换。
9.C语言中可以用来实现循环的四种语句是、、、。
二、阅读填空(每小空2分,共26分)1.已知i=5,写出下列语句执行后整型变量i和a的值。
①a=i++;(a= ) ②i+=012;(i= ) ③i*=i+1;(i= )④a=(i>5)?0:1;(a= ) ⑤a= (a=i+1,a+2,a+3);(a= )2.执行下列语句后,*(p+2)的值是。
char s[3]=“ab”,*p;p=s;3.下列程序的功能是将字符串“Turbo C”纵向显示在屏幕上,请填空。
main( ){ char *p=“Turbo C”;for(;*p!=‘\0’; )printf(“%c\n”, );}4.下列程序计算1到100的整数的累加和。
main(){ int i,_______;for(__________________) sum+=i;printf(“sum=%d\n”,sum);}5.下列程序中maxmin()的作用是求整型数组a的最大元素和最小元素。
main(){ static x[3][3]={{1,2,3},{9,5,6},{-1,0,3}};int m1,m2;maxmin( );printf(“max=%d,min=%d\n”,m1,m2);}maxmin(int n,int a[][3],int *max,int *min){ int i,j;*max=*min=a[0][0];for(i=0;i<n;i++)for(j=0;j<n;j++)if( ) *max=a[i][j];else if( ) *min=a[i][j];}三、单项选择题(每小题2分,共36分)1.下列形式的常数中,C程序不允许出现的是_____。
试卷3一、单项选择题(共20小题;每小题1分,共20分)1、下列常量不合法的是( )。
A.1。
5E—2 B.‘BASIC’C.0x12 D.“\\good"2、下列变量名中不合法的是()。
A.iCount B.Stu_NO C.INT D.vc++3、设变量已正确定义并赋值,以下正确的表达式是().A.b=7++ B.x=3,++y C.a=7%3。
0 D.x=y+1=24、表达式sizeof(double)-sizeof(3。
1f)+3/2的值是()。
A.4 B.5 C.5.5 D.1.55、下列各语句序列判别变量a、b的大小,若a<b则交换它们的值,其中正确的是( ). A.if (a<b) {t=a; a=b;b=t;}B.if (a〈b)a=b;b=a;C.if(a〈b) {a=b;b=a;}D.if(a〈b)t=a; a=b;b=t;6、已知有程序段:int a=1,*p=&a,**q; q=&p; **q=3; printf(”%d\n”,a);则该程序段正确执行后输出结果为().A.1 B.3 C. 该程序段有语法错D。
该程序段没有输出结果7、若有说明:int *p,m=3,n;,则以下正确的程序段是()。
A.p=&n;scanf(”%d”,&p);B.p=&&n;scanf("%d”,*p); C.scanf(”%d",&n);*p=n; D.p=&n;*p=m;8、设有以下说明语句,则下面的叙述中不正确的是( ).typedef struct student{long StuNO;char Stuname[9];char sex;float cscore;}STU;A.typedef是给类型起别名B.STU是结构变量名C.StuNO是结构体STU的一个成员D.STU是结构类型名19、有定义或声明:int *myf(float x,long y);,若以下选项中的正确的是()。
一、单项选择题(本大题共20小题,每小题1分,共20分)1.下列说法正确的是()A.C程序可以从任何一个函数开始执行B.main函数可以被其它函数调用C.一个C程序只能有一个main函数D.main函数中不能有形参2.下列属于正确的标示符是()A.?aB.a=2C.a.3D.a_33.下列数据中属于“字符串常量”的是A.ABCB.“ABC”C.‘abc’D.‘a’4.char型常量在内存中存放的是()A.ASCII代码B.BCD代码C.内码D.十进制代码5.设字符型变量a=3,b=6,计算表达式c=(a^b)<<2后c的二进制值是()A.00011100B.00000111C.00000001D.000101006.若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c的值的类型为()A.floatB.intC.charD.double7.以下程序的输出结果是a=5,b=4,则输入数据的形式应该是()#include“stdio.h”main(){int a,b;scanf("%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);}A54B5,4C5b=4D5,b=48.C语言中,while和do…while循环的主要区别是()A.while的循环控制条件比do…while的循环控制条件严格B.do…while的循环体至少无条件执行一次C.do…while允许从外部转到循环体内D.do…while的循环体不能是复合语句9.循环语句for(x=0,y=0;(y!=123)||(x<4);x++);的循环执行()A.无限次B.不确定次数C.4次D.3次10.在C语言中,设有数组定义char array[]="China";则array所占的空间为()A.4个字节B.5个字节C.6个字节D.7个字节11.若变量已正确说明为int类型,要通过语句scanf(“%d%d%d”,&a,&b,&c);给a,b,c分别赋值3,5,8,不正确的输入形式是()A.3<enter>B.3,5,8<enter>5<enter>8<enter>C.3<enter>D.35<enter>58<enter>812.char*p="happy new year";char*q=p;int k;for(k=1;k<8;k++){putchar(*q);q++;}上面C程序段的输出结果是()A.happy new yearB.happy newC.happy nD.happyE.appy n13.设double*p[5];则A.p是指向double型变量的指针B.p是double型数组C.p是指针数组,其元素是指向double型变量的指针D.p是数组指针,指向double型数组14.两个指针变量不可以()A.相加B比较C相减D指向同一地址15.对C语言函数描述正确的是A.在C语言中调用函数时,只能把实参的值传给形参,形参的值不能传回给实参B.C函数既可以嵌套定义又可以递归调用C.函数必须有返回值,否则不能使用函数D.函数必须有返回值,返回值类型不定16.设有如下定义,则对data中的a成员的正确引用是()struct test{int a;float b;}data,*p=&data;A.(*p).data.aB.(*p).aC.p->data.aD.p.data.a17.有如下程序(提示:注意宏替换的规则)#define N2#define M N+1#define NUM2*M+1#main(){int i;for(i=1;i<=NUM;i++)printf(“%d\n”,i);}该程序中的for循环执行的次数是()A.5B.6C.7D.818.若有以下定义,则printf(“%d\n”,sizeof(them));的输出是()typedef union{long x[2];int y[4];char z[8];}MYTYPE;MYTYPE them;A.32B.16C.8D.2419.下列语句中,将c定义为文件型指针的是()A.FILE c;B.FILE*c;C.file c;D.file*c;20.下列关于C语言数据文件的叙述中正确的是A.文件由ASCII码字符序列组成,C语言只能读写文本文件B.文件由二进制数据序列组成,C语言只能读写二进制文件C.文件由记录序列组成,可按数据存放形式分为二进制文件和文本文件D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件二、填空题(本大题共10小题,每小题2分,共20分)1.在定义变量的同时给变量赋予初值就称为___________________________________ 2.下面程序段的输出结果是___________________________________________ int a=28;a=a&21;printf(“%d%o\n”,a,a);3.能正确表示0≤a≤10的逻辑表达式是_________________________________4.若有定义int a[3],*p;则使p指向数组a的赋值语句是_______________________ 5.strcmp函数的功能是________________________________________6.写出数学式a acbbx24 2-+-=的C语言表达式________________________________ 7.将以下程序写成三目运算符的表达式是____________________________________if(a>b)max=a;else max=b8.设有定义如下:#define F(N)2*N,则表达式F(2+3)的值是_____________________. 9.在C语言中,指针运算符为___________________,取地址运算符________________。
青少年软件编程(C语言)等级考试试卷(三级)分数:100 题数:5一、编程题(共5题,共100分)1.找和为K的两个元素找和为K的两个元素在一个长度为n(n < 1000)的整数序列中,判断是否存在某两个元素之和为k。
时间限制:1000内存限制:65536输入第一行输入序列的长度n和k,用空格分开。
第二行输入序列中的n个整数,用空格分开。
输出如果存在某两个元素的和为k,则输出yes,否则输出no。
样例输入样例输出#include<bits/stdc++.h>using namespace std;int main(){int a[1000],n,k,i,j,f=0;cin>>n>>k;for(i=0;i<n;i++){cin>>a[i];}for(i=0;i<n;i++)for(j=0;j<n;j++)if(a[i]+a[j]==k)f=1;if(f==0)cout<<"no";elsecout<<"yes";return 0;}试题编号:-11试题类型:编程题标准答案:试题难度:一般2.MinecraftMinecraftMinecraft是一个几乎无所不能的沙盒游戏,玩家可以利用游戏内的各种资源进行创造,搭建自己的世界。
在Minecraft中,基本的建筑元素是边长为1个单位的立方体,Tony想用N 个这种小立方体搭建一个长方体,并用他珍藏已久的贴纸对其进行装饰。
如果一张贴纸可以贴满小立方体的一个面。
那么,他需要用掉多少张贴纸呢?时间限制:1000内存限制:65536输入一个整数N,表示小明所拥有的小立方体的个数。
N不会超过1000。
输出一个整数,即小明最少用掉的贴纸有多少张。
样例输入样例输出#include<bits/stdc++.h>using namespace std;int main(){int i,j,k,n,s=0,min=1001*1001*1001;cin>>n;for(i=1;i<=n;i++)for(j=1;j<=i;j++)for(k=1;k<=i;k++){if(i*j*k==n&&(i*j+j*k+k*i)*2<=min)min=(i*j+j*k+k*i)*2;}cout<<min<<endl;}试题编号:-12试题类型:编程题标准答案:3.踩方格踩方格有一个方格矩阵,矩阵边界在无穷远处。
试卷编号:9689所属语言:C语言试卷方案:期中考试试卷总分:100分共有题型:5种一、填空共15题 (共计15分)第1题(1.0分) 题号:92C语言中的字符变量用保留字【1】来说明.答案:=======(答案1)=======char第2题 (1.0分)题号:433已知x=3,y=2,则表达式x*=y+8的值为【1】.答案:=======(答案1)=======30第3题(1.0分)题号:388设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为【1】.答案:=======(答案1)=======1.0=========或=========1第4题(1。
0分)题号:293getchar()函数只能接收一个【1】.答案:=======(答案1)======= 字符第5题(1.0分)题号:437以下程序的输出结果为【1】,#include ”stdio.h” main(){inta=010,j=10;printf("%d,%d\n”,++a,j--);}答案:=======(答案1)=======9,10第6题 (1。
0分)题号:498c语言程序的三种基本结构是:顺序结构,选择结构,【1】结构.答案:=======(答案1)=======循环第7题(1.0分)题号:100已知a=13,b=6, a||b的十进制数值为【1】.答案:=======(答案1)=======1第8题 (1。
0分) 题号:441设a=3,b=4,c=4,则表达式a+b>c&&b==c&&a||b+c&&b==c的值为【1】。
答案:=======(答案1)=======1第9题 (1.0分)题号:457设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!(a+b)+c-1&&b+c/2后,t的值是【1】。
答案:=======(答案1)=======1第10题(1.0分)题号:389设i,j,k均为int型变量,则执行完for循环for(i=0,j=10;i<=j;i++,j--) k=i+j;后,k的值为【1】。
一、单项选择题(本大题共20小题,每小题1分,共20分)1.下列说法正确的是()A.C程序可以从任何一个函数开始执行B.main函数可以被其它函数调用C.一个C程序只能有一个main函数D.main函数中不能有形参2.下列属于正确的标示符是()A.?aB.a=2C.a.3D.a_33.下列数据中属于“字符串常量”的是A.ABCB.“ABC”C.‘abc’D.‘a’4.char型常量在内存中存放的是()A.ASCII代码B.BCD代码C.内码D.十进制代码5.设字符型变量a=3,b=6,计算表达式c=(a^b)<<2后c的二进制值是()A.00011100B.00000111C.00000001D.000101006.若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c的值的类型为()A.floatB.intC.charD.double7.以下程序的输出结果是a=5,b=4,则输入数据的形式应该是()#include“stdio.h”main(){int a,b;scanf("%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);}A54B5,4C5b=4D5,b=48.C语言中,while和do…while循环的主要区别是()A.while的循环控制条件比do…while的循环控制条件严格B.do…while的循环体至少无条件执行一次C.do…while允许从外部转到循环体内D.do…while的循环体不能是复合语句9.循环语句for(x=0,y=0;(y!=123)||(x<4);x++);的循环执行()A.无限次B.不确定次数C.4次D.3次10.在C语言中,设有数组定义char array[]="China";则array所占的空间为()A.4个字节B.5个字节C.6个字节D.7个字节11.若变量已正确说明为int类型,要通过语句scanf(“%d%d%d”,&a,&b,&c);给a,b,c分别赋值3,5,8,不正确的输入形式是()A.3<enter>B.3,5,8<enter>5<enter>8<enter>C.3<enter>D.35<enter>58<enter>812.char*p="happy new year";char*q=p;int k;for(k=1;k<8;k++){putchar(*q);q++;}上面C程序段的输出结果是()A.happy new yearB.happy newC.happy nD.happyE.appy n13.设double*p[5];则A.p是指向double型变量的指针B.p是double型数组C.p是指针数组,其元素是指向double型变量的指针D.p是数组指针,指向double型数组14.两个指针变量不可以()A.相加B比较C相减D指向同一地址15.对C语言函数描述正确的是A.在C语言中调用函数时,只能把实参的值传给形参,形参的值不能传回给实参B.C函数既可以嵌套定义又可以递归调用C.函数必须有返回值,否则不能使用函数D.函数必须有返回值,返回值类型不定16.设有如下定义,则对data中的a成员的正确引用是()struct test{int a;float b;}data,*p=&data;A.(*p).data.aB.(*p).aC.p->data.aD.p.data.a17.有如下程序(提示:注意宏替换的规则)#define N2#define M N+1#define NUM2*M+1#main(){int i;for(i=1;i<=NUM;i++)printf(“%d\n”,i);}该程序中的for循环执行的次数是()A.5B.6C.7D.818.若有以下定义,则printf(“%d\n”,sizeof(them));的输出是()typedef union{long x[2];int y[4];char z[8];}MYTYPE;MYTYPE them;A.32B.16C.8D.2419.下列语句中,将c定义为文件型指针的是()A.FILE c;B.FILE*c;C.file c;D.file*c;20.下列关于C语言数据文件的叙述中正确的是A.文件由ASCII码字符序列组成,C语言只能读写文本文件B.文件由二进制数据序列组成,C语言只能读写二进制文件C.文件由记录序列组成,可按数据存放形式分为二进制文件和文本文件D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件二、填空题(本大题共10小题,每小题2分,共20分)1.在定义变量的同时给变量赋予初值就称为___________________________________ 2.下面程序段的输出结果是___________________________________________ int a=28;a=a&21;printf(“%d%o\n”,a,a);3.能正确表示0≤a≤10的逻辑表达式是_________________________________4.若有定义int a[3],*p;则使p指向数组a的赋值语句是_______________________ 5.strcmp函数的功能是________________________________________6.写出数学式a acbbx24 2-+-=的C语言表达式________________________________ 7.将以下程序写成三目运算符的表达式是____________________________________if(a>b)max=a;else max=b8.设有定义如下:#define F(N)2*N,则表达式F(2+3)的值是_____________________. 9.在C语言中,指针运算符为___________________,取地址运算符________________。
自考C语言程序设计模拟试卷及答案(3)一、单项选择题1B 2B 3D 4C 5D 6C 7A8C 9D 10A 11C 12D 13B 14D 15A 16B 17D 18B 19A 20C 21CB 1. 设int x=1,y=1;表达式(!x++ || y-—)的值是____B_____A.0 B。
1 C。
2 D.-1C 2.main(B){ int n;( n=6*4,n+6),n*2;printf(“n=%d\n",n);}此程序的输出结果是______C________。
A。
30 B。
24 C. 60 D. 48D 3.若有如下定义,则_____D_____是对数组元素的正确的引用。
int a[10], *p ;p=a ; p=a ; p=a ; p=a ;A。
*&a[10] B. a[11] C. *(p+10) D. *pC 4。
设整型变量n的值为2,执行语句“n+=n—=n*n;”后,n的值是__________A. 0 B。
4 C。
— 4 D。
2D 5.以下不能正确定义二维数组的语句是___________A 。
int a[2][2]={{1},{2}}; B. int a[][2]={1,2,3,4};C。
int a[2][2]={{1},2,3}; D. int a[2][]={{1,2},{3,4}};C D 6. 程序段的功能是将变量 u 、s中的最大值赋给变量t 。
A。
if(u>s) t=u;t=s; B。
t=u; if(t ) t=s;C. if(u>s) t=s;else t=u; D 。
t=s; if(u ) t=u;A 7.下列程序段的输出结果是。
void main(){ int k;for (k=1;k<5;k++〉{ if(k%2!=0)printf(“#”);elseprintf(“*"); }}A。
江苏省计算机等级考试- 学年第学期 c程序设计试卷(3 )1. 若有说明,double *p,a;则能通过scanf语句正确给输入项读入数据的程序段是A)*p=&a; scanf("%lf",p);B)p=(double*)malloc(8);scanf("%f",p);C) p=&a;scanf("%lf",a);D)p=&a; scanf("%le",p);2. 两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是main( ){ int x;scanf("%d",&x);if(x + + >5) printf("%d",x);else printf("%d\n",x - -); }A) 7和5 B) 6和3 C) 7和4 D) 6和43. 下面程序的输出是A) xyzabcABC B) zabcABC C) yzabcABC D) xyabcABC #include<stdio.h>#include<string.h>main(){ char *p1="abc",*p2="ABC",str[50]="xyz";strcpy(str+2,strcat(p1,p2));printf("%s\n", str);}4. 若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是A)a[g-c] B)a[4]C)a['d'-'c'] D)a['d'-c]5. 以下叙述中不正确的是A)在不同的函数中可以使用相同名字的变量B)函数中的形式参数是局部变量C)在一个函数内定义的变量只在本函数范围内有效D)在一个函数内的复合语句中定义的变量6. 请选出以下程序段的输出结果#include<stdio.h>#define MIN(x,y) (x)<(y)? (x):(y)main(){ int i,j,k;i=10; j=15;k=10*MIN(i,j);printf("%d\n",k);}A) 15 B) 100 C) 10 D)1507. 在C程序中,可把整型数以二进制形式存放到文件中的函数是A) fprintf函数B) fread函数C) fwrite函数D) fputc函数8. 设有以下语句:struct st {int n; struct st *next;};static struct st a[3]={5,&a[1],7,&a[2],9,'\0'},*p;p=&a[0];则表达式_____的值是6。
A)p + + ->n B) p->n + + C) (*p).n + + D) + + p->n9. C语言中形参的缺省存储类别是A)自动(auto) B)静态(static)C)寄存器(register) D)外部(extern)110. 执行下面的程序段后,变量k中的值为int k=3, s[2];s[0]=k; k=s[1]*10;A) 不定值B) 33 C) 30 D) 1011. 已知字母A的ASCII码为十进制的65,下面程序的输出是main(){ char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,CC) C,D D) 不确定的值12. 语句:printf("%d \n",12 &012);的输出结果是A) 12 B) 8 C) 6 D) 01213. 以下说法中正确的是A) C语言程序总是从第一个的函数开始执行B) 在C语言程序中,要调用的函数必须在main()函数中定义C) C语言程序总是从main()函数开始执行D) C语言程序中的main()函数必须放在程序的开始部分14. 以下程序运行后,输出结果是main( ){char *s="abcde";s+=2;printf("%ld\n",s);}A)cde B)字符c的ASCII码值C)字符c的地址D)出错15. 设x和y均为int型变量,则执行下的循环后,y值为for(y=1,x=1;y<=50;y++){if(x>=10)break;if(x%2==1){x+=5;continue;}x-=3;}A)2 B)4 C)6 D)816. 当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为if(a<b)if(c<d)x=1;else if(a<c)if(b<d)x=2;else x=3;else x=6;else x=7;A)1 B)2 C)3 D)617. 设所有变量均为int型,则表达式(a=2,b=5,b++,a+b)的值是A.7B.8C.6D.218. 设C语言中,一个int 型数据在内存中占2个字节,则unsigned int 型数据的取值范围为:A) 0-255B) 1-32767C) 0-65535D) 0-214748364719. 下面的程序main(){ int x=3,y=0,z=0;if(x=y+z)printf("* * * *");else printf("# # # #");}A) 有语法错误不能通过编译B) 输出* * * *。
C) 可以通过编译,但是不能通过连接,因而不能运行。
D) 输出# # # #。
220. 若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是A)3 B)4 C)5 D)6二、填空题(每空1分,共10分。
)1. 若有定义:double x[3][5],则x数组中行下标的下限为_________,列下标的下限为__________。
2. 设有说明语句"int a[3][4]={{1,2},{3,4,5},{6,7,8}};"则a[0][2]的初始化值为_____________,a[2][2]的初始化值为______________。
3. 表达式7/2的结果是____________。
表达式7%2的结果是____________。
4. 若已知a=1.5,b=15,c=1,则表达式a*b&&c的运算结果是____________。
5. C语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为______________。
6. 定义int a[]={1,2,3,4,5,6},*p=a;表达式(*++p)++的值是____________。
7. 已有int i,j; float x;为将-10赋给i,12赋给j,410.34赋给x;则对应scanf("%d,%d,%d",&i,&j,&f)调用语句的数据输入形式是__________三、判断题(本题共10道小题,共10分。
)1. 在实际编程中,do-while循环完全可以用for循环替换()2. do-while循环中,根据情况可以省略while()3. 若调用一个函数,且此函数中没有return语句,则返回一个不确定的值()4. 函数调用:strcat(strcpy(str1,str2),str3)的功能是将串str2复制到串str1中后再将串str3连接到串str1之后( )5. 自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式()6. 全局变量使得函数之间的"耦合性"更加紧密,不利于模块化的要求()7. 函数的定义可以嵌套,但函数的调用不可以嵌套()8. 一个变量在内存中占据一定的存储单元()9. 在while循环中允许使用嵌套循环,但只能是嵌套while循环()10. 字符型数组中可以存放字符串()四、程序填空(本题共5道小题,每题4分,共20分。
)1. 设有以下程序:main(){ int n1,n2;scanf("%d",&n2);while(n2!=0){ n1=n2%10;n2=n2/10;printf("%d",n1);}}程序运行后,如果从键盘上输入1298;则输出结果为_________。
2. 以下程序输出的最后一个值是__________。
int ff(int n){ static int f=l;f=f*n;return f;}main(){ int i;for(I=1;I<=5;I++ printf("%d\n",ff(i));}3. 编写程序,计算s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。
#include <stdio.h>main(){int n,s,sum=0;scanf("%d",&n);for(int i=1;i<=n;i++){____________;for(int j=1;j<=i;j++)_____________;sum+=s;}printf("%d",sum);3}4. 若输入3个整数3,2,1,则下面程序的输出结果是____________。
#include<stdio.h>void sub( n,uu)int n, uu[ ];{ int t;t=uu[n--]; t+=3*uu[n];n=n++;if(t>=10){ uu[n++]=t/10; uu[n]=t%10;}else uu[n]=t;}main( ){ int i, n, aa[10]={0,0,0,0,0,0}scanf( "%d%d%d",&n,&aa[0],&aa[1]);for(i=1; i<n; i++) sub(i,aa);for(i=0; i<=n; i++) printf("%d",aa[i]);printf("\n");}5. 下列程序的输出结果是___________。