C语言程序设计试卷及答案
CC语言程序具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大。以下是由阳光网小编整理关于C语言程序设计试卷的内容,希望大家喜欢!
C语言程序设计试卷
一、单项选择题(20分,每题2分)
1.若整型变量a、b、c、d中的值依次为:1、4、 3、2。则条件表达式(a<b?a:b)<(c<d?c:d)的值是。
A)1 B)2 C)3 D)0
2.for(i=0;i<10;i++)
if(i〈=5) break;
则循环结束后i的值为
A)0 B)1 C)5 D)10
3.下面正确的字符常量是:
A)“c” B)‘\\’’ C)‘W’ D)‘’
4.C语言中,运算对象必须是整型的运算符是:
A)% B)/ C)* D)+
5.数字字符0的ASCII值为48,若有以下程序
main()
{
char a='1', b='2';
printf("%c,",b++);
printf("%d\n",b-a);
}
程序运行后的输出结果是。
A) 3,2 B)50,2 C)2,2 D)2,50
6.以下选项中不能作为合法常量的是。
A)1.234e04 B)1.234e0.4 C)1.234e+4 D)1.234e0
7.以下说法正确的是
A)C程序总是从第一个定义的函数开始执行
B)在C程序中,要调用的函数必须在main()函数中定义
C)C程序总是从main()函数开始执行
D)C程序的main()函数必须放在程序的开始部分
8.若有说明:char c=‘\72’;则变量c:
A)包含一个字符 B)包含2个字符
C)包含3个字符 D)说 明不合法,c的值不确定
9.以下说法正确的是
A)C程序总是从第一个定义的函数开始执行
B)在C程序中, 要调用的函数必须在main()函数中定义
C)C程序总是从main()函数开始执行
D)C程序的main()函 数必须放在程序的`开始部分
10.int *p1,*p2,a[10];
p1=a;
p2=&a[5];
则p2-p1 的值为:
A)无法 确定 B)10 C)5 D)12
二、填空题(30分,每空2分)
1.已知宏定义#define s 2+3
printf(”%d”,s*4) ;的输出结果是__(1)_____。
2.若已知a=10,b=2 .0,则表达式!a<b的值是_____(2)______
3.已知fun1函数的功能是将三个数按由大到小的顺序调整后依次放入a,b,c三个变量中,其中a存放最大的数,利用fun2函数填空完成此功能。
void fun2(int *x,int *y)
{
int t;
t=*x; *x=*y.; *y=t;
}
void fun1()
{
int a=20, b=30, c=25;
if(c>b) fun2(__.___(3)_______);
if(a<c) fun2(_____(4)_______);
if(a<b) fun2(_____(5)_______);
}
4.有以下程序,.执行后输出结果是 (6) 。
main( )
{ int t=1,i=5;
for(;i>=0;i--) t*=i;
printf("%d\n",t);
} ..
..
5.C语言函数是由函数头和..函数体两部分组成。其中,函数头包括 (7) ,(8) 和(9) 。
6.表达式(a==b)&&(a>b)的值是___(10)____。
7.将下列字符串表示成C语言的字符串常量
C:\TC\LIB_____(11)_________
He said:"I’m a student."___________(12)_________________
85% student passed.______________(13)_____________
8.下面程序的功能是..计算1-3+5-7+…-99+101的值存在s中,请填空。
#include <stdio.h>
#include <stdio.h>
main()
{
int i,t=1,s=0;
for(i=1;i<=101;__(14)__)
{
.
s=s+i*t;
t=__(15)___;
}
.
}
三、读程序写结果
1.写出程序的运行结果
#include <stdio.h>
main()
{
int i, sum=0;
for(i=0;i<20; i++)
{
sum += i;
if((i%2==0) || (i%3==0) )
i += 5;
}
printf("%d", sum);
}
}
2.写出程 序运行后的 输出结果
#include <string.h>
char *ss(char *s)
{
return s+strlen(s)/2;
}
main( )
{ char *p,*str="abcdefgh";
p=ss(str);
printf("%s\n",p);
}
3.
(1)函数sub()的功能是什么?
(2)写出程序运行的输出结果。
int sub(int num)
{
int i,product=1;
for(i=1;i<=num;i++)
product*=2;
return(product);
}
main()
{
int i,sum=0;
for(i=0;i<=3;i++)
{
sum+=sub(i);
printf("sum%d=%d\n",i,sum);
}
}
四、编程(完形填空)(20分,每题10分)
1.找出100以内满足下列条件的正整数,并按每行4个数字的格式显示在屏幕上。条件:能被7整除但不能被9整除,或者不能被7整除但可以被11整除。
main()
{
int i,count=___(1)___;
printf("\nthese numbers are:\n");
for(i=1;i__(2)____100;i++)
if((i%7==0&&i%9!=0) _(3)__(i%7!=0__(4) _i%11==0))
{
count++;
printf("%10d",i);
if(count%4==0)
printf("___(5)_____");
}
}
2.以下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差,
例如:输入的两个字符串分别为abcd和abcfe,则输出为-2.请完成填空.
#include <stdio.h>
main()
{
char str1[100],str2[100],c;
int i,s;
printf("\ninput string1:\n");
gets(str1);
printf("\ninput string2:\n");
gets(__(6)____);
i=0;
while((str1[i]==str2[i])&&(str1[i]!=_(7)__))
___(8)____;
s=____(9)_____;
printf("___(10)_____\n",s);
}
C语言程序设计试卷答案
一、单项选择题(20分,每题2分)
1.A 2.A 3.B 4.A 5.C 6.B 7.C 8.A 9.C 10.C
二、填空题( 30分,每空2分)
(1) 14
(2) 1
(3) &b,&c
(4) &a,&c
(5) &a, &b
(6) 0
(7) 函数说明
(8) 函数名
(9) 圆括号中 的形式参数
(10) 0
(11) "C:\\TC\\LIB"
(12) "C:\\TC\\LIB"
(13) "He said:\"I\' m a student.\""
(14) i+=2
(15) -t
三、写出程序的运行结果(30分,每题10分)
1. 36
2. efgh
3. (1) 函数sub( )的功 能是根据当前实参i的值 控制其for循环的次数,进一步控制运算:product*=2的次数。 (注:非标准答案,表述相近既可)
(2) 运行结果:
sum0=1
sum1=3
sum2=7
sum3=15
四、编程(完形填空)(20分,每题10分)
1.
(1) 0
(2) <=
(3) ||
(4) &&
(5) \n
2.
(6) str2
(7) '\0'
(8) i++
(9) str2[i]-str1[i]
(10) %d
【C语言程序设计试卷及答案】相关文章: