c语言编程 题目及答案

合集下载

c语言题目及答案

c语言题目及答案

考试题型一、单项选择题(30分)二、填空题(20分)三、阅读程序写结果(20分)四、编程序题(30)复习题一一、选择题1.下列说法中正确的是。

A.C语言程序由主函数和0个或多个函数组成B.C语言程序由主程序和子程序组成C.C语言程序由子程序组成D.C语言程序由过程组成2.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为。

A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,23.设有int i=010,j=10;则printf("%d,%d\n",++i,j--); 的输出的是。

A.11,10 B.9,10 C.010,9 D.10,9 4.设a、b为字符型变量,执行scanf("a=%c,b=%c",&a,&b); 后使a为'A', b为'B',从键盘上的正确输入是。

A.'A' 'B' B.'A','B' C.A=A,B=B D.a=A,b=B5.已知int x=12, y=3;执行下述程序后,变量x的值是____。

do{ x/=y--;}while(x>y);A.1 B.2 C.3 D.程序运行有错误6.C语言中while和do-while循环的主要区别是。

A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do-while的循环控制条件严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句7.设x和y均为int型变量,则执行下面的循环后,y的值为。

for (y=1,x=1;y<=50;y++) {if (x>=10 ) break;if (x%2==1) {x+=5;continue;}x - =3;}A.2 B.4 C.6 D.88.以下正确的说法是____。

经典练习C语言编程的题目及答案整理

经典练习C语言编程的题目及答案整理

1.逆序输出正三位数#include <stdio.h>int main(){int input,output= 0;scanf("%d",&input);while(input != 0){output = output*10 + input%10; input /= 10;}printf("%d\n",output);return 0;}2.百元找零函数#include <stdio.h>int main(){int amount=100;int price=0;printf("请输入金额(元)");scanf("%d",&price);printf("请输入票面");scanf("%d",&amount);int change=amount-price;printf("找您%d元。

\n",change);return 0;}3.求平均数#include <stdio.h>int main(){int a,b;scanf("%d %d",&a,&b);double c=(a+b)/2.0;/*scanf("%d",&amount);这是注释,我随便放的,没意义int change=amount-price;*/printf("%d和%d的平均值是%f\n",a,b,c);return 0;}4.写出程序的输出:int i=1;switch(i/3){case0:printf("zero");case1:printf("one");case2:printf("two");}正确答案是:zeroonetwo。

C语言程序设计习题(含答案)

C语言程序设计习题(含答案)

C语言程序设计习题(含答案) C语言程序设计习题(含答案)C语言是一种常用的编程语言,被广泛应用于计算机科学和软件开发领域。

为了帮助学习者更好地掌握C语言的编程技巧,本文提供一些常见的C语言程序设计习题及其答案。

通过完成这些习题,学习者可以锻炼编程思维,加深对C语言的理解,并提高编程能力。

习题一:求两个整数的和题目描述:编写一个程序,计算两个整数的和并输出结果。

解答:```C#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数的和为:%d\n", sum);return 0;}```习题二:计算圆的周长和面积题目描述:编写一个程序,根据用户输入的半径,计算圆的周长和面积,并输出结果。

解答:```C#include <stdio.h>#define PI 3.14159int main() {double radius, circumference, area;printf("请输入圆的半径:");scanf("%lf", &radius);circumference = 2 * PI * radius;area = PI * radius * radius;printf("圆的周长为:%lf\n", circumference);printf("圆的面积为:%lf\n", area);return 0;}```习题三:判断一个数是否为素数题目描述:编写一个程序,判断用户输入的一个正整数是否为素数。

解答:```C#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;}for (int i = 2; i * i <= num; i++) {if (num % i == 0) {return 0;}}return 1;}int main() {int num;printf("请输入一个正整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d是素数\n", num);} else {printf("%d不是素数\n", num);}return 0;}```习题四:计算两个矩阵的乘积题目描述:编写一个程序,计算两个3x3的矩阵的乘积并输出结果。

编程题(含答案)

编程题(含答案)
{ int i,j,minj,t;
for(i=0;i<N-1;i++)
{ minj=i;
for(j=i+1;j<N;j++) if(a[j]<a[minj]) minj=j;
if(minj!=i) {t=a[i];a[i]=a[minj];a[minj]=t; }
}
}
void main()
{ int a[N],i;
答案:#include<stdio.h>
long fun(int k)
{ if(k>0)
return (k*fun(k-1));
else if(k==0)
return1l;
}
main()
{ int k;
scanf("%d",&k);
clrscr();
printf("%d!=%ld",k,fun(k));
printf(“Input a number:”);
scanf(“%d”,&x);
printf(“%d\n”,x);
exp=exp+x;
for(n=2;n<=19;n++)
exp=exp+f1(x,n)/f2(n);
printf(“\nThe is exp(%d)=%8.4f\n”,x,exp);
}
scanf(“%d”,&x);
while(x!=-1)
{
if(x>=1&&x<=4) { a[n]=x; n++; }
scanf(“%d”,&x);
}

C语言编程题带答案

C语言编程题带答案

C语言编程题带答案题目 1:求两个整数的最大值```cinclude <stdioh>int max(int num1, int num2) {if (num1 > num2) {return num1;} else {return num2;}}int main(){int num1 = 10, num2 = 20;int maxValue = max(num1, num2);printf("最大值为: %d\n", maxValue);return 0;}```分析:在这个程序中,我们定义了一个名为`max` 的函数,它接受两个整数参数`num1` 和`num2` 。

通过使用条件判断语句`if` 来比较这两个数的大小,如果`num1` 大于`num2` ,则返回`num1` ,否则返回`num2` 。

在`main` 函数中,我们给定了两个整数`num1` 和`num2` 的值,并调用`max` 函数来获取它们中的最大值,最后使用`printf` 函数将最大值输出到控制台。

题目 2:计算一个整数数组的平均值```cinclude <stdioh>float average(int arr, int size) {int sum = 0;for (int i = 0; i < size; i++){sum += arri;}return (float)sum / size;}int main(){int arr ={10, 20, 30, 40, 50};int size = sizeof(arr) / sizeof(arr0);float avg = average(arr, size);printf("平均值为: %2f\n", avg);return 0;}```分析:在这个程序中,首先在`average` 函数里,我们初始化一个变量`sum` 为 0 ,用于存储数组元素的总和。

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)1:计算 A+B 的问题时间限制:1000MS 内存限制:10000K总提交数:1347 正确数:655问题描述输入两个整数 a 和 b ,计算 a+b 的结果并输出。

输入两个整数输出一个整数输入样例1 2输出样例32:Hello World!时间限制:1000MS 内存限制:65536K总提交数:848 正确数:693问题描述编写第一个C语言程序。

在屏幕上输出:Hello World!输入程序没有输入输出Hello World!输入样例输出样例Hello World!提示1、输出的内容要与题目的要求完全一样,不能多字符也不能少字符。

3:两个整数的值互换时间限制:1000MS 内存限制:65536K总提交数:1235 正确数:530问题描述输入两个整数a,b ,将 a 和 b 的值互换,并输出。

例如:输入: 2 5输出: 5 2输入两个整数输出两个整数输入样例2 5输出样例5 2提示注意输入和输出的格式,两个数据之间用一个空格隔开。

问题来源4:计算三门课程总分和平均分时间限制:1000MS 内存限制:65536K总提交数:1190 正确数:482问题描述输入三门课程的成绩,输出总分和平均分。

要求:(1)输入三个数,用空格隔开。

输入的数可以是小数。

(2)输出两个数,用空格隔开。

输出的数保留两位小数。

例如:输入: 75 80 90输出: 245.00 81.67 输入输入三个数,用空格隔开。

输入的数可以是小数。

输出输出两个数,用空格隔开。

输出的数保留两位小数。

输入样例75 80 90输出样例245.00 81.67问题来源5:鸡兔同笼问题时间限制:1000MS 内存限制:65536K总提交数:872 正确数:443问题描述这个问题,是我国古代著名趣题之一。

大约在1500年前,《孙子算经》中就记载了这个有趣的问题。

书中是这样叙述的:“今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?这四句话的意思是:有若干只鸡兔同在一个笼子里,从上面数,有35个头;从下面数,有94只脚。

c语言编程基础题库及详解答案

c语言编程基础题库及详解答案

c语言编程基础题库及详解答案1. C语言是一种______语言。

A. 编译型B. 解释型C. 标记型D. 脚本型答案:A2. C语言中,以下哪个是合法的变量名?A. 2variableB. variable2C. variable-nameD. variable_name答案:B3. 在C语言中,整数类型int的范围是多少?A. -128到127B. -32768到32767C. -2147483648到2147483647D. 以上都不是答案:C4. 下列哪个是C语言中的控制语句?A. ifB. loopC. switchD. All of the above答案:D5. C语言中,以下哪个是正确的数组声明?A. int arr[10];B. int [10] arr;C. Both A and BD. None of the above答案:C6. 在C语言中,以下哪个是正确的函数声明?A. void myFunction();B. int myFunction;C. int myFunction();D. Both A and C答案:D7. C语言中,以下哪个是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. Both A and BD. None of the above答案:A8. 在C语言中,以下哪个操作符用于计算两个数的乘积?A. *B. /C. %D. +答案:A9. C语言中,以下哪个是正确的循环结构?A. forB. whileC. do-whileD. All of the above答案:D10. 在C语言中,以下哪个是正确的指针声明?A. int *ptr;B. int ptr[];C. Both A and BD. None of the above答案:A11. C语言中,以下哪个是正确的结构体声明?A. struct myStruct { int a; float b; };B. struct { int a; float b; };C. Both A and BD. None of the above答案:C12. 在C语言中,以下哪个是正确的枚举类型声明?A. enum Color { RED, GREEN, BLUE };B. enum { RED, GREEN, BLUE };C. Both A and BD. None of the above答案:C13. C语言中,以下哪个函数用于将整数转换为字符串?A. atoi()B. itoa()C. sprintf()D. Both A and B答案:B14. 在C语言中,以下哪个函数用于计算两个数的最大公约数?A. max()B. gcd()C. min()D. Both A and C答案:B15. C语言中,以下哪个函数用于动态内存分配?A. malloc()B. calloc()C. realloc()D. All of the above答案:D16. 在C语言中,以下哪个是正确的文件操作函数?A. fopen()B. fclose()C. Both A and BD. None of the above答案:C17. C语言中,以下哪个是正确的位操作符?A. &B. |C. ^D. All of the above答案:D18. 在C语言中,以下哪个是正确的预处理指令?A. #includeB. #defineC. Both A and BD. None of the above答案:C19. C语言中,以下哪个是正确的递归函数调用?A. function();B. function(function());C. function(recursive);D. None of the above答案:B20. 在C语言中,以下哪个是正确的宏定义?A. #define PI 3.14159B. define PI 3.14159C. Both A and BD. None of the above答案:A。

c语言题目及答案

c语言题目及答案

注意:所有答案都要写在答题卡上一、单项选择题(20分,每题2分)1.执行下列程序段后,正确的结果是(B)int k, a[3][3] = {1,2,3,4,5,6,7,8,9};for(k=0; k<3; k++)printf(“%2d”, a[k][k]);A) 1 2 3 B) 1 5 9 C) 1 4 7 D) 3 6 92.若a是int类型变量,则计算表达式a=25/3%3的值是:(B)A)3 B)2 C)1 D)03.下面正确的字符常量是:(C)A)“c” B)‘\\’’ C)‘W’ D)‘’4.C语言中,运算对象必须是整型的运算符是:(B)A)% B)/ C)* D)+5.数字字符0的ASCII值为48,若有以下程序main(){char a='1', b='2';printf("%c,",b++);printf("%d\n",b-a);}程序运行后的输出结果是。

(B)A)3,2 B)50,2 C)2,2 D)2,50 6.以下语句或语句组中,能正确进行字符串赋值的是。

(D)A)char *sp;*sp="right!"; B)char s[10];s="right!";C)char s[10];*s="right!"; D)char *sp="right!";7.for(i=0;i<10;i++)if(i〈=5〉break;则循环结束后i的值为(B)A)0 B)1 C)5 D)108.执行下列程序段后,正确的结果是(C)char x[8] = {8,7,6,5,0,0}, *s;s = x+1;printf(“%d\n”, s[2]);A) n B) 0 C) 5 D) 69.C语言规定,简单变量作为实参时,他和对应形参之间的数据传递方式是:AA)单向值传递B) 地址传递C) 相互传递D) 由用户指定方式10.设有数组定义:char str[]=”China”;则下面的输出为(C)printf(“%d”,strlen(str));A)4 B)5 C)6 D)7二、填空题(30分,每空2分)1.下列程序段的输出结果是 3 。

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

**********************************考试形式:上机考试(60分钟)考试题型说明:10个单选题+2个编程题下面是编程题目的复习题型,期末考试的编程题型及难易程度与此相近,请大家认真复习,强化练习,打下坚实基础,顺利通过考试。

**********************************1、编写一计算阶乘的函数fac,在主函数中从键盘输入一个正整数,调用阶乘函数fac计算阶乘并输出计算结果。

2、编写一个求x的y次幂的函数pw,在main函数中从键盘输入a、b的值,然后调用pw函数求a的b次幂,并输出结果。

3、写一函数max,计算三个数中最大数。

在主函数中输入三个数,调用该函数求出其中最大数并输出。

(要求:三个数为实数)4、写一个函数计算两个正整数的最大公约数,在主函数中用scanf输入m,n两个正整数,调用函数后,打印函数返回值(即这两个正整数的最大公约数)。

5、编写一个函数,该函数的功能是判断一个整数是不是素数,在main函数中调用该函数,输出200以内所有的素数。

6、请编一个自定义函数,功能:将给定的字符串中的所有字母改为小写字母。

字符串在主函数中从键盘任意输入(容许包含空格)7、编写一个函数,该函数的功能是判断一个整数是不是素数,在main函数中输入一个整数,调用该函数,判断该数是不是素数,若是则输出“yes”,否则输出“no”8、将1--1000中所有21的倍数存到一个一维数组中,再按每行5个数据输出到屏幕上。

9、在屏幕上打印以下图案:(要求打印N行,N用符号常量定义为7)****************************10、输出所有在正整数200和300之间能被6整除、但不能被4整除的数,并统计这样的数有多少个。

11、求S=1/1+1/2+1/3+……+1/100(精确到小数点后三位)。

12、编程计算1到20的平方和,并输出结果。

(要求用for循环)13、编写一个程序从键盘任意个整数,求均值及低于均值的个数,输出到屏幕。

14、编写一个程序从键盘输入10个学生的成绩到数组score中,将最高分、最低分输出,要求将该程序以文件名test1.c保存到K盘根目录。

15、在main()函数中输入一个人的年龄和性别,女士55岁退休,男士60岁退休。

编写一个函数根据年龄和性别判断一个人士工作还是退休,若工作,则输出“Working!”,退休则输出“Retired!”161、编写一个程序从键盘输入10个学生的成绩到数组score中,将最高分、最低分输出。

17、编写一个函数求一个实数的绝对值。

然后在main函数中用scanf输入任意个实数,调用该函数求它的绝对值并输出。

18、编写一个求1——n内的偶数和的函数,在main()函数中输入n,然后调用该函数求1——n的偶数和并输出。

19、编写一个求1——n内的奇数和的函数,在main()函数中输入n,然后调用该函数求1——n的奇数和并输出。

20、编写函数打印以下图形,将图形中的行数作为函数的形参。

在main()函数中输入行数n,调用该函数打印行数为n的图形。

(如:输入5,则打印出5行的三角形)***************21、编写一个函数,将摄氏温度转换成华氏温度,转换公式为:f=1.8*c+32.0。

在main函数中调用该函数,计算并在屏幕上显示从摄氏0度到100度,每隔10度转换一次的华氏温度。

22、编写一个函数,将三个数按由小到大的顺序排列并输出。

在main函数中输入三个数,调用该函数完成这三个数的排序。

23、编写一个函数,该函数的功能是打印1——n中所有7的倍数,在main()中输入n,调用该函数输出结果。

24、写一个函数判断一个正整数是否为奇数,在主函数中用scanf输入正整数m,调用函数后,根据函数返回值判断这个正整数是否为奇数,若是则输出“yes”,否则输出“no”25、写一个函数判断一个正整数是否为偶数,在主函数中用scanf输入正整数m,调用函数后,根据函数返回值判断这个正整数是否为偶数,若是则输出“yes”,否则输出“no”26、写一个函数,判断某一个四位数是不是玫瑰花数(所谓玫瑰花数即该四位数各位数字的四次方和恰好等于该数本身,如:1634=14+64+34+44)。

在主函数中调用该函数,输出所有玫瑰花数。

27、写一个函数,判断某一个四位数是不是玫瑰花数(所谓玫瑰花数即该四位数各位数字的四次方和恰好等于该数本身,如:1634=14+64+34+44)。

在主函数中从键盘任意输入一个四位数,调用该函数,判断该数是否为玫瑰花数,若是则输出“yes”,否则输出“no”。

28、编写一个函数,判断某一个三位数是不是水仙花数(所谓水仙花数即该三位数各位数字的立方和恰好等于该数本身,如:153=13+53+33)。

在主函数中调用该函数,输出所有水仙花数。

29、编写一个函数,函数的功能是求出所有在正整数M和N之间能被5整除但不能被3整除的数并输出,其中M<N。

在主函数中调用该函数求出100至200之间,能被5整除、但不能被3整除的数。

30、编写一个函数,其功能是;检验一个输入的四位数字是否是闰年,如果是闰年则返回1,否则返回0。

在主函数中从键盘输入一个四位数XXXX,调用该函数进行判断,如果是则输出” yes”,否则输出”no”(提示:如果该四位数能被4整除但不能被100整除,则是闰年;如果该四位数能被400整除,则是闰年)31、编写一个函数求两数中的较大数,在main()函数输入三个数,调用该函数求这三个数的较大数并在屏幕上输出。

32、写一函数min,返回三个数中最小数。

在主函数中用键盘输入三个数,调用该函数求出其中最小数并输出。

(要求:三个数为实数)33编写一个函数计算n!。

在主函数中调用该函数计算1!+2!+3!+ (10)并输出结果。

34、编写一个求直角三角形的面积的函数。

在main函数中从键盘输入直角三角形的两个直角边,然后调用该函数求该直角三角形的面积(精确到小数点后2位)。

35、编写一个求圆的面积的函数。

在main函数中从键盘输入半径,然后调用该函数求该圆的面积(精确到小数点后2位)。

36、某商场根据客户购物的数量打折,根据商品的单价p,数量n,编写函数fun计算应付款。

在main()函数中输入单价和数量,调用函数后,输出应付款(打折方法:购物数量10件及以上打9折,20件及以上打8折,10件以下不打折,结果保留2位小数)。

37、写一个函数,判断给定的三边长能否构成直角三角形,能构成直角三角形,则返回整数1,否则返回整数0。

在main()函数中输入三边长,调用该函数,若是直角三角形,则输出“yes”, 否则,输出“no”。

38、写一个函数计算两个正整数的最小公倍数,在主函数中用scanf输入m,n两个正整数,调用函数后,打印这两个正整数的最小公倍数。

39、编写一个函数,判断某一个三位数是不是水仙花数(所谓水仙花数即该三位数各位数字的立方和恰好等于该数本身,如:153=1*1*1+5*5*5+3*3*3)。

在主函数中从键盘任意输入一个三位数调用该函数,判断该数是否为水仙花数,若是则输出"yes",否则输出"no"。

40、编写一个程序从键盘输入三个整型数据,按从大到小的顺序输出。

41、编写一个程序从键盘输入三个整型数据,求它们的和及平均值并在屏幕上显示(平均值精确到小数点后两位)。

42、设a,b是这个直角三角形的两个直角边,用scanf输入a,b的值,计算并输出直角三角形的周长。

(结果保留2位小数)。

43、用scanf输入半径r的值,求以此为半径的园的面积。

将结果输出到屏幕上(要求将л=3.14159定义为符号常量,结果保留2位小数)。

44、编写程序,从键盘输入圆柱体的底面半径r和高h,求圆柱体的体积并输出(л=3.14159,结果保留2位小数)。

45、用scanf输入一个梯形的上底(a)下底(b)和高(h),求这个梯形的面积(s)。

(结果保留2位小数)。

46、计算1到20的平方和,并输出结果。

(要求用for循环)47、求S=1/1+1/2+1/3+……+1/100(精确到小数点后三位)。

48、编写一个程序从键盘输入10个整数,求均值及低于均值的个数,并结果用空格隔开输出到屏幕。

(采用预定义N为10)。

49、将1--1000中所有21的倍数存到一个一维数组中,再按每行5个数据输出到屏幕上。

50、编写一个程序,输出下面数列的前20项0 , 1,1,2,3,5,8,13,21,2451、求解一个一元二次方程(分别考虑幂为零次,一次,二次情况)52、假设某人有钱百枚,希望买一百只鸡,公鸡6圆一只,母鸡4圆一只,小鸡0.5圆一只。

试问可以包含几只公鸡,几只母鸡,几只小鸡。

53、任意输入等比数列的初值和一个公比,求等比数列的前20项的和54.请编写一个程序,计算1-1/2+1/3-………+1/99-1/100。

相关文档
最新文档