c语言基础试题及答案

合集下载

C语言入门试题及答案

C语言入门试题及答案

C语言入门试题及答案试题一:数据类型和运算符1. 请简要描述C语言中的整型数据类型,并列举相应的关键字。

2. 解释一下算术运算符和逻辑运算符,并给出相应的示例代码。

3. 编写一个程序,要求用户输入两个整数,然后输出它们的和。

答案:1. C语言中的整型数据类型包括:int、short、long和char。

相应的关键字分别为:int、short、long和char。

2. 算术运算符可以进行基本的加减乘除运算,包括:加法(+)、减法(-)、乘法(*)和除法(/)。

逻辑运算符用于进行逻辑判断,包括:与(&&)、或(||)和非(!)。

示例代码如下:算术运算符示例代码:```c#include <stdio.h>int main() {int a = 10;int b = 5;int sum = a + b;int difference = a - b;int product = a * b;int quotient = a / b;printf("Sum: %d\n", sum);printf("Difference: %d\n", difference); printf("Product: %d\n", product);printf("Quotient: %d\n", quotient);return 0;}```逻辑运算符示例代码:```c#include <stdio.h>int main() {int a = 5;int b = 10;int result1 = (a > 0) && (b < 20);int result2 = (a > 0) || (b > 20);int result3 = !(a > 0);printf("Result 1: %d\n", result1);printf("Result 2: %d\n", result2);printf("Result 3: %d\n", result3);return 0;}```3. 编写一个程序,要求用户输入两个整数,然后输出它们的和。

计算机c语言基础试题及答案

计算机c语言基础试题及答案

计算机c语言基础试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. voidD. int答案:D2. 在C语言中,用于定义一个结构体的关键字是?A. structB. unionC. enumD. typedef答案:A3. 下列哪个选项不是C语言中的合法整型常量?A. 0x1AB. 0X1AC. 0X1GD. 0答案:C4. C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {'H', 'e', 'l', 'l', 'o', '\0'};C. char str[] = "Hello", "World";D. char str[] = "Hello" "World";答案:A5. 在C语言中,以下哪个运算符用于计算两个整数的和?A. &&B. ||C. +D. %答案:C6. C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B7. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. _variableD. variable$答案:B8. 在C语言中,以下哪个选项用于定义一个全局变量?A. staticB. externC. autoD. register答案:B9. C语言中,以下哪个函数用于输出格式化的字符串到标准输出?A. printfB. scanfC. fprintfD. sprintf答案:A10. 在C语言中,以下哪个选项用于定义一个指针?A. int *p;B. int p[];C. int (*p)();D. int p[10];答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个字符型变量的关键字是______。

c语言试题

c语言试题






四、阅读程序题(写出程序的运行结果) 1.【程序】 swap1(int x,int y) { int w; w=x; x=y; y=w;} swap2(int *p1,int *p2) { int *p; p=p1; p1=p2; p2=p;} swap3(int *pa, int *pb) { int p; p=*pa; *pa=*pb; *pb=p;} main() { int a,b; int *ptr1,*ptr2; a=5; b=7; ptr1=&a; ptr2=&b; swap1(*ptr1,*ptr2); printf("data1=%d\tdata2=%d\n",*ptr1,*ptr2); swap2(ptr1,ptr2); printf("data3=%d\tdata4=%d\n",*ptr1,*ptr2); printf("data5=%d\tdata6=%d\n",a,b);



16. 以下程序的输出结果是( A )。 main() { char st[20]="hello\0\t\\"; printf("%d%d\n",strlen(st),sizeof(st)); } A.520 B.99 C.1320 D.2020 17. 不合法的main函数命令行参数表示形式是( C )。 A.main(int argv,char *arge[]) B.main(int arc,char **arv) C.main(int argc,char *argv) D.main(int a,char *c[]) 18. 若有说明语句:int a,b,c,*d=&c;则能正确从键盘读入三个整数分别赋给变量a、b、c 的语句是( C )。 A.scanf("%d%d%d",a,b,d); B.scanf("%d%d%d",&a,&b,&d) C.scanf("%d%d%d",&a,&b,d); D.scanf("%d%d%d",a,b,*d);

C语言入门试题及答案

C语言入门试题及答案

C语言入门试题及答案1.int a;()A、声明一个整型变量a。

(正确答案)B、声明一个实型变量a。

2.float b;()A、声明一个实型变量b。

(正确答案)B、声明一个整型变量b。

3.char c;()A、声明一个字符型的变量c。

(正确答案)B、声明一个整型的变量c。

4.int a=66;()A、声明一个整型的变量a,并给它赋值为66。

(正确答案)B、声明a等于66。

5.float b=2.5;()A、声明一个实型的变量b并给它赋值2.5。

(正确答案)B、声明b等于2.56.char c='m';()A、上面一个字符型的变量,c给它赋值m。

(正确答案)B、声明c等于m7.int i,j,k;()A、声明三个整型的变量分别是ijk。

(正确答案)B、声明三个实型的变量分别是ijk。

8.scanf("%d",&a);()A、从键盘输入一个值,赋给整形变量a(正确答案)B、打印整型变量a的值9.printf("%d",a);()A、按整型的格式输出变量a。

(正确答案)B、从键盘输入一个值,赋值给a10.scanf("%d%d",&a,&b);()A、从键盘输入两个值,依次赋给整形变量a和b。

(正确答案)B、输出两个整形变量ab。

11.printf("%d,%d",a,b);()A、输出两个整形变量ab。

(正确答案)B、从键盘输入两个值,依次赋给整形变量a和b。

12.scanf("%d%f",&a,&b);()A、从键盘输入两个值,第一个赋给整型变量a,第二个赋给浮点型变量b。

(正确答案)B、输出两个变量,一个是整形变量,a一个是实型变量b。

13.printf("%d,%f",a,b);()A、输出两个变量,一个是整型变量,a一个是实型变量b。

c语言基础试题库及答案

c语言基础试题库及答案

c语言基础试题库及答案一、选择题1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言的标准数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,用于实现循环的关键字是:A. whileB. forC. ifD. switch答案:A、B4. C语言中,用于定义函数的关键字是:A. functionB. defC. voidD. int答案:C5. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. int答案:B、C二、填空题1. C语言中,________关键字用于定义一个数组。

答案:int2. 在C语言中,________关键字用于定义一个指针。

答案:*3. C语言中,________关键字用于定义一个函数。

答案:int4. 在C语言中,________运算符用于求两个数的和。

答案:+5. C语言中,________运算符用于判断两个数是否相等。

答案:==三、简答题1. 请简述C语言中函数的定义和调用过程。

答案:函数定义包括函数的返回类型、函数名、参数列表和函数体。

函数调用则是通过函数名和参数列表来调用已定义的函数。

2. 解释C语言中指针的概念及其用途。

答案:指针是一种变量,它存储了另一个变量的内存地址。

指针常用于动态内存分配、数组处理和函数参数传递。

四、编程题1. 编写一个C语言程序,计算并输出100以内所有偶数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for(int i = 1; i <= 100; i++) {if(i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d", sum);return 0;}```2. 编写一个C语言函数,用于交换两个整数变量的值。

C语言试题库(含答案)

C语言试题库(含答案)
C、Print f("%c\n",class[2].name[l]);
D、print f("%c\n",class[2].name[0]);
标准答案:D
【5】设单精度变量f,g的值均为5.0,则下面的表达式中,使f为10.0的表达式是。
A、f+=g
B、f-=g+5
C、f*=g-5
D、f/=g*5
标准答案:A
if(ch=='/')w=a/b;
B、B)if(ch=='*')w=a*b;
else if(ch=='/')w=a/b;
if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
C、if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
if(ch=='*')w=a*b;
A、15
B、10
C、25
D、20
标准答案:A
【15】程序段的基本结构中,不包含()。
A、函数结构
B、循环结构
C、顺序结构
D、分支结构
标准答案:A
【1】执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是。
A、1
B、2
C、1,2
D、12
标准答案:c
【3】若用数组名作为函数调用的实参,传递给形参的是()。
#include<stdio.h>
main()
{int i=1;

c语言程序设计基础试题及答案

c语言程序设计基础试题及答案

c语言程序设计基础试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是C语言中的合法整数?A. 0x10B. 0X1GC. 08D. 0L答案:A3. 在C语言中,用于定义一个函数的关键字是?A. defineB. functionC. defD. void答案:B4. C语言中,以下哪个是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str = "Hello";D. char str[] = 'Hello';答案:A5. 在C语言中,以下哪个运算符用于求余?A. %B. /C. //D. %答案:A二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量的关键字是________。

答案:int2. 如果一个函数没有返回值,应该使用________关键字声明。

答案:void3. 在C语言中,________运算符用于连接字符串。

答案:+4. C语言中,________运算符用于比较两个值是否相等。

答案:==5. 在C语言中,________关键字用于定义一个指针变量。

答案:*三、简答题(每题5分,共20分)1. 简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以被当作指向数组第一个元素的指针。

数组的每个元素可以通过指针运算来访问。

2. 解释C语言中函数原型声明的作用。

答案:函数原型声明提供了函数的名称、返回类型和参数类型,但不需要函数体。

它允许在函数定义之前调用函数,同时帮助编译器检查函数调用的正确性。

3. 什么是C语言中的预处理指令,举例说明。

答案:预处理指令是C语言中的特殊命令,用于在编译之前处理源代码。

C语言试题和答案大全

C语言试题和答案大全

模块1 C语言基础知识1. 选择题(1)C语言中运算对象必须是整型的运算符是(B )。

A. %=B. /C. =D. <=(2)以下所列的C语言常数中,错误的是(B )。

A. 0xFFB. 1.2E0.5C. 2LD. -.67(3)以下选项中能作为用户标识符的是( C )。

A. voidB. 7_9C. _3_D. Dr.Tom(4)以下所列的C语言字符常量中,合法的是( B )。

A. ”B”B. ’\n’C. ’中国’D. d(5)以下选项中正确的定义语句是( D )。

A. int a:b;B. int ,a,b;C. int a+b=6;D. int a=6,b;(6)以下关于long、int、short型数据占用内存大小的叙述中正确的是( D )。

A. 均占4个字节B. 根据数据的大小来决定所占内存的字节数C. 由用户自己定义D. 由C语言编译系统决定(7)若有定义语句:int x=10;,则表达式x-=x+x的值为( B )。

A. -20B. -10C. 0D. 10(8)表达式((a=3*5,a+4),a+5)的值是( A )。

A. 20B. 29C. 60D. 90(9)若有定义语句:int a=3,b=4,c=5;,则以下表达式中值为0的是( D )。

A. a&&bB. a<=bC. a||b+c&&b-cD. !((a<b)&&c||1)(10)设有以下定义:int i;char c;float f;,以下结果为整型的表达式是( B )。

A. i+fB. i*cC. c+fD. i+c+f2. 填空题(1)设有int n=12;,则表达式(n++*1/3)的值是 4 。

(2)定义以下变量:char c;int x;float y;double z;,则表达式c*x+y-z,所求得的数据类型为double 。

(3)设变量a和b已正确赋初值,请写出a/=a+b等价的赋值表达式a=a/(a+b) 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c语言基础试题及答案
一、选择题
1、在C语言中,引用数组元素时,其数组下标的数据类型允许是。

A、整型常量
B、整型表达式
C、整形常量或整形表达式
D、任何类型的表达式
2、以下对一维整型数组a的正确说明是____
A、int a(10) ;
B、int n=10,a[n];
C、int n;
scanf(“%d”,&n);
int a[n];
D、#define SIZE 10
int a[SIZE];
3、若有定义:int a[10],则对数组a元素的正确引用是
A、a[10]
B、a[3.5]
C、a(5)
D、a[10-10]
4、以下能对一维数组a进行正确初始化的语句是。

A、int a[10]={0,0,0,0,0};
B、int a[10]={} ;
C、int a[ ] = {0} ;
D、int a[10]={10*1} ;
5、若有定义:int a[3][4],则对数组a元素的正确引用是________
A、a[2][4]
B、a[1,3]
C、a(5)
D、a[10-10]
6、以下能对二维数组a进行正确初始化的语句是_______
A、int a[2][]={{1,0,1},{5,2,3}} ;
B、int a[][3]={{1,2,3},{4,5,6}} ;
C、int a[2][4]={{1,2,3},{4,5},{6}} ;
D、int a[][3]={{1,0,1},{},{1,1}} ;
7、若有说明:int a[3][4]={0};则下面正确的叙述是_______
A、只有元素a[0][0]可得到初值0
B、此说明语句不正确
C、数组a中各元素都可得到初值,但其值不一定为0
D、数组a中每个元素均可得到初值0
8、下面是对s的初始化,其中不正确的`是_____
A、char s[5]={“abc”};
B、char s[5]={‘a’,’b’,’c’,’d’,’e’,’0’};
C、char s[5]=””;
D、char s[5]=”abcdef”;
二、程序填空
1、以下程序把一个由小到大的有序数列放在a[1]到a[n]中,a[0]用作工作单元,程序把读入的x值插入到a数组中,插入后,数组中的数仍然的序。

请填空,完善程序。

#include
{int a[10]={0,12,17,20,25,28},x,i,n=5;
Printf(“enter a number”);
Scanf(“%d”,&x);
a[0]=x;i=n;
while(a[i]>x)
{a[____ (1)____ ]=a[i];
______(2)___________;
}
a[___(3)____]=x;n++;
for(i=1;i<=__(4)_______;i++)
printf(“M”,a[i]);
printf(“”);
}
三、编程题
1、用选择法对10个整数排序(从小到大)
2、有一篇文章,共有3行文字,每行有80个字符。

要求分别统计出其中英文大写字母,小写字母,中文字母,中文字符,数字,空格及其他字符的个数。

(提示:中文字符是两个字节,且数值均大于128的字符)。

3、将一个数组中的值按逆序重新存放。

例如:原来顺序为8,6,5,4,1。

要求改为1,4,5,6,8。

参考答案:
一、选择题
1、A
2、D
3、A
4、A
5、A
6、B
7、D
8、A
二、程序填空
(1) i+1
(2) i=i-1
(3) ++i
(4) n
二、编程题
1、 main()
{int i,j,min,temp,a[11]; Printf(“enter data: ”); For(i=1;i<=10;i++) {printf(“a[%d=”,i); Scanf(“%d”,&a[i]);
}
Printf(“”);
For(i=1;i<=10;i++) Printf(“]”,a[i]);
Printf(“”);
For(i=1;i<=9;i++) {min=i;
For(j=i+1;j<=10;j++) If(a[min]>a[j]) min=j; Temp=a[i];
a[i]=a[min];
a[min]=temp;
}
Printf(“the sorted number: ”);
For(i=1;i<=10;i++)
Printf(“]”,a[i]);
}
2、 main()
{int i,j,upp,low,dig,spa,oth;
Char text[3][80];
Upp=low=dig=spa=oth=0;
For(i=0;i<3;i++)
{printf(“please input line %d: ”,i++); Gets(text[i]);
For(j=0;j<80&&text[i][j]!=’\0’;j++)
{if(text[i][j]>’A’&&text[i][j]<=’Z’) Upp++;
Else if(text[i][j]>=’a’&&text[i][j]<=’z’) Low++;
Else if(text[i][j]>=’0’&&text[i][j]<=’9’) Dig++;
Else if (text[i][j]= =’‘)
Else
Oth++;
}
}
For(i=0;i<3;i++)
Printf(“%s ”,text[i]);
Printf(“upper case:%d ”,upp); Printf(“upper case:%d ”,low); Printf(“digit:%d ”,dig); Printf(“space:%d ”,spa); Printf(“other:%d ”,oth);
}
3、#define N 5
Main()
{int a[N],i,temp;
Printf(“enter array a: ”);
For(i=0;i
Scanf(“%d”,&a[i]);
Printf(“array a: ”);
For(i=0;i
Printf(“M”,a[i]);
{temp=a[i];
a[i]=a[N-i-1];
a[N-i-1]=temp;
}
Printf(“now,array a: ”); For(i=0;i
Printf(“M”,a[i]);
Printf(“”);
}。

相关文档
最新文档