c语言程序试题
⑴ C语言试题,求答案
一、选择题(共10个)
③ 2.③ 3.① 4.④ 5.③ 6.① 7.④ 8.① 9.① 10.①
二、填空题(共7个)
;
-32768 ~ 32767(16位机)
0
下划线 下划线
double a=0.618
11、6
三、判断题(共5个)
X
√
√
√
√
四、阅读以下C语言程序,以下程序的程序输出的结果是2,1。
五、有两个浮点数a=5.2,b=3.1,计算并输出它们的和、差、积、商。
//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"//
void main(void){
double a=5.2,b=3.1;
printf("a + b = %f a - b = %f a x b = %f a÷ b = %f ",a+b,a-b,a*b,a/b);
}
⑵ 《C语言程序设计》试题2 求解 请勿乱填 非常感谢
二、填行侍空题(20分)
21.若w=1,x=2,y=3,z=4;则条件表达式w>x?w:y<z?y:z的结果为_3_。
22.共用体类型的标志是 union 关键字。
23.定义整型一维数组a含有10个元素且初始化为0的语句是_int a[10]=0;__。
24.在C语言中,打开文件的函数名是_fopen()_ 。
25.在C语言中“逻辑运算符”有三种,它们分别是与&& 或|| 非!__ 。
26.若在C程序中使用到库函数〃sqrt(36) 〃,应在程序开头写上文件包含命令: math.h
27.在C语言中,编译预处理功能主要包括:文件包含段带迟、条件编译和 __宏定义;___。
28.语句printf(〃%d,%c〃, ˊAˊ, ˊAˊ+1)的输出结果是_65,B___。
29.在C语言中,二维数组元素在内存中的存放形式是 按行存放 。
30.十六进制0x2f表示的十进制数是__639_ 。
三、写出程序执行结果(20分)
31. main ( )
{ int a, b, m, n ;
a=8;
b=10;
m=++a;
n=b++;
printf(〃%d,%d,%d,%d〃, a, b, m. n) ;
}
执行的结果是:
9,11,9,10
32. int fac( int n)
{ static int f=1; 执行的结果是:
f=f*n;
return(f);
}
main()
{ int i;
for(i=1;i<=5;i++)
printf("%d!=%d\n",i,fac(i));
}
1!=1
2!=2
3!=6
4!=24
5!=120
33. main()
{ char s[]="ABCD",*p;
for(p=s;p<s+4;p++) printf("%s\n",p);
}
执行的结果是:
ABCD
BCD
CD
D
34. void uu(int m){
printf("%3d" ,m%10);
if(m/握李10 != 0)
uu(m/10);
}
main(){
uu(678);
}
执行的结果是:
8 7 6
⑶ 求一份C语言程序设计的期末考试试题!!!谢谢了
一. 选择题 (共15题, 每题2分,共30分)
1. 定义结构体的关键字是( )
A. union B. enum C.struct D.typedef
2. 设整型变量a为5,使b不为2的表达式是( )
A. b=a/2 B. b=6-(--a) C. b=a%2 D. b=a>3?2:1
3. 下面哪一项是不正确的字符串赋值或赋初值的方法( )
A. char *str; str= “china”;
B. char str[7]= {‘c’, ‘h’, ‘i’, ‘n’, ‘a’};
C. char str1[]= “china”,str2[]=“123”;
D. char str1[10]; str1= “china”;
4. 以下对二维数组a进行正确初始化的是( )
A. int a[2][3]={{1,2},{3,4},{5,6}}; B. int a[ ][3]={1,2,3,4,5,6};
C. int a[2][ ]={1,2,3,4,5,6}; D. int a[2][ ]={{1,2},{3,4}};
5. 选出下列标识符中不是合法的标识符的是( )
A. hot_do B. cat1 C. _pri D. 2ab
6. 以下说法中正确的是( )
A. C语言程序总是从第一个的函数开始执行
B. 在C语言程序中,要调用的函数必须在main()函数中定义
C. C语言程序总是从main()函数开始执行
D. C语言程序中的main()函数必须放在程序的开始部分
7. 若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )
A. p+1 B. a+1 C. a++ D. ++p
8. 若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是( )
A. i= *p; B. *p=*&j; C. i=&j; D. i=* *p;
9. 若变量c为char类型,能正确判断出c为小写字母的表达式是( )
A. ‘a’<=c<= ‘z’ B. (c>= ‘a’) || (c<= ‘z’)
C. (‘a’<=c) and (‘z’>=c) D. (c>= ‘a’) && (c<= ‘z’)
10. 以下程序的输出结果是( )
main()
{ int a[]={1,2,3,4,5,6,7,8,9}, *p;
p=a;
*(p+3)+=2;
printf( “%d,%d\n”,*p,*(p+3) ); }
A. 0, 5 B. 1, 6 C. 1, 5 D. 0, 6
11. 以下程序的输出结果是( )
main()
{ int a=5;
float x=3.14;
a*=x*(‘E’- ‘A’);
printf(“%f\n”,(float)a); }
A. 62.000000 B. 62.800000 C. 63.000000 D. 62
12. 以下程序的输出结果是( )
#define f(x) x*x
main()
{ int a=6,b=2,c;
c=f(a)/f(b);
printf(“%d\n”,c); }
A. 9 B. 6 C. 36 D. 18
13. 定义如下变量和数组:int i; int x[3][3]={1,2,3,4,5,6,7,8,9};
则语句for(i=0;i<3;i++) printf("%d ",x[i][2-i]); 的输出结果是( )
A. 1 5 9 B. 1 4 7 C. 3 5 7 D. 3 6 9
14. 下列程序段的输出结果是 ( )
void main( )
{ int k;
for (k=1;k<5;k++)
{ if(k%2!=0)
printf( “#” );
else
printf(“*”) ; }
}
A. #*#* B . *#*# C. ## D. **
15. 下列程序执行后输出的结果是( )
int d=1;
fun (int p)
{ int d=5;
d + =p + +;
printf("%d,",d); }
main( )
{ int a=3;
fun(a);
d + = a + +;
printf("%d\n",d); }
A. 8, 4 B. 9, 6 C. 9, 4 D. 8, 5
二. 填空题(共7题,每空2分,共30分)
1. 数组 int a[3][5]; 共定义了_______________个元素。
2. 有float f=3.1415927; 则 printf(“%5.4f”, f );输出的结果是_______________。
3. 下面程序的功能是:输出 100以内(不包含100)能被 3整除且个位数为 6的所有整数,请填空。
main( )
{ int i;
for(i=1; _______________; i++)
if (_______________)
printf("%d", i);
}
4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是 _______________
5. 以下是使用指针,进行字符串复制的程序,请填空。
main()
{ char a[]= “Tsinghua University”, b[30], *p1,*p2;
p1=a;
p2=b;
for(; *p1!= ‘_______________’; p1++, p2++)
_______________=_______________;
*p2= ‘_______________’;
printf(“string a is:%s\n”,a);
printf(“string b is:%s\n”,b);
}
6. 下面程序用冒泡法对数组a进行降序排序,请填空。
main()
{ int a[5]={4,7,2,5,1};
int i,j,m;
for(i=0;i<4;i++)
for(j=0;j<_______________;j++)
if( _______________< _______________ )
{ m=a[ j];
a[ j]=a[ j+1];
a[ j+1]= m; }
for(i=0;i<5;i++)
printf("%d ",a[i]);
}
7. 函数fun的功能是:使一个字符串按逆序存放,请填空。
void fun (char str[])
{ char m; int i,j;
for(i=0,j=strlen(str);i<_______________;i++,j--)
{ m=str[i];
str[i]= _______________;
str[j-1]=m;
}
printf("the rotated string is %s\n",_______________);
}
⑷ 急求解答:C语言程序设计试题 请专长人士帮忙解答 谢!!!
一、填空题
1.一个函数一般由两部分组成,它们分别是函数名和函数体。
2.一个C语言的程序至少应包含一个主函数。
3.函数体用{符号开始,用}符号结束。
4.欲将一个16位二进制的整数变量的高8位清零,而只保留低8位,可用的方法是和0x00ff进行与运算。
5.数组在内存中是一块连续的储存区,数组名代表首地址。
6.函数直接或间接的自己调用自己,被称作函数信如的递归调用。
7.函数在内部定义只在本函数内有效的变量叫内部变量,在函数以滑薯启外定义的变量叫外部变量。
二、选择题
1.下列变量中合法的是(没对的,A改成B_C_Tom就对,C改成_6a7b对)
A. B.C.Tom B.3a6b C.-6a7b D. $ABC
2.下面两对用户定义标识符哪个可读性最强(c)
A. cheackquality B. salarytotal C. check-quality D. sa-la-ry-tot-al
3.设 int m=10,则下列表达式的值不等手拦于0的有(D)
A. m=10/11.0 B. m==8 C. ~m&m D ~(m|m)
4.设 int x=25,则表达式 (x&20>>1)|(x>10|7&x^33)的值是(D)
A. 35 B. 43 C. 42 D. 41
5.C语言中,逻辑“真”等价于(C)
A. 大于0的数 B.大于0的整数 C.非0的数 D. 非0的整数
6.有段程序:int x=20; do{x/=2;}while(x--);请问此循环执行(A)次。
A. 4 B. 3 C. 5 D.不确定
7.下面选项中,于if(a)等价的是(C)
A. if(a==0) B.if(a!=0) C.if(a=0) D. if(a==1)
8.为判断字符串s1是否大于字符串s2,正确的语句是(C)
A.if(s1>s2) B.if(strlen (s1)>strlen(s2)) C.if(strcmp (s1,s2)>0) D.if (strcmp (s1,s2)==1)
⑸ C语言程序设计试题
1.代码文件 :包含指令不仅仅限于.h头文件,可以包含任何编译器能识别的C/C++代码文件,包括.c,.hpp,.cpp,.hxx,.cxx等,甚至.txt,.abc等等都可以.
2. 赋值
3. x++
4. p[4] 因为sizeof(int) 的值为4,实际上是定义了一个整形数组
5. if
6. DataType
7. 实参变量
8. weirong18
9. float
10. 33 因为++运算符优先级高于* ,故先计算++y,然后将y的值与3相乘得到33
11. (1) ch>='a' && ch<='z'
(2) (x==0 || x==1) && (y>=1.0 && y<=6.0)
12. (1) int array[10] = {9,4,7,49,32,-5};
(2)0 到 9
(3)scanf("%d",&array[1]);
(4)array[0] = 39;
(5)array[0] = array[5]+array[3];
⑹ 谁能提供点C语言的试题给我,最好能有答案的,非常感谢!
以下是一些 C 语言的试题,每个试题都附带有答案。希望能够帮助到你。
1、编写一个程序,从命令行参数中读取两个整数,计算它们的和并输出结果。
答案:
#include <stdio.h>
int main(int argc, char *argv[]) {
if (argc != 3) {
printf("Usage: %s <int1> <int2>
", argv[0]);
return 1;
}
int x = atoi(argv[1]);
int y = atoi(argv[2]);
printf("%d + %d = %d
", x, y, x + y);
return 0;
}
2、编写一个函数,接受两个参数 a 和 b,返回它们的最大公约数。
答案:
int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
3、编写一个程序,从标准输入中读取一个字符串,将其中的大写字母转换为小写字母,并输出转换后的字符串。
答案:
#include <stdio.h>
#include <ctype.h>
int main() {
char c;
while ((c = getchar()) != EOF) {
putchar(tolower(c));
}
return 0;
}
4、编写一个程序,从标准输入中读取一个字符串,判断其中是否有重复的字符,并输出结果。
答案:
#include <stdio.h>
#include <stdbool.h>
bool has_plicate_chars(const char *str) {
bool seen[256] = { false };
while (*str != '