当前位置:首页 > c语言试卷一(含答案)
} }
7、利用插入排序法将十个字符从小到大排序 #include
void insert(char s[]) {
int i,j,t;
for (i=1;i<=9;i++) {t=s[i];j=i-1;
while ((j>=0)&&( ))
{ s[j+1]=s[j]; ;} s[j+1]=t; } }
main() {
char a[11];int i;
for (i=0;i<10;i++) a[i]=getchar(); insert(a); puts)a); }
8、用递归法将一个整数n转换成字符串。如输入整数483,则输出字符串“483”。 void convert(n) int n; { int k;
if ((k/10)!=0) convert( ); putchar(n+'0'); }
main() { int num;
printf(\输入整数:”); scanf(\
printf(\输出是:\
if (num<0) {putchar('-');num=-num;} ; }
三、判断题(每题2分,共20分)
( )1、在对某一函数进行多次调用时,系统会对相应的自动变量重新分配存储单元。 ( )2、在C语言的复合语句中,只能包含可执行语句。
( )3、自动变量属于局部变量。
( )4、一个函数利用return只能返回一个函数值。
( )5、在程序运行过程中,系统分配给实参和形参的内存单元是不同的。 ( )6、用scanf输入字符时,字符串中不能包含空格。 ( )7、Continue 和break都可用来实现循环体的中止。
( )8、若将C源程序经过编译、连接后生成可执行文件,则可直接在DOS系统下输入可执行文件名执行。
( )9、字符常量的长度肯定为1。
( )10、已知:char c=48;int i=1,j=10;执行语句j=!(c>j)&&i++;则i和j的值分别是1和0。
四、编程题:(14分)
编写程序,求1!+2!+??n!,要求从主函数输入n的值,用函数实现阶乘的计算,并通过函数值返回(请注意合理的类型选取)。
答案
一、选择题
1、c 2、d 3、D 4、D 5、A 6、C 7、C 8、D 9、D 10、A 11、C 12.B 13.B 14.B 15.D 16.A 17.D 18.D 19.C 20.C
二、填空题:
1、**300000 2. *(p+6) 3. 456789 4.max=a>b?a:b 5、n2!=0 n2/10
6、 i%j= =0; c%5==0; 7、t j—
a[i]=’\\0’;
8. n/10 convert(num)
三、判断题
对,错,对,对,对,对,错,对,对,对
四、编程题 略
共分享92篇相关文档