C语言练习题

合集下载

《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案1. 单选题1. 设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的赋值语句是A. p=1;B. *q=2;C. q=p;D. *p=5;正确答案:D2. 设有int x=11;则表达式(x++*1/3)的值是A. 3B. 4C. 11D. 12正确答案:A3. 下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d\n",*(p+2));}A. 3B. 4C. 1D. 2正确答案:A4. sizeof(float)是A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式正确答案:B5. 在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是A. a=20000+20000;B. a=4000*10;C. a=30000+10000;D. a=4000L*10L正确答案:D6. 请选出以下语句的输出结果printf("%d\n",strlen("\t\"\065\xff\n"));A. 5B. 14C. 8D. 输出项不合法,无正常输出正确答案:A7. 若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为A. 4B. 16C. 32D. 52正确答案:C8. 下面能正确进行字符串赋值操作的是A. char s[5]={"ABCDE"};B. char s[5]={ ′A′, ′B′, ′C′, ′D′, ′E′};C. char *s;s="ABCDE";D. char *s;char a; scanf("%s",&s);正确答案:C9.以下程序的输出结果是#include "stdio.h"void reverse(int a[],int n){int i,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}}main(){int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0;reverse(b,8);for(i=6;i<10;i++) s+=b[i];printf("%d\n",s);}A. 22B. 10C. 34D. 30正确答案:A10. 以下不正确的叙述是A. 在C程序中,逗号运算符的优先级最低B. 在C程序中,APH和aph是两个不同的变量C. 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值正确答案:D2. 多选题11. 以下______是正确的转义字符。

c语言练习题

c语言练习题
2-6:36个人搬36块砖,男人一人搬3块,女人一人搬1块,小孩2人搬一块,问男人,女人,小孩各多少人?
2-7:将一元钱分成一分,二分,五分币,共有多少种方法?
三、简单的判断问题
3-1:输入一个数n,判断该数是不是偶数,是偶数输出Y,不是偶数输出N
3-2:输入3-12之间的一个数,输出该月有几天。
四、累加问题与累乘问题
18.1乒乓球
这是一份乒乓球比赛的信息记录。
WWWLLLLWWLLWLWLLLLW
W代表你得一分,L代表对手得一分。
编写程序,由键盘输入比赛信息(WL字符串形式),输出当前的比分,你的分数在前,中间以冒号分隔。
例如,对于上面的信息记录,应当输出
8:11
18.2陶陶摘苹果
陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。例如:对于输入100 200 150 140 129 134 167 198 200 111 110,应当输出5
**
****
******
********
**********
1-6:编写程序,输出以下图形。
*
***
*****
*******
*********
1-7:编写程序,输出以下图形。
*
***
*****
*******
*********
1-8:编写程序,输出以下图形。(教材130页6.14)
*
***
*****

C语言练习题 (在图书馆可打印)

C语言练习题 (在图书馆可打印)

1. 以下不是C语言的特点的是()A. C语言简洁,紧凑B. 能够编制出功能复杂的程序C. C语言可以直接对硬件进行操作D. C语言移植性好2. 以下不正确的C语言标识符是()A. ABCB. abcC. a_bcD. ab.c3. 一个C程序的执行是从()A. main()函数开始。

直到main()函数结束B. 第一个函数开始, 直到最后一个函数结束C. 第一个语句开始。

直到最后一个语句结束D. .main( )函数开始,直到最后一个函数结束4. 在C程序中main() 的位置()A. 必须作为第一个函数B. 必须作为最后一个函数C. 可以任意D.必须放在它所调用的函数之后5. 一个C程序是由()A. 一个主程序和若干个子程序组成B. 一个或多个函数组成C. 若干过程组成D. 若干子程序组成是非题(对者打√,错者打×)1、C语言源程序的基本单位是函数()2、编辑程序的功能是建立并修改程序()3、C编译程序是一组机器语言指令()4、C语言源程序的语句分隔符是逗号()5、C语言源程序文件的扩展名是.obj()第二章数据类型、运算符与表达式选择题1. (设 int I; char c ;float f;)以下结果为整数的表达式的是()A. I+fB. i*cC. c+fD. I+c+f2. 设n=10,I=4,则赋值运算n%=I+1执行后,n的值是()A. 0B. 3C. 2D. 13.设 a=2,b=2; 则 ++a+b的结果是(),a 的结果是(),b的结果是()A. 2B. 3C. 4D. 54. 在C语言中,要求运算对象必须是整型的运算符是()A. /B. !C. %D. ==*4)设 int a=04, b; 则执行 b=a<<1 ;语句后,b的结果是()。

A.4B.04C. 8D.105. 属于非法转义字符的是()A. ‘\d’B.‘\0xf’C.‘\037’D.‘\f’*5)设有以下语句,则C的二进制值是()char a=3, b=6,c; c=a^b<<2;A. 00011011B. 00010100C. 00011100D. 000110006. sizeof(double)是一个()表达式()A. 整型B. 双精度C. 不合法D.函数调用7. 在C语言类型说明中,int ,char, short等类型的长度是()A. 固定的B. 由用户自己定义的C. 任意的D. 与机器字的长度有关的※8)如下程序执行的结果是()main(){int n=1; printf(“%d%d%d\n”, n, ++n, n--); } A.1 1 1 B. 1 2 2 C. 1 2 3 D. 1 2 1是非题(对者打T,错者打F)1、 C语言中,大写字母和小写字母被认为是两个不同的字符()2、 C语言规定,在程序中所用到的变量都必须在程序中定义()3、在C语言中“\n”代表两个字符()4、在一个字符变量中可以存放一个字符串()5、一个字符数据既可以以字符形式输出,也可以以整型形式输出()6、在C语言中,不能把一个字符串赋给一个字符变量()7、自增运算符(++)和自减运算符(--)可以用于常量或表达式()8、表达式10/3的结果是3.3()9、在C语言中,不同类型数据混合运算时,要先转换成同一类型后进行运算。

(完整版)C语言程序设计练习题(含程序及参考答案)

(完整版)C语言程序设计练习题(含程序及参考答案)

(完整版)C语⾔程序设计练习题(含程序及参考答案)C语⾔练习题(所提供的源程序均采⽤⾃定义函数⽅式解决,如不采⽤函数⽅式,也可直接在main函数中借鉴该思想编程,因时间有限,所有程序未能⼀⼀验证,仅供参考使⽤)1、定义⼀个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三⾓形函数返回3,若能构成等腰三⾓形函数返回2,若能构成⼀般三⾓形函数返回1,若不能构成三⾓形函数返回0。

#includeint fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写⼀个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运⾏后 a 中的值为8,b中的值为3。

#includevoid fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输⼊3个数,将最⼤值放在变量a中,最⼩值放在变量c中。

c编程练习题(打印版)

c编程练习题(打印版)

c编程练习题(打印版)C语言编程练习题一、基础练习1. 编写一个程序,计算并输出两个整数的和、差、乘积和商。

提示:使用scanf函数输入两个整数,使用算术运算符进行计算。

2. 编写一个程序,计算并输出一个圆的面积。

提示:圆的面积公式为A = π * r * r,其中 r 是圆的半径。

3. 编写一个程序,计算并输出一个矩形的周长和面积。

提示:矩形的周长公式为 P = 2 * (l + w),面积公式为 A = l * w,其中 l 是长度,w 是宽度。

4. 编写一个程序,判断一个整数是奇数还是偶数。

提示:使用模运算符 % 来判断。

二、控制结构练习1. 编写一个程序,根据用户输入的分数,输出对应的等级。

提示:90分以上为 A,80-89分为 B,70-79分为 C,60-69分为D,60分以下为 F。

2. 编写一个程序,实现简单的猜数字游戏。

提示:程序随机生成一个1到100之间的整数,用户输入猜测的数字,程序根据用户输入给出提示(太高、太低或正确)。

3. 编写一个程序,实现一个简单的计算器。

提示:程序提示用户输入运算符(+、-、*、/)和两个操作数,然后输出计算结果。

三、数组练习1. 编写一个程序,实现对一个整数数组的排序。

提示:可以使用冒泡排序、选择排序或插入排序算法。

2. 编写一个程序,找出一个字符串数组中最长的字符串。

提示:遍历字符串数组,比较每个字符串的长度。

3. 编写一个程序,实现字符串的反转。

提示:可以使用数组的索引特性来实现。

四、函数练习1. 编写一个函数,计算一个数的阶乘。

提示:使用递归或循环来实现。

2. 编写一个函数,实现字符串的复制。

提示:不使用库函数,手动复制字符串。

3. 编写一个函数,判断一个字符串是否为回文字符串。

提示:回文字符串是指正读和反读都一样的字符串。

五、指针练习1. 编写一个程序,使用指针交换两个整数的值。

提示:注意指针变量的赋值和解引用。

2. 编写一个程序,实现字符串的连接。

C语言基础练习题(含答案)

C语言基础练习题(含答案)

第一章C语言基础知识1.1 选择题1. 以下不是C语言的特点的是()。

BA、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2. 下列字符序列中,不可用作C语言标识符的是()。

BA.abc123 B. C._123_ D._ok 3. 正确的C语言标识符是()。

AA._buy_2 B.2_buy C._buy D.buy4. 请选出可用作C语言用户标识符的一组标识符()。

BA.void B.a3_b3 C.For D.2a define _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。

BA.\\ B.\0xAA C.\t D.\06. 不属于C语言关键字的是()。

dA.int B.break C.while D.character 7. 是C语言提供的合法关键字的是()。

bA.Float B.signed C.integer D.Char8. 以下不能定义为用户标示符的是()。

bA.scanf B.Void C._3com_ D.int9. 一个C程序是由()。

bA.一个主程序和若干子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成10. C语言程序的基本单位是()。

cA.程序行 B.语句 C.函数 D.字符11. 下列说法中,错误的是()。

aA.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数12. 以下说法中正确的是()。

cA.C语言程序总是从第一个定义的函数开始执行B.在C语言程序中,要调用的函数必须在main( )函数中定义C.C语言程序总是从main( )函数开始执行D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。

C语言200道练习试题和答案

C语言200道练习试题和答案

A)<=
B)=
C)%
D)&&
26.表达式(a=2,3) , a+1的值是【 C 】。
A)0 B)2
C)3
D)4
27.若执行printf("%d\n", strlen("a\n\"\x41"))语句其输 出结果是【 D 】。
A)8 B)7 C)6
D)4
28.在循环语句的循环体中执行break语句, 其作用是【 A 】。 A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行
则输出是【 d 】 A)1234.56 1234 B)1234.57 1235 C)1234.56 1235 D)1234.57 1234
43.如果有
int a, b; scanf(“%d,%d”, &a, &b);语句,
则输入数据时,只可以用【 d 】作为输入的分隔符
A)TAB键 B)空格
C)回车
C)20,10 D)20,20
24.若有以下定义和语句 char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+"A"); 则输出结果是【 B 】。
A)2,M B)3,E C)2,E D)输出项与对应的格式控制不一致,输出结果不确定
25.在以下一组运算符中,优先级最高的运算符是【 C 】
int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678

C语言课程习题

C语言课程习题

C语言综合练习题(一)一选择题(7分,每小题0.5分)1.设a为整型变量,初值为12,执行完语句 a+=a-=a*a后,a的值是()。

A 552B 144C 264D -2642.下列标识符中,不能作为合法的C用户定义标识符的是()。

A a3_b3B voidC _123D IF3.下列整数值中,不正确的八进制或十六进制数值常量是()。

A 0xcdB -017C -ox123D 0xfdc4.若给定条件表达式(M)?(a++):(a--),则其中表达式M和()等价。

A M==0B M=1C M!=1D M!=05.在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式为()。

A 只能是逻辑表达式 B只能是关系表达式C 只能是逻辑表达式或关系表达式 D可以是任意表达式6.以下程序的输出结果为()。

main( ){ char c;int i;for(i=65;i<68;i++){ c=i+32;switch(c){ case ‘a’:printf("%c,",c);break;case ‘b’:case ‘e’:printf("ok,");default: printf("end");}} }A a,ok,endB a,ok,endendC a,ok,end,endD a,ok,ok7.数组名作为实参数传递给函数时,数组名被处理为()。

A 该数组的长度B 该数组的元素个数C 该数组的首地址D 该数组中各元素的值8.关于return语句,下列正确的说法是()。

A 可以在同一函数中出现多次B 在主函数中不能出现C 必须在每个函数中出现D 只能在除主函数之外的函数中出现一次9.以下程序的输出结果为()。

#define A 3#define B(a) (A+1)*amain(){ int x;x=3*A+B(7);printf("x=%d\n",x);}A x=93B x=37C x=60D x=9010.设有以下定义,则以下对变量w的赋值()是错误的。

C语言程序设计练习题

C语言程序设计练习题

C语言程序设计练习题一、选择题1.以下八进制数写法正确的是()A.0378 B.427 C.0417 D.04192.若变量已正确定义为int型,要通过语句scanf(“%d,%d,%d ”,&a,&b,&c);给a赋值1,给b赋值2, 给c赋值3, 以下输入形式中错误的是(✞代表一个空格符)()A.✞✞✞1,2,3<回车> B.1✞2✞3<回车>C.1,✞✞✞2, ✞✞✞3<回车> D.1,2,3<回车>3.x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()A、INPUT x、y、z;B、scanf("%d%d%d",&x,&y,&z);C、scanf("%d%d%d",x,y,z);D、read("%d%d%d",&x,&y,&z);4.若w,x,z均为int型变量,则执行以下语句后的输出为。

w=3;z=7;x=10;printf("%d\n",x>10?x+100:x-10);printf("%d\n",w++||z++);printf("%d\n",!w>z);printf("%d\n",w&&z);A. 0B. 1C. 0D. 01 1 1 11 1 0 01 1 1 05.分析以下程序, 下列说法正确的是。

main(){int x=5,a=0,b=0;if(x=a+b)printf("* * * *\n");elseprintf("# # # #\n");}A. 有语法错,不能通过编译B. 通过编译,但不能连接C. 输出* * * *D. 输出# # # #6.程序段如下:则以下说法中正确的是:()。

C语言基础练习100题(含标准答案)

C语言基础练习100题(含标准答案)

C语⾔基础练习100题(含标准答案)C语⾔基础练习100题(含答案)雷柳青编排1、下⾯程序的输出是________#includevoid 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=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b2、在下列选项中,不正确的赋值语句是________.A) ++t。

B) n1=(n2=(n3=0))。

C) k=i=j。

D) a=b+c=1。

3、下⾯合法的C语⾔字符常量是__________.A) '\t' B) "A" C) 65 D) A4、字符(char)型数据在微机内存中的存储形式是____.A) 反码B) 补码C) EBCDIC码D) ASCII码5、设int a=12,则执⾏完语句a+=a-=a*a后,a的值是________A) 552 B) 264 C) 144 D) -2646、执⾏下⾯程序中的输出语句后,输出结果是______.#includevoid main(){int a。

printf("%d\n",(a=3*5,a*4,a+5))。

}A) 65 B) 20 C) 15 D) 107、下⾯程序的输出是__________.#includevoid main(){int x=023。

printf("%d\n",--x)。

}A) 17 B) 18 C) 23 D) 248、下⾯程序的输出是___________.#include{char ch1,ch2。

ch2='A'+'6'-'3'。

printf("%d,%c\n",ch1,ch2)。

C语言各章节练习题(含答案)

C语言各章节练习题(含答案)

C语言各章节练习题(含答案)一、c语言概述练习题选择1.一个c程序的执行是从。

a)本程序的main函数开始,到main函数结束b)本程序文件的第一个函数已经开始,至本程序文件的最后一个函数完结c)本程序文件的第一个函数已经开始,至本程序main函数完结d)本程序的main函数已经开始,至本程序文件的最后一个函数完结2.以下描述不恰当的就是。

a)一个c源程序必须包含一个main函数b)一个c源程序可由一个或多个函数组成c)c程序的基本组成单位是函数d)在c程序中,注释说明只能位于一条语句的后面3.以下描述恰当的就是。

a)在对一个c程序进行编译的过程中,可发现注释中的拼写错误b)在c程序中,main 函数必须位于程序的最前面c)c语言本身没输入输出语句d)c程序的每行中就可以写下一条语句4.一个c语言程序就是由。

a)一个主程序和若干个子程序组成b)函数组成c)若干过程组成d)若干子程序组成二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为。

x=(i=4,j=16,k=32)a)4b)16c)32d)522.下列四组选项中,均不是c语言关键字的选项是。

a)defineiftypeb)getccharprintfc)includecasescanfd)whilegopow3.以下四组选项中,均就是不合法的用户标识符的选项就是。

(c语言标识符由字母,数字,下划线共同组成,结尾无法就是数字)a)wp_0dob)b-agotointc)floatla0_ad)-123abctemp8.未知字母a的ascii码点为十进制数65,且c2为字符型,则继续执行语句c2=‘a’+‘6’-‘3’后,c2中的值。

a)db)68c)不确定的值d)c填空题1.若存有以下定义,则排序表达式y+=y-=m*=y后的y值就是【1】。

-16intm=5,y=2;7.若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为【8】,n的值为【9】。

c语言程序基础练习题500道(附答案)

c语言程序基础练习题500道(附答案)

1.下列四组选项中,均不是C语言关健字的选项是( A )。

A) define B) gect C) include D) whileIF char scanf gotype printf case pow2.下面四个选项中,均是合法整型常量的选项是( A )。

A)160 B)-0xcdf C) -01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x3.下面四个选项中,均是不合法的转义符的选项是( B )。

A) '\"' B) '\1011' C) '\011' D) '\abc''\\' '\' '\f' '\101''xf' '\A' '\}' 'x1f'4.下面不正确的字符串常量是( A )。

A)'abc' B)"12'12" C)"0" D)" "5.以下选项中不合法的用户标识符是( A )。

A)abc.c B)file C)Main D)PRINT6.C语言提供的合法关键字是( D )。

A) swithB) cherC) CaseD)default7.下列标识符组中,合法的用户标识符为 AA)_0123与ssipedB)del-word与signedC)list与*jerD) keep%与wind8.在C语言中,逻辑值"真"的表示是用( C )。

A) true B) 整型值0 C)非另整型值D) T9若有以下定义char s='\092';则该语句( b )A)使s的值包含一个字符B)定义不合法,s的值不确定C)使s的值包含4个字符D)使s的值包含3个字符10设C语言中,int类型数据占2个字节,则float类型数据占(D )个字节。

C语言综合习题及答案

C语言综合习题及答案

C语言综合习题及答案C语言练习题一、选择题1. 一个完整的C源程序是【B 】。

A)要由一个主函数或一个以上的非主函数构成B)由一个且仅由一个主函数和零个以上的非主函数构成C)要由一个主函数和一个以上的非主函数构成D)由一个且只有一个主函数或多个非主函数构成2. 以下关于函数的叙述中正确的是【C】。

A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以定义任意一个函数3. 以下关于函数的叙述中不正确的是【B】。

A)C程序是函数的集合,包括标准库函数和用户自定义函数B)在C语言程序中,被调用的函数必须在main 函数中定义C)在C语言程序中,函数的定义不能嵌套D)在C语言程序中,函数的调用可以嵌套4. 在一个C程序中,【B 】。

A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置5.C程序的执行是从【A 】开始的。

A)主函数B)子函数C)从程序第一行D)printf()函数6.以下选项中不合法的标识符是【C 】A)print B)FOR C)&a D)_007.以下选项中可作为C语言合法常量的是【A】A)-80 B)-080 C)-8e1.0 D)-80.0e8.以下选项中不属于字符常量的是【B】A)′C′ B)"C" C)′\xCC′ D) ′\072′9. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【C】A)float B)longC)int D)double10. 以下关于函数叙述中,错误的是【D】。

A)函数未被调用时,系统将不为形参分配内存单元B)实参与形参的个数应相等,且实参与形参的类型必须对应一致C)当形参是变量时,实参可以是常量、变量或表达式D)形参可以是常量、变量或表达式11. C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是【D】。

C语言经典练习题50道(附答案)

C语言经典练习题50道(附答案)

1.**打印Hello World**练习:编写一个C程序,打印"Hello,World!"到屏幕上。

#include<stdio.h>int main(){printf("Hello,World!\n");return0;}2.**计算两个整数的和**练习:编写一个程序,接受两个整数,然后计算它们的和并打印结果。

#include<stdio.h>int main(){int a=5,b=7;int sum=a+b;printf("Sum:%d\n",sum);return0;}3.**判断奇数或偶数**练习:编写一个程序,接受一个整数,然后判断它是否为奇数或偶数。

#include<stdio.h>int main(){int num=10;if(num%2==0){printf("%d is even.\n",num);}else{printf("%d is odd.\n",num);}return0;}4.**计算阶乘**练习:编写一个程序,计算给定整数的阶乘。

#include<stdio.h>int main(){int n=5;int factorial=1;for(int i=1;i<=n;i++){factorial*=i;}printf("Factorial of%d is%d\n",n,factorial);return0;}5.**反转字符串**练习:编写一个程序,接受一个字符串,然后反转它并打印出来。

#include<stdio.h>#include<string.h>int main(){char str[]="Hello,World!";int len=strlen(str);for(int i=len-1;i>=0;i--){printf("%c",str[i]);}printf("\n");return0;}6.**检查素数**练习:编写一个程序,判断一个整数是否为素数。

C语言练习题

C语言练习题

第一章C程序概述一.选择题1.在计算机上可以直接运行的程序是(C )A.C语言源程序B.汇编语言程序C.机器语言程序D.高级语言程序2.一个程序总是从( B )开始执行程序A.第一行B.主函数C.第一个函数D.最后一个函数3.下述标识符中,(B )是合法的用户标识符。

A.A#CB.getchC.voidD.ab*4.以下叙述正确的是( C )A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误5.C语言规定,在一个源程序中,main函数的位置(C )A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后6. 一个C语言程序是由( B )A.一个主程序和若干个子程序组成B.函数组成C.若干个过程组成D.若干子过程组成7. 以下叙述不正确的是( D )A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面8.一个C程序的执行是从( A )A.本程序的main函数开始,到main函数的结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数的结束C.本程序文件的main开始,到本程序文件的最后一个函数的结束D.本程序文件的第一个函数开始,到本程序文件的main函数的结束9. 以下叙述中正确的是( B )A.C语言的源程序不必通过编译就可以直接运行B.C语言中的每条可执行语句最终都将被转换成二进制的机器指令C.C源程序经编译形成的二进制代码可以直接运行D.C语言中的函数不可以单独进行编译10.以下叙述错误的是( D )A.C程序中,语句用分号“;”结尾,分号是C语句的一部分B.C程序中,可以在“{}”内写若干条语句,构成复合语句C.D语言的变量在使用之前必须先定义其数据类型D.C语言函数内部可以定义函数11. 以下叙述错误的是( D )A.C程序的注释部分放在“/*”和“*/”之间,“/”和“*”之间不允许有空格B.一个C源程序可由一个或多个函数组成C.一个C源程序必须有一个且只能有一个main函数D.C程序编译时注释部分的错误将被发现二.填空题1. C源程序的基本单位是________(函数)2. 一个C源程序中至少应包括一个______(main 函数)3. 在一个C源程序中,注释部分两侧的分界符分别是______和______(/* */)。

c语言必做100题

c语言必做100题

c语言必做100题1. 编写一个C程序,输出“Hello, World!”。

2. 编写一个C程序,计算并输出1到100的和。

3. 编写一个C程序,判断一个数是否为素数。

4. 编写一个C程序,将一个字符串反转。

5. 编写一个C程序,实现二分查找算法。

6. 编写一个C程序,实现插入排序算法。

7. 编写一个C程序,实现选择排序算法。

8. 编写一个C程序,实现冒泡排序算法。

9. 编写一个C程序,实现快速排序算法。

10. 编写一个C程序,实现希尔排序算法。

11. 编写一个C程序,将一个二维数组转置。

12. 编写一个C程序,计算一个数的阶乘。

13. 编写一个C程序,实现斐波那契数列。

14. 编写一个C程序,计算两个数的最大公约数。

15. 编写一个C程序,计算两个数的最小公倍数。

16. 编写一个C程序,计算一个数的平方根。

17. 编写一个C程序,计算一个数的立方根。

18. 编写一个C程序,实现矩阵乘法运算。

19. 编写一个C程序,实现字符串的查找和替换。

20. 编写一个C程序,实现栈的基本操作(入栈、出栈、查看栈顶元素)。

21. 编写一个C程序,实现队列的基本操作(入队、出队、查看队首元素)。

22. 编写一个C程序,实现链表的基本操作(插入、删除、倒置)。

23. 编写一个C程序,实现二叉树的前序、中序和后序遍历。

24. 编写一个C程序,实现图的深度优先搜索算法。

25. 编写一个C程序,实现图的广度优先搜索算法。

26. 编写一个C程序,实现最短路径算法(Dijkstra算法或Floyd算法)。

27. 编写一个C程序,实现最小生成树算法(Prim算法或Kruskal算法)。

28. 编写一个C程序,实现拓扑排序算法。

29. 编写一个C程序,实现优先队列。

30. 编写一个C程序,实现哈希表的基本操作(插入、查找、删除)。

31. 编写一个C程序,实现堆的基本操作(插入、删除、查找最大值)。

32. 编写一个C程序,实现最大堆排序算法。

C语言练习题及答案

C语言练习题及答案

C语言练习题及答案综合强化练习一一、选择题(每题1分,共40分)1、以下叙述正确的是( )A)C语言总是从第一个定义的函数开始执行B)在C程序中,要调用的函数必须在main函数中定义C)C程序的执行总是从main函数开始执行的D)C程序中的main函数必须放在程序的开始部分2、下列合法的用户标识符为( )A)_4sum B) static C) 1max D) #dtotal3、ch为字符型变量,则下面赋值语句正确的为( )。

A)ch="ABC" B) ch="A" C) ch= a D) ch=674、C语言中整形常量有哪几种形式( )A) 十进制、八进制、十六进制B) 二进制、十进制、八进制、十六进制C) 二进制、八进制、十六进制D) 二进制、十进制5、字符串" China "在内存中占用的字节数是( )A) 1 B) 2 C) 5 D) 66、int x,y; x=7/2;y=7/2.0;则x的值为( )A) 3.500000 3 B) 3 3.500000C) 3.500000 3.500000 D)3 37、下面程序int x=0x2B; printf("%d",x);的输出结果为( )A) 2B B) 0x2B C) 43 D) 448、实型常量用指数形式表示,下列哪一项不是合法的( )A) 3.65e3 B)0.356E3 C)356e3 D)3.56e3.09、设有语句int a=3;则执行了语句a-= a+=a*a;后变量a的值是( )A)0 B)3 C) -9 D) -310、下列字符中,错误的转义字符是( )A)'\085' B) '\\' C) '\0' D) '\n '11、下面程序的输出结果是( )int a=2;if(a=5) a=a+2;printf("%d ",a);A) 2 B) 4 C) 5 D)712、下列程序段的循环次数是( )int k=0;while(k= =0) printf("%d",k);k--; printf ("\n");A) 无限次B) 0 次C) 1次D)2次13、下列说法正确的是( )A) 在循环体中可以用break语句结束本次循环B) 在循环体中可以用continue语句结束本次循环C) break语句仅能使用在switch结构中D) 可以使用continue语句跳出switch结构14、以下正确的函数形式是()。

C语言基础练习100题含标准答案

C语言基础练习100题含标准答案

C语言基础练习100题含标准答案1. 编写一个C语言程序,要求输出"Hello, World!"#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}2. 编写一个C语言程序,要求输出两个整数的和。

#include <stdio.h>int main() {int a, b, sum;printf("请输入两个整数:");scanf("%d %d", &a, &b);sum = a + b;printf("两个整数的和为:%d\n", sum);return 0;}3. 编写一个C语言程序,要求输出一个整数的平方。

#include <stdio.h>int main() {int num, square;printf("请输入一个整数:");scanf("%d", &num);square = num * num;printf("该整数的平方为:%d\n", square);return 0;}4. 编写一个C语言程序,要求输出1到10的所有整数。

#include <stdio.h>int main() {int i;for (i = 1; i <= 10; i++) {printf("%d ", i);}printf("\n");return 0;}5. 编写一个C语言程序,要求输出1到10的所有整数的和。

#include <stdio.h>int main() {int i, sum = 0;for (i = 1; i <= 10; i++) {sum += i;}printf("1到10的所有整数的和为:%d\n", sum);return 0;}6. 编写一个C语言程序,要求输入一个字符串并输出该字符串。

c语言c语言考试题库及答案

c语言c语言考试题库及答案

c语言c语言考试题库及答案一、选择题1. 在C语言中,用于定义变量的关键字是:A. defineB. varC. intD. let答案:C2. 下列哪个是C语言中的合法标识符?A. 2variableB. variable2C. variable-twoD. variable#答案:B3. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C4. C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. "Hello\tWorld"答案:A5. 以下哪个是C语言中的控制语句?A. ifB. switchC. both A and BD. none of the above答案:C二、填空题6. 在C语言中,一个基本的程序结构包括____、____和____。

答案:预处理指令;函数定义;语句7. 一个C语言程序的执行从____函数开始。

答案:main8. 在C语言中,使用____关键字可以定义一个函数。

答案:void 或其他数据类型9. 一个C语言数组的元素默认情况下是按照____顺序存储的。

答案:连续10. C语言中的____运算符用于连接字符串。

答案:+三、简答题11. 解释C语言中指针的概念。

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

通过指针,可以直接操作内存地址中的数据,实现数据的间接引用。

12. 描述C语言中结构体的定义和使用。

答案:结构体是一种用户自定义的数据类型,它允许将多个不同类型的变量组合成一个单一的类型。

定义结构体时,使用struct关键字,然后定义结构体的名称和成员。

使用结构体时,可以创建结构体变量,并通过点(.)运算符访问其成员。

四、编程题13. 编写一个C语言程序,计算并输出1到100的整数之和。

C语言练习题(带详解答案),DOC

C语言练习题(带详解答案),DOC

目录一、选择题 (2)二、读程序 (11)基本输入输出及流程控制 (11)数组 (24)函数 (34)指针 (39)结构体 (44)三、程序填空 (46)四、编程题 (50)一、选择题1.(A)是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从 C开始执行。

A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数3、以下说法中正确的是(C)。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)。

A) C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。

C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_iD.int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是( B)。

A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A) %x B) a+b C) a123 D) 123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while 为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

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

实验二 顺序与分支程序设计
一.实验目的
1. 掌握程序中条件的设置方法;
2. 掌握顺序和if 分支结构程序的设计。

二.实验环境
1. 硬件:PII 以上计算机;
2. 软件:Windows 、Visual C++ 6.0;
3. 其它:一张软盘或者U 盘等可移动的存储设备。

三.实验内容
练习1.编写程序,求输入的3个整数中最大者。

要求以P5例1.3为基础,结合本题稍作
修改。

运行结果示例:
练习2.编写程序,求函数 ︒⨯+
+=30sin 53x e x y π 的值。

要求输入x ,程序即可输出y
的值。

要求:将π值定义为符号常量,例如:# define PI 3.14159
运行结果示例:
练习3.输入一字符,编程序判断输入字符的种类(字母、数字、其它)。

要求:利用if条件语句编程。

运行结果示例:
练习4.编写程序,实现下列分段函数的求值:
| x | x<5
y = 3x2-2x+1 5≤x<20
x /5 x≥20
要求:利用if条件语句编程。

*练习5.编程序计算个人所得税。

●个税的税率及速算扣除数(部分)规定:
不超过500元的,税率5%,速算扣除数为0;
超过500元至2000元的部分,税率10%,速算扣除数为25;
超过2000元至5000元的部分,税率15%,速算扣除数为125;
超过5000元至20000元的部分,税率20%,速算扣除数为375;
超过20000元的部分,税率25%,速算扣除数为1375。

●个税计算公式:
应纳税额=(应纳税所得额-起征金额)×适用税率-速算扣除数
应纳税所得额=当月工资-保险支出
要求:利用if的嵌套语句编程。

运行结果示例:
四.实验指导
C/C++程序的上机步骤
1.创建一个空工程(项目);
选择菜单“文件/新建”,在“新建”对话框的“工程”选项卡中选择“Win32 Console Application”,输入“工程名称”,并选择工程所在“位置”。

2.创建一个C++源文件,输入源程序;
选择菜单“文件/新建”,在“新建”对话框的“文件”选项卡中选择“C++ Source File”,输入“文件名”。

3.进行编译(Compile)、连接(Build,组建)、运行(BuildExecute,执行);
选择菜单“组建”中的“编译”、“组建”、“执行”,或在工具栏中单击“”、“”、“”工具按钮。

4.程序的调试:语法错误、逻辑错误。

程序每次修改后都需要重新执行编译、连接、运行三个步骤。

相关文档
最新文档