c语言上机题库 (1)

合集下载

计算机二级c语言上机(南开大学)100题 (1)

计算机二级c语言上机(南开大学)100题 (1)

计算机二级C语言上机(南开大学)100题程序填空题1 补充fun函数,fun函数的功能是求10的阶乘。

n>1 n-1 n==12 在函数fun的横线上填写若干表达式,使从键盘上输入一个整数n,输出数列是一种整数数列,其中每数等于前面两数之和n==o n==1 fun(n-1)+fun(n-2)3 补充函数fun(char*s),该函数的功能是把字符串中的内容逆置s+i<s+n-1-i*(s+i)=(s+n-1-i) *(s+n-1-i)=t4 补充函数fun,他的功能是计算并输出n(包括n)以内能被3或7整除的所有自然数的倒数之和i<=ni%3==0||i%7==0 1.0/i5 功能是求1/2的圆面积,函数通过形参得到圆的半径,函数返回1/2的圆面积r r*r &x6 功能是计算并输出下列级数的前N项合Sn,直到Sn大于q为止,q 的值通过形参传入<= n++return s7 函数fun的功能是统计长整数n的各个位上出现数字1.2.3的次数,并通过外部(全局)变量c1.c2.c3返回主函数n%10 break break8 补充main函数,功能是从键盘输入一组整数,使用条件表达式找出最大的整数,当输入的整数为0时结束&num[i]max<num[i]? num[i]!=09 给定程序的功能是分别统计字符串中大写字母和小写字母的个数(*a)++ (*b)++ upper,lower10 补充main函数,功能是从键盘输入3个整数,然后找出最大的数并输出。

max=a max=b max=c11 函数fun的功能是把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动1 s[k] c12 补充fun函数,功能是字符串tt中的大写字母都改为对应的小写字母,其他的字符不变。

tt[i]<='Z'tt[i]+=32 tt13 补充fun函数,功能是判断一个数是否为素数。

计算机二级C语言上机试题库和答案解析(100套)

计算机二级C语言上机试题库和答案解析(100套)

完美WORD格式计算机二级 c 语言上机题库及答案内部资料,切勿外传!.第 1 套填空题请补充 FUN 函数,FUN 函数的功能是求 10 的阶乘。

注意:部分源程序给出如下。

请勿改动主函数 main 和其他函数中的任何内容,仅在 fun 函数的横线上填入所编写的若干表达式或语句。

试题程序:#include<stdio.h>longfun(int n){if ( 1 )return (n*fun( 2));return 3;}main(){printf("10!=%ld\n", fun(10));}第 1 处填空:n>1 或 1<n第 2 处填空:n-1第 3 处填空:1 或 11 或 1L改错题下列给定程序的功能是:读入一个整数 K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数 2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(intn);{int i,m;m =1;/********found********/for (i=2; i<n;i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between2and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %dis(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第 1 处:Isprime(int n);应改为Isprime(int n)第 2 处:if !(n%i)应该为if(!(n%i))编程题M 个人的成绩存放在 score 数组中,请编写函数 fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below 所指的数组中。

C语言上机练习题及答案

C语言上机练习题及答案

C语言上机练习题及答案1输入三个整数x,y,z,把这三个数由小到大输出。

# includevoid main(){int x,y,z,a;scanf ("%d,%d,%d",&x,&y,&z);if(x>y) {a=x; x=y;y=a;}if(x>z) { a=x; x=z; z=a;}if(y>z) {a=y; y=z; z=a;}printf("%d,%d,%d\n",x,y,z);}2输入圆的半径,输出圆的周长和面积。

# include# define PI 3.1415926# define S ==PI*r*r# define V (4.0/3)*PI*r*r*rvoid main(){double r;printf("please input r:");scanf("%lf",&r);printf("area is %.4lf\n",S);printf("volume is %.4lf\n",V);}输入正方形的边长,输出正方形的周长和面积。

# includevoid main(){float c,zc,mj;printf("输入你的正方形");scanf("%f\n",&c);zc=4*c;mj=c*c;printf("周长%f,面积%f,边长%f",zc,mj,c);}3用格式输入函数输入3个字符,并用输出函数反向输出3个字符和他们的ASCII 码。

# includeint main(){char-ch1,ch2,ch3;printf("please input three characters:\n");scanf("%C%C%c",&ch1,&ch2,&ch3);printf("%c\n%d\n",ch3,ch3);printf("%c\n%d\n",ch2,ch2);printf("%c\n%d\n",ch1,ch1);}输入一个摄氏温度,要求输出华氏温度。

C语言上机题参考答案

C语言上机题参考答案
}
20、设有1<=n<=500个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进
行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始1到m的
报数,如此进行下去直到所有的人都出圈为止。
要求按出圈次序输出编号。
输入格式如下:
n s m
示例:
输入:
6 1 3
输出:
3 6 4 2 5 1
scanf("%d",&n);
for(i=1;i<=n;i++)
{for(j=1;j<=i;j++)
printf("*");
printf("\n");
}
}
8、编程输出n行图形(n值通过键盘输入),
假设n=5,则图形如下:
*
**
***
****
*****
假设n=6,则图形如下:
*
**
***
****
*****
if(x>1) y=6*x+5;
printf("%d",y);
}
三、循环图形
7、编程输出n行图形(n值通过键盘输入)
假设n=5,则图形如下:
*
**
***
****
*****
假设n=6,则图形如下:
*
**
***
****
*****
******
#include<stdio.h>
void main()
{int i,j,n;
printf("%.2f\n",(a+b+c)/3.0);

C语言上机作业试题5套含答案

C语言上机作业试题5套含答案

第一次上机作业(2021):要求:独立完成,上机调试通事后上交作业提交邮件主题命名:班级学号姓名(第1次作业),例如:电1301班2王鹏(第1次作业)以附件形式将每次作业的所有程序源程序紧缩打包后提交,紧缩文件命名格式同上。

程序必需采用缩进格式1.大写字母转换成小写字母从键盘输入一个大写英文字母,输出相应的小写字母。

例:输入G输出g2.求平方根输入一个实数x,计算并输出其平方根(保留1 位小数)。

例:输入17输出The square root of is3.温度转换设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32)a)输入华氏温度(实型)b)输出的摄氏温度结果保留两位小数例:Please input Fahrenheit temperature:The corresponding Celsius temperature is4. 计算旅途时刻输入二个整数time1 和time2,表示火车的起身时刻和抵达时刻,计算并输出旅途时刻。

(输入的有效的时刻范围是0000 到2359,不需要考虑起身时刻晚于抵达时刻的情形。

)例:输入712 1411 (起身时刻是7:12,抵达时刻是14:11)输出The train journey time is 6 hours 59 minutes.5. 数字加密输入一个四位数,将其加密后输出。

方式是将该数每一名上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。

例:输入1257输出The encrypted number is 4601试探题:你可否编程找出谁做的好事?有四位同窗中的一名做了好事,不留名,夸奖信来了以后,校长问这四位是谁做的好事。

⏹A说:不是我。

⏹B说:是C。

⏹C说:是D。

⏹D说:他乱说。

已知三个人说的是实话,一个人说的是谎话。

此刻要依照这些信息,找出做了好事的人。

江西计算机省二级试题及答案_二级C语言上机题库1

江西计算机省二级试题及答案_二级C语言上机题库1

二级C 语言上机考试复习资料,共有50套题目 一、程序填空题1、程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。

函数fun 的功能是对形参b 所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。

例如: b 所指变量t 中的学号、姓名、和三门课的成绩依次是: 10002、"ZhangQi"、93、85、87,修改后输出t 中的数据应为:10004、" LiJie "、93、85、87。

请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。

注意:源程序存放在考生文件夹下的BLANK1.C 中。

不得增行或删行,也不得更改程序的结构! #include <stdio.h> #include <string.h> struct student { long sno;char name[10]; float score[3]; };void fun( struct student *b) {/**********found**********/ b__1__ = 10004;/**********found**********/ strcpy(b__2__, "LiJie"); }main(){ struct student t={10002,"ZhangQi", 93, 85, 87}; int i;printf("\n\nThe original data :\n");printf("\nNo: %ld Name: %s\nScores: ",t.sno, ); for (i=0; i<3; i++) printf("%6.2f ", t.score[i]); printf("\n");/**********found**********/ fun(__3__);printf("\nThe data after modified :\n");printf("\nNo: %ld Name: %s\nScores: ",t.sno, ); for (i=0; i<3; i++) printf("%6.2f ", t.score[i]); printf("\n"); }2、给定程序中,函数fun 的功能是计算下式例如,若形参e 的值为1e-3,函数的返回值2.985678。

C语言上机试题

C语言上机试题

C语言第一次上机1、有人把C语言称为中级语言,意思是?A. 操作上比低级语言简单,比其它语言复杂B. 其功能比低级语言强,但比高级语言弱C. 其编译方式处于低级语言和高级语言之间D. 既具有低级语言的功能,又具有高级语言功能本题正确答案为:D2、C语言程序由什么组成?A. 函数B. 主程序和子程序C. 子程序D. 过程本题正确答案为:A3、下列说法正确的是?A. VC++6.0是面向对象的高级语言,采用编译方式向机器语言转换B. VC++6.0是面向对象的高级语言,采用解释方式向机器语言转换C. VC++6.0是面向过程的高级语言,采用编译方式向机器语言转换D. VC++6.0是面向过程的高级语言,采用解释方式向机器语言转换本题正确答案为:A4、下列说法错误的是?A. 其它函数不能单独运行,只能被主函数或其它函数调用B. 程序是从第一个函数开始执行C. 主函数执行完毕,程序就结束了D. 程序总是从主函数开始执行,不管主函数在什么位置本题正确答案为:B5、字符串 "\n\\\'\123"包括几个字符(即占用几个字节的存储空间)?A. 4B. 10C. 5D. 11本题正确答案为:C6、假设所有变量均为整数,表达式a=2,b=5,a<b?a++:b,a+b的值是A. 3B. 8C. 7D. 2本题正确答案为:C7、若变量f已说明为float类型,i为int类型,则下面哪个表达式(或语句)能够实现将f中的数值保留小数点后两位,第三位进行四舍五入的运算?A. f=(f*100+0.5)/100.0B. i=f*100+0.5,f=i/100.0;C. f=(int)(f*100+0.5)/100.0;D. f=(f/100+0.5)*100.0;本题正确答案为:B8、若 a=3, 下列表达式的值为?a*a,a+5,a++, a*3A.4B. 45C. 12D. 9本题正确答案为:C9、若a=10, b=20,表示 x在a,b之间的表达式为?A. x>=a && x<=bB. a=<x && x<=bC. x>=a || x<=bD. a<=x<=b本题正确答案为:A10、下面那个表达式的值与其它的不一样?A. sizeof(char)*8B. sizeof(8)C. sizeof(10)*2D. sizeof(double)本题正确答案为:B11、若int a=5, b=4, c=6, d;则执行 d=a>b?(a>c?a:c):b 后,d的值为?A. 5B. 4C. 6D. 1本题正确答案为:C12、下面那个表达式的值为4?A. 11/3B. (int) (11.0/3+0.5)C. (int) (11.0/3)+0.5D. 13.0/3本题正确答案为:B13、下面那个不是合法的常量A. 0101010B. 048C. 0xabD. 348本题正确答案为:B14、若有 char c;表示c为字母的表达式为?A. c>='A'&&c<='z'B. c>='a'&&c<='z' || c>='A' && c<='Z'C. c>='a'&&c<='Z'D. c>='a'&&c<='z' && c>='A' && c<='Z'本题正确答案为:B15、C语言中整形常量不包括种:A. 二进制常量B. 八进制常量C. 十六进制常量D. 十进制常量本题正确答案为:A16、若有 int i=4, k, j;则执行 k=i++, j=++i 后, k与j的值分别为?A. k=4, j=5B. k=5, j=6C. k=5, j=5D. k=4, j=6本题正确答案为:D17、若有 a=3,则执行下列语句为a的值为?a+=a*=a;A. 3B. 12C. 9D. 18本题正确答案为:D18、以下合法的赋值语句是?A. x=y=100B. c=int(a+b);C. x+y;D. d--;本题正确答案为:D19、设x,y,z均为int型变量,则执行语句: x=y=3; t=++x||++y后,y的值为A. 1B. 不定值C. 4D. 3本题正确答案为:D20、若有 scanf("a=%d:%d",&a,&b);想把10给a,20给b, 则正确的输入格式为?A. a=10,b=20B. a=10:20C. a=10,20D. a=10:b=20本题正确答案为:B 21、若有scanf("%2d%3d%d",&a,&b,&c);运行时输入 1234567890,则a,b,c的值分别为?A. a=12,b=345,c=678B. 输入错误C. a=1234567890,b,c保持原来的值D. a=12,b=345,c=67890本题正确答案为:D22、若有scanf("%2d%*2d%3d",&a,&b);程序运行时输入 123456789,则a,b的值为?A. a=12,b=567B. a=1234,b=567C. a=12,b=345D. a=12,b=34本题正确答案为:A23、若有 char c;c=getchar()=='A';程序运行时从键盘输入 A, 则c的值为?A. AB. 0C. 以上都不对D. 1本题正确答案为:D24、若有int a=1234;printf("%2d",a); 的输出结果是?A. 12B. 34C. 出错D. 1234本题正确答案为:D程序设计1、函数fun的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。

计算机二级C语言上机题库及答案(100套)

计算机二级C语言上机题库及答案(100套)

~计算机二级c 语言上机题库及答案内部资料,切勿外传!.第1 套填空题请补充FUN 函数,FUN 函数的功能是求10 的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在fun 函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if ( 1 )return (n*fun( 2 ));return 3 ;}main(){printf("10!=%ld\n", fun(10));}第1 处填空:n>1 或1<n第2 处填空:n-1第3 处填空:1 或11 或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1 处:Isprime(int n);应改为Isprime(int n)第2 处:if !(n%i)应该为if(!(n%i))编程题M 个人的成绩存放在score 数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below 所指的数组中。

C语言上机考试题

C语言上机考试题

C语言上机考试题(第一套)1. #include <conio.h>#include <stdio.h>double fun( int n ){double sum=0,a=1;for(;n>0;n--,a++)sum=sum+1/(a*(a+1));return sum;}main(){clrscr();printf("%f\n", fun(10));}2.#include <stdio.h>main(){int k,m,s=0,i,b=0;for(k=10000;k<=20000;k++){if(k%10==7){for(i=2,b=0;i<k;i++)if(k%i==0)b++;if(b==0)m=k,s++;}}printf("这样的素数有%d个。

\n 其中最大的一个是%d\n",s,m);}3.#include <stdio.h>main(){int a;printf("请输入一个需要判断的年份:\n");scanf("%d",&a);if(a%4==0&&a%100!=0)printf("是闰年\n");elseif(a%400==0)printf("是闰年\n");elseprintf("不是闰年\n"); }C语言上机考试题(第二套)1. #include <conio.h>#include <stdio.h>double fun( int n ){double sum=0,a=1;for(;n>0;n--,a++)sum=sum+1/(a*(a+1));return sum;}main(){// clrscr();printf("%f\n", fun(10));}2.#include <stdio.h>fun(int n){int i,j=0;for(i=2;i<n;i++)if(n%i==0)j++;return j;}main(){int a,b=0,d,e,k;for(k=1;k<10;k++)if(fun(k)==0)a=k,b++;for(k=10;k<100;k++)if(fun(k)==0){e=k%10,d=k/10;if(e==d)a=k,b++;}for(k=100;k<=1000;k++)if(fun(k)==0){e=k%10,d=k/100;if(e==d)a=k,b++;}printf("[1,1000]之内既是回文数,又是素数的最大整数:%d\n",a);printf("[1,1000]以内既是回文数,又是素数的整数有%d个\n",b);}3.#include <stdio.h>#include <string.h>main(){char str[81];int i,j=0,w=1,s=0;printf("请输入一串字符:\n");gets(str);for(i=0;i<strlen(str);i++){if(str[i]==' ')s++;if(str[i]==' '&&str[i+1]!=' ')w++;}if(str[0]==' ')w--;if(str[strlen(str)-1]==' ')w--;printf("单词个数为:%d\n空格个数为:%d\n",w,s);}C语言上机考试题(第三套)1.//#include "conio.h"#include "math.h"#include "stdio.h" int fun(int t){int a=0,b=1,c,k;for(k=1;;k++){c=b;b=a+b;a=c;if(a>t)break;}return a;}main(){int n;//clrscr();n=1000;printf("n = %d, f = %d\n",n, fun(n));}2.#include "stdio.h"main(){int a[3][3],i,j,s=0;printf("请依次输入一个3*3矩阵:\n");for(i=0;i<3;i++)for(j=0;j<3;j++){scanf("%d",&a[i][j]);if(i==j||i+j==2)s=s+a[i][j]*a[i][j];}printf("对角线平方和为:%d\n",s);}3.#include<stdio.h>#include<string.h>#define N 81fun(char str[]){int i=0,j;while(i<N){if(str[i]<=57&&str[i]>=48)for(j=i;j<N;j++)str[j]=str[j+1];elsei++;}puts(str);}main(){char str[N];printf("请随意输入字符:");gets(str);fun(str);}C语言上机考试题(第四套)1.//#include "conio.h"#include "math.h"#include "stdio.h"double fun( int n){double s=0;int i;for(i=1;i<n;i++)if(i%21==0)s+=i;return sqrt(s);}main(){// clrscr();printf("s=%f\n", fun (1000) ); }2.#include "stdio.h"main(){int a,b,k;for(;;){printf("请输入两数:\n");scanf("%d%d",&a,&b);if(a>0&&b>0)for(k=a;k>=1;k--)if(a%k==0&&b%k==0)break;if(a%k==0&&b%k==0)break;}printf("这两个数的最大公约数是:%d\n",k);}3.#include<stdio.h>main(){double a=1,b=1,i,j,s=0;for(i=1,j=3;;i++,j=j+2){a=a*i;b=b*j;s=s+a/b;if(a/b<0.00005)break;}printf("%f\n",2*(s+1));}C语言上机考试题(第五套)1.#include <conio.h>#include <stdio.h>int fun(int array[3][3]){int a[3][3],i,j;int b[3][3];for(i=0;i<3;i++){for(j=0;j<3;j++)a[i][j]=array[j][i];}for(i=0;i<3;i++)for(j=0;j<3;j++)array[i][j]=a[i][j];}main(){int i,j;intarray[3][3]={{100,200,300},{400,50 0,600},{700,800,900}};// clrscr();for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%7d",array[i][j]);printf("\n");}fun(array);printf("converted array:\n");for(i=0;i<3;i++){for(j=0;j<3;j++)printf("%7d",array[i][j]);printf("\n");}}2.#include <stdio.h>main(){float x,y,s=0;int n;for(x=1;x<=100;x++){n=x;if(n%2==0)y=-1/x;elsey=1/x;s=s+y;}printf("前n项和为:%f\n",s); }3.#include<stdio.h> main(){int a[101]={0},i,n,s=0,t;for(n=2;n<=100;n++){for(t=0,i=2;i<n;i++){if(n%i==0)t++;}if(t==0)a[n]=n;}for(n=2;n<=100;n++)if(a[n]!=0&&a[n+2]!=0)s++;printf("2~100中的所有的亲密素数对的个数为:%4d\n",s);}C语言上机考试题(第六套)1.#include "stdio.h"main(){int a,b,c,s,k;printf("请输入一个大于2小于1000的数:\n");scanf("%d",&k);printf("它的所有质因子是:\n");for(a=2;a<=k;a++)if(k%a==0){for(s=0,b=2;b<a;b++)if(a%b==0)s++;if(s==0)printf("%5d",a);}printf("\n");}2.//#include "conio.h"#include "stdio.h"int fun (int n){int s=0,k;for(k=2;k<n;k++)if(n%k==0)s+=k;return s;}main(){//clrscr();printf("%d\n", fun (120));}3.#include<stdio.h>main(){double a=1,b=1,i,j,s=0;int n;printf("请输入求和项数N:\n");scanf("%d",&n);for(i=1;i<=n;i++)s+=1/(i*(i+1));printf("数列前%d项求和为:%f\n",n,s);}C语言上机考试题(第七套)1.//#include <conio.h>#include <stdio.h>#include <math.h>double fun(double x , int n){double a=1,c,s=0,i;c=x;for(i=1;i<=n+1;i++){a=a*i;s=x/a+s;x=x*c;}s=s+1;return s;}main(){//clrscr();printf("%f\n", fun(0.3,10));}2.#include<stdio.h>main(){int a,b,c,d,k;for(k=100;k<=999;k++){a=k/100;b=(k-a*100)/10;c=k-a*100-b*10;d=a*a*a+b*b*b+c*c*c;if(k==d)printf("%5d",k);}printf("\n");}3.#include<stdio.h>#include<math.h>main(){float a,b,c,t,p;for(;;){printf("请正确输入三角形三边长:\n");scanf("%f%f%f",&a,&b,&c);if(a<b)t=a,a=b,b=t;if(b<c)t=b,b=c,c=t;if(a<b)t=a,a=b,b=t;if(a<b+c&&c>0)break;else continue;}p=(a+b+c)/2;t=sqrt(p*(p-a)*(p-b)*(p-c));printf("面积为:%f\n",t);}C语言上机考试题(第八套)1.#include <conio.h>#include <stdio.h>#include <string.h>float fun(int n){int i,s=0;float p=0;for(i=1;i<=n;i++){s+=i;p+=1.0/s;}return p;}main(){int n;float s;// clrscr()printf("\nPlease enter N:");scanf("%d", &n);s = fun(n);printf("the result is: %f\n", s); }2.#include<stdio.h>main(){int i;float h=100,s=100;for(i=1;i<=10;i++){h=h/2;s+=h*2;}printf("第10次落地时,共经过:%f米\n",s);printf("第10次反弹的高度为:%f米\n",h);}3.#include<stdio.h>double fun(){double a=1,b=1,i,j,s=0;for(i=1,j=3;;i++,j=j+2){a=a*i;b=b*j;s=s+a/b;if(a/b<0.000001)break;}s=2*(s+1);return s;}main(){printf("%f\n",fun());}C语言上机考试题(第九套)1.#include "conio.h"#include "stdio.h"void fun( int m, int k ){int a,b,e=1,s=0;for(b=m;;){a=b%k;b=b/k;s+=a*e,e=e*10;if(b<k){s+=b*e;break;}}printf("该数为:%d\n",s);}main( ){int b,n;//clrscr();printf("\nPlease enter a number and a basen\n");scanf("%d%d",&n,&b);fun(n,b);printf("\n");}2.#include "stdio.h"main(){int a,b;for(a=1;a<10;a++){b=a*a;if(b%10==a)printf("%4d\n",a);}for(a=10;a<100;a++){b=a*a;if(b%100==a)printf("%4d\n",a);}for(a=100;a<=1000;a++){b=a*a;if(b%1000==a)printf("%4d\n",a);}}3.#include<stdio.h>main(){float f1,f2,f;f1=2*(-1)*(-1)+3*(-1)+4;f2=-2*5.0*5.0+3*5.0-4;if(f1+f2<=2)f=2*(f1+f2)*(f1+f2)+3*(f1+f2) +4;elsef=-2*(f1+f2)*(f1+f2)+3*(f1+f2) -4;printf("计算结果为:%f\n",f); }C语言上机考试题(第十套)1.#include <conio.h>#include <stdio.h>long fun (int a, int n){long b,e,temp,t,k=1,sum=0;if(a<10&&a>0&&n>1&&n<10){temp=a;for(;k<=n;k++){for(b=0,e=1,t=1;t<=k;t++){a=temp;a=e*a;e=e*10;b+=-a;}sum+=b;}sum+=-2*b;return sum;}else printf("输入有的A或者N 有问题求和结果不正确\n");}main( ){int a, n;//clrscr() ;printf("\nPlease enter a and n:\n ") ;scanf("%d%d",&a,&n) ;printf("The value of function is: %1d\n",fun(a,n));}2.#include <stdio.h>fun(int n){int k,a=0;for(k=2;k<n;k++)if(n%k==0)a++;return a;}main(){int i,j,k,n,t,a,b;for(n=4;n<=100;n=n+2){for(i=2;i<n;i++){j=n-i;if(fun(i)==0&&fun(j)==0)break;}printf("%d=%d+%d\n",n,i,j);}}3.#include <stdio.h>main(){int k,l,m,s=0;for(k=0;k<=10;k++)for(l=0;l<=5;l++)for(m=0;m<=2;m++)if(100==k*10+l*20+m*50)s++;printf("共有%d 种不同的兑换方法\n",s);}C语言上机考试题(第十一套)1.#include<conio.h>#include <stdio.h>double fun ( int x[ ]){int a[1000];int i,j=0,k=0;double s=0;while(x[j]!='\0'){if(x[j]>0){a[k]=x[j];k++;}j++;}for(i=0;i<k;i++)s+=a[i];return s/k;}main( ){int x[1000]; int i=0;// clrscr();printf("\nPlease enter some data (end with 0) ");do{scanf("%d",&x[i]);}while(x[i++] !=0);printf("%f\n",fun ( x ));}2.#include<stdio.h>#include<string.h>#define N 10main(){char str[N];int i=0,flag=0;long num=0;printf("请输入连续数字字符(最多10为数字) :");gets(str);while(str[i]!='\0'&&str[i]!='a'){if(str[i]=='-')flag=1;elseif(str[i]=='+')flag=0;elsenum=num*10+(str[i]-'0');i++;}if(flag==1)num=-num;printf("由数字字符串转化成整数是:%ld\n",num);}3.#include<stdio.h>main(){int a,b,c,s=0;for(a=0;a<=33;a++)for(b=0;b<=50;b++)for(c=0;c<=100;c=c+2)if(100==3*a+2*b+c/2&&a+b+c ==100)s++;printf("共有驼法:%d种\n",s);}C语言上机考试题(第十二套)1.#include <conio.h>#include <stdio.h>float fun(int m, int n){float t,p,j,i,k,o;if(m<n)t=m,m=n,n=t;for(p=1,j=1,i=1,o=m;p<=m-n;o--,p++){j=o*j;i=p*i;}k=j/i;return k;}main() /*主函数*/{// clrscr();printf("P=%f\n", fun (12,8)); }2.#include<stdio.h>main(){int x,y,z,i;printf("1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数:\n");for(i=1;i<=1000;i++){x=i%7,y=i%11;if(x==0&&y!=0||y==0&&x!=0)printf("%4d",i);}printf("\n");}3.#include<stdio.h>main(){int a[3][3],i,j,sum=0;for (i=0;i<3;i++){for (j=0;j<3;j++)scanf("%d",&a[i][j]);}for (i=0;i<3;i++){for (j=0;j<3;j++){if(i+j==2||i==j)sum=sum+a[i][j];}}printf("%d",sum);}C语言上机考试题(第十三套)1.#include <stdio.h>double fun(int n){double a=1,b=2,c,sum=0;for(;n>0;n--){sum=a/b+sum;c=a+b;a=b;b=c;}return sum;}main(){int n;printf("Enter n: ");scanf("%d", &n);printf("\nThe result : %f \n", fun(n));}2.#include <stdio.h>#include <string.h>main(){char str[81];int i,j=0,w=1,s=0;printf("请输入一串字符:\n");gets(str);for(i=0;i<strlen(str);i++){if(str[i]==' ')s++;if(str[i]==' '&&str[i+1]!=' ')w++;}if(str[0]==' ')w--;if(str[strlen(str)-1]==' ')w--;printf("单词个数为:%d\n空格个数为:%d\n",w,s);}3.#include <stdio.h>main(){int k=1,sum=0;for(;k<200;k=k+2)sum=sum+k;printf("sum=%d\n",sum);}C语言上机考试题(第十四套)1.#include "conio.h"#include "stdio.h" #include "math.h"float fun(int n){float a=0,b=0,c=1,d,e,s=0,k;for(k=1;k<=n;k++){s+=sqrt(a);d=a+b+c;a=b,b=c;c=d;}return s;}main ( ){int n;//clrscr( );printf("Input N=");scanf("%d", &n);printf("%f\n", fun(n));}2.#include<stdio.h>fun(int s[10]){int i,j;for(i=1;i<10;i++)for(j=0;j<10-i;j++)if(s[j]<s[j+1]){int temp;temp=s[j];s[j]=s[j+1];s[j+1]=temp;}printf("这10个数按从大到小排列为:\n");for(i=0;i<10;i++)printf("%d",s[i]);}main(){int s[10],i=0;printf("请输入10个整数:");for(;i<10;i++)scanf("%d",&s[i]);fun(s);printf("\n");}3.#include<stdio.h>fun(int s[10]){int i;float a=0;for(i=1;i<9;i++)if(s[i]>s[i+1]){int temp;temp=s[i];s[i]=s[i+1];s[i+1]=temp;}printf("这10个数中最大的为:%d\n",s[9]);for(i=0;i<10;i++)a+=s[i];printf("平均数为:%.1f",a/10);}main(){int s[10],i=0;printf("请输入10个整数:");for(;i<10;i++)scanf("%d",&s[i]);fun(s);printf("\n");}C语言上机考试题(第十五套)1.#include"conio.h"#include"stdio.h"double fun(int m){double a=1,b,j,s=0;for(j=1;j<=m;j++){a=a*j;b=1/a;s+=b;}return s;}main(){int n;//clrscr();printf("Enter n ");scanf("%d", &n);printf("\nThe result is%1f\n", fun(n));}C语言上机考试题(第十六套)1.#include <math.h>#include <stdio.h>float fun(float num){float i=3.0,j=-1.0,k=1.0;while(fabs(1.0/i)>num){k=k+j/i;j=-j;i+=2;}return k*4;}main(){ float n1,n2;//clrsct( );printf("Enter a float numder:");scanf("%f",&n1);n2=fun(n1);printf("%6.4f\n",n2);}2.#include <stdio.h>#include <stdlib.h>void md(int num,int b[20]){int i;for(i=0;i<num;i++)b[i]=rand()%32768;}main(){ int a[20],n,i,j,temp;//clrsct();printf("Enter a int numder:");scanf("%d",&n);md(n,a);for(i=0;i<n;i++){for(j=i+1;j<n;j++)if(a[i]>a[j]){temp=a[i];a[i]=a[j];a[j]=temp;}printf("%8d",a[i]);}}3.#include <stdio.h>void main(){int i,j,k;for(i=2;i<=1000;i++){for(j=1,k=0;j<i;j++)if(i%j==0)k+=j;if(k==i)printf("%6d",k);}}C语言上机考试题(第十七套)1.#include "stdio.h"fun(int x,int y , int z ){int j=1;for(;;j++)if(j%x==0&&j%y==0&&j%z= =0)break;return j;}main( ) {int x1,x2,x3,j ;printf("Input x1 x2 x3:\n");scanf("%d%d%d",&x1,&x2,&x 3 ) ;printf("x1=%d, x2=%d, x3=%d\n",x1,x2,x3);j = fun(x1,x2,x3);printf("The minimal common multiple is:%d\n",j);}2.#include "stdio.h"main(){int a,b,sa,sb,k,t;for(a=1;a<=1000;a++){sa=0,sb=0;for(k=1;k<a;k++)if(a%k==0)sa+=k;if(sa<=1000)b=sa;for(t=1;t<b;t++)if(b%t==0)sb+=t;if(a==sb&&a!=b)printf("a=%d\ nb=%d\n\n\n",a,b);}}3.#include "stdio.h"main(){int a,b,c,s=0,k;for(k=100;k<1000;k++){a=k/100,b=k/10%10,c=k%10;if(a!=b&&a!=c&&b!=c)s++;}printf("这样的三位数有%d个\n",s);}C语言上机考试题(第十八套)1.#include<conio.h>#include<stdio.h>#include<math.h>int fun(int a){int i,b=0;for(i=2;i<=a;i++)if(a%i==0)b++;if(b==1)return 1;elsereturn 0;}main(){int x;// clrscr();printf("\nPlease enter a number:");scanf("%d", &x);printf("%d\n", fun(x));}2.#include<stdio.h>main(){int w=1,i;printf("求W=1+21+22+23+…+210\n");for(i=21;i<=210;i++)w+=i;printf("求得:w= %d\n",w);}3.#include<stdio.h>main(){int i,j,s=0,p=0,k=1,t[21];for(j=1;j<=21;j++){s=0;for(i=1;i<=2*j-1;i++)if((2*j-1)%i==0)s++;if(s==2){p++;t[k]=j;k++;}}printf("在[1,21]范围内梅森尼数个数为:%d\n",p);printf("其中最大的一个是:%d\n",t[p]);}C语言上机考试题(第十九套)1.#include <conio.h>#include <stdio.h>long fun ( int k){int i;long s=1;for(i=1;i<=k;i++)s *= i;return s;}main(){int k = 10 ;// clrscr();printf("%d!=%ld\n" , k, fun ( k )) ;}2.#include<stdio.h>main(){int i,j,s=0,w=0,p=0;for(i=2;i<=98;i++){s=0;w=0;for(j=2;j<=i;j++)if(i%j==0)s++;for(j=2;j<=i+2;j++)if((i+2)%j==0)w++;if(s==1&&w==1)p++;}printf("亲密素数个数为:%d\n",p);}3.#include<stdio.h>int add(int n){int j,p=0;for(j=1;j<=n;j++)p+=2*j-1;return p;}main(){int n,i,s=0;printf("数列为:S=1+(1+3)+(1+3+5)+…+(1+3+5+…+(2n-1))\n");printf("请输入项数n= ");scanf("%d",&n);for(i=1;i<=n;i++)s=s+add(i);printf("数列n项和s= %d\n",s); }C语言上机考试题(第二十套)1.#include<stdio.h>int fun(int n){return n*(n+1);}main(){int n,i;float s=0;printf("please enter n=");scanf("%d",&n);for(i=1;i<=n;i++)s=s+1.0/fun(n);printf("s=%f\n",s);} 3.#include<stdio.h>#include<math.h>main(){float a,b,c,d,x1,x2;printf("请输入a的值:");scanf("%f",&a);printf("请输入b的值:");scanf("%f",&b);printf("请输入c的值:");scanf("%f",&c);d=b*b-4*a*c;if(d>0){printf("x1=%4.2f\n",(-b+sqrt(d) )/(2*a));printf("x2=%4.2f\n",(-b-sqrt(d)) /(2*a));}elseif(d==0)printf("x1=x2=%4.2f\n",(-b)/(2 *a));else{printf("x1=%4.2f+%4.2fi\n",(-b )/(2*a),sqrt(-d)/(2*a));printf("x2=%4.2f-%4.2fi\n",(-b) /(2*a),sqrt(-d)/(2*a));}}。

全国计算机等级考试二级C语言上机考试题库及答案

全国计算机等级考试二级C语言上机考试题库及答案

第1套一、填空给定函数的功能是调用fun 函数建立班级通讯录。

通讯录记录每位学生的编号,姓名和电话号码。

班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为答案yfile5.dat的二进制文件中。

答案:1. STYPE 2. FILE3. fp二、修改先将在字符串s中的字符按正序存放到t串中,然后把s 中的字符按逆序连接到t串后面。

答案:1. for(i = 0 ; i < sl ;i++) 2. t[2*sl] =` 0`; 三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。

合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。

*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);第2套一、填空从键盘输入若干行文本(每行不超过80个字符),写到文件答案yfile4.txt中,用-1作为字符串输入结束的标记。

然后将文件的内容读出显示在屏幕上。

文件的读写分别有自定义函数ReadText 和WriteText实现。

答案:*fw str str 二、修改从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位。

答案:long *t sl =sl*10;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。

合并的方式:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。

*c=(b/10)*1000+(a%10)*100+(b%10)*10 +(a/10);第3套一、填空将自然数1~10以及它们的平方根写到名为答案yfile3txt的文本文档中,然后再顺序读出显示在屏幕上。

答案:(1)fp (2)fclose(fp)(3)fname二、修改将n个无序整数从小到大排序。

答案:for(i=j+1;i<n;i++)p=i;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。

重庆理工大学c语言上机考试复习题 (1)

重庆理工大学c语言上机考试复习题 (1)

1、根据公式e=1+1/(1!)+1/(2!)+1/(3!)+……。

求e 的近似值,精度要求为10-6。

2、读入10个数,计算它们的和、积、平方和及和的平方。

3、计算并输出1!,2!,3!,4!,……,35!。

4、输入20个数,统计其中正、负和零的个数。

5、利用公式:)12)(12()2(......756653443*12222+-⨯⨯⨯⨯⨯⨯⨯⨯⨯=n n n π计算π的值(取前100项)。

6、利用公式:)12(1)1(......9171513114+⨯-++-+-=n n π计算π的值(省略的项都<10-5)。

7、编程计算0*1+2*3+4*5+……+100*101+101*102之和。

8、编程计算5/6+6/7+7/8+……+99/100+5!+6!+7!之和。

9、编程计算1!-2!+3!-4!+5!-6!之和。

10、编程计算1/(1+2)+2/(2+3)+3/(3+4)+……100/(100+101)之和。

11、编程计算(0+1)/1+(2+3)/3+(3+4)/4+……(99+100)/100之和。

12、求100 ~ 200中能被3或7整除的自然数。

13、统计77到210中偶数的个数。

14、统计7到91中能被3整除的奇数的个数。

15、7到91中有多少能既能被2又能被3整除的数。

16、显示7到100中所有不能被5整除的数,要求每行显示5个数。

17、找出1000之内的所有完数(完数是指:该数的各因子之和正好等于该数本身,例如:6的因子是1,2,3,而6 = 1+2+3,故6是完数)。

18、求2~1000中的所有亲密数对(亲密数对是指:如果a 的因子和等于b ,b 的因子和等于a ,则(a ,b )就是亲密数对)。

19、100元钱买100只鸡,已知公鸡3元1只,母鸡1元1只,小鸡1元3只,编程输出总的方案数以及每种方案中公鸡、母鸡、小鸡的数量。

20、100匹马驮100担货,大马驮3担,中马驮2担,小马驮0.5担,编程求大、中、小马的数量。

c语言上机考试题及答案

c语言上机考试题及答案

c语言上机考试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个是合法的整型常量?A. 0x12B. 0x12.0C. 0x12LD. 0x12.0L答案:A2. 下列哪个选项是正确的C语言标识符?A. 2variableB. variable2C. variable-2D. variable_2答案:D3. C语言中,以下哪个是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World'D. 'Hello, World'答案:A4. 在C语言中,以下哪个是正确的函数声明?A. int myFunction(int a);B. int myFunction();C. int myFunction(int);D. int myFunction(int a, int b);答案:A5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D二、填空题(每题3分,共15分)1. 在C语言中,用于定义整型变量的关键字是________。

答案:int2. 若有定义 int a = 10;,则表达式 a++ 的值为________。

答案:103. C语言中,用于表示逻辑“与”的运算符是________。

答案:&&4. 在C语言中,以下代码段的输出结果是________。

```c#include <stdio.h>int main() {int x = 5;printf("%d", x++);return 0;}```答案:55. 若有定义 float b = 3.14;,则表达式 b * 100 的值为________。

答案:314.0三、编程题(每题20分,共40分)1. 编写一个C程序,计算并输出以下数列的前10项之和:1 + 1/2 + 1/3 + ... + 1/10。

c语言上机考试题库

c语言上机考试题库

c语言上机考试题库1. 编写一个程序,从键盘输入两个整数,然后交换它们的值并输出。

```c#include <stdio.h>int main(){int num1, num2, temp;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);temp = num1;num1 = num2;num2 = temp;printf("交换后的值为:%d %d\n", num1, num2);return 0;}```2. 编写一个程序,输入一个整数,判断该数是奇数还是偶数,并输出对应结果。

```cint main(){int num;printf("请输入一个整数:");scanf("%d", &num);if(num % 2 == 0){printf("%d是偶数\n", num);}else{printf("%d是奇数\n", num);}return 0;}```3. 编写一个程序,输入一个大写字母,将其转换为小写字母并输出。

```cint main(){char upperCase, lowerCase;printf("请输入一个大写字母:");scanf("%c", &upperCase);lowerCase = upperCase + 32;printf("转换为小写字母:%c\n", lowerCase);return 0;}```4. 编写一个程序,输入一个字符串,然后判断该字符串是否为回文,并输出对应结果。

```c#include <stdio.h>#include <string.h>int main(){char str[100];int i, j, flag = 1;printf("请输入一个字符串:");gets(str);for(i = 0, j = strlen(str) - 1; i < j; i++, j--) {if(str[i] != str[j]){flag = 0;break;}}if(flag == 1){printf("该字符串是回文\n");}else{printf("该字符串不是回文\n");}return 0;}```5. 编写一个程序,输入一个整数n,计算并输出1到n的累加和。

c语言上机试题库及答案

c语言上机试题库及答案

c语言上机试题库及答案1. 题目一:字符串翻转要求:编写一个C语言程序,实现字符串的翻转功能。

```c#include <stdio.h>#include <string.h>void reverseString(char *str) {int len = strlen(str);char temp;for(int i = 0; i < len / 2; i++) {temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[100];printf("Enter a string: ");scanf("%s", str);reverseString(str);printf("Reversed string: %s\n", str);return 0;}```2. 题目二:计算数组中的最大值要求:编写一个C语言程序,计算并输出一个整数数组中的最大值。

```c#include <stdio.h>int findMax(int arr[], int size) {int max = arr[0];for(int i = 1; i < size; i++) {if(arr[i] > max) {max = arr[i];}}return max;}int main() {int arr[] = {10, 45, 23, 67, 89, 34};int size = sizeof(arr) / sizeof(arr[0]);int max = findMax(arr, size);printf("The maximum value in the array is: %d\n", max); return 0;}```3. 题目三:实现二分查找要求:编写一个C语言程序,实现一个二分查找算法,查找一个有序数组中是否存在目标值。

大一C语言上机实验试题及答案

大一C语言上机实验试题及答案

大一C语言上机实验试题及答案一、选择题(每题2分,共10分)1. C语言中,用来定义变量的关键字是()。

A. varB. defineC. intD. let答案:C2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. =D. :答案:D3. 在C语言中,用于定义一个函数的关键字是()。

A. functionB. defC. intD. void答案:A4. 下列哪个选项是正确的C语言数组定义?A. int arr[] = {1, 2, 3};B. int arr[3] = {1, 2, 3};C. int arr[3] = {1, 2};D. int arr = {1, 2, 3};答案:B5. C语言中,用于输出字符串的函数是()。

A. printfB. printC. coutD. printf_s答案:A二、填空题(每题3分,共15分)1. 在C语言中,用于声明一个整型变量的关键字是____。

答案:int2. 以下代码段的输出结果是____。

```c#include <stdio.h>int main() {int a = 10;printf("%d", a++);return 0;}```答案:103. 在C语言中,用于声明一个浮点型变量的关键字是____。

答案:float4. 若有以下代码段:```cint x = 5, y = 3;int result = x / y;```则变量result的值是____。

答案:15. 在C语言中,用于声明一个字符型变量的关键字是____。

答案:char三、编程题(每题10分,共20分)1. 编写一个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;}```2. 编写一个C语言程序,实现输入一个字符串,然后输出其反转后的字符串。

C语言正式上机题

C语言正式上机题

C语⾔正式上机题C语⾔上机实验题⽬1 打印图形1.输⼊n值,打印下列图形:**************** 当n = 4时2.输⼊n值,打印下列⾼和上底均为n 的等腰梯形:**************************** 当n = 4时3.输⼊n值,打印下列⾼和下底均为n 的等腰梯形:**************************** 当n = 4时4.输⼊n值,打印下列⾼和上底均为n的等腰空⼼梯形:****** ** ** ************** 当n = 5时5.输⼊n值,打印下列⾼和下底均为n的等腰空⼼梯形:************** ** ** ****** 当n=5时6.编写程序打印下列上三⾓形式的乘法九九表:1 2 3 4 5 6 7 8 9 ——————————————————1 2 3 4 5 6 7 8 94 6 8 10 12 14 16 1825 30 35 40 4536 42 48 5449 56 6364 72817.编写程序打印下列乘法九九表:1 2 3 4 5 6 7 8 9 ——————————————————8164 7249 56 6336 42 48 5425 30 35 40 4516 20 24 28 32 369 12 15 18 21 24 274 6 8 10 12 14 16 181 2 3 4 5 6 7 8 98.编程打印数字⾦字塔:11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 5 6 5 4 3 2 11 2 3 4 5 6 7 6 5 4 3 2 11 2 3 4 5 6 7 8 7 6 5 4 3 2 11 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 9.编程打印数字⾦字塔:1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 11 2 3 4 5 6 7 8 7 6 5 4 3 2 11 2 3 4 5 6 7 6 5 4 3 2 11 2 3 4 5 6 5 4 3 2 11 2 3 4 5 4 3 2 11 2 3 4 3 2 11 2 3 2 110.输⼊n值,打印边长为n的空⼼正六边形:******* ** ** ** ** ** ** ** ** ******* 当n = 6时11.编写程序输出下⾯的图形,要求输⼊顶⾏字符和图形的⾼。

郑州大学c语言考试上机真题 (1)

郑州大学c语言考试上机真题 (1)
A、x=10, y=20, z=30
B、x=20, y=30, z=20
C、x=20, y=30, z=10
D、x=20, y=30, z=30
25、执行程序片段:int a=5,b=0,c=0;if(a=b+c) printf("***\n");e1se printf("$$$\n");后,( )。(1分)
A、只能是0或1
B、只能是0或非0正数
C、只能是整型或字符型数据
D、可以是任何类型的数据
32、在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。(1分)
A、整型常量
B、整型表达式
C、整型常量或整型表达式
D、任何类型的表达式
33、以下能对一维数组a进行正确初始化的语句是( )。(1分)
A、int a[10]=(0,0,0,0,0)
B、字符个数多的字符串比字符个数少的字符串大
C、字符串" STOP"(注:有一个空格)与"STOP"相等
D、字符串"That"小于字符串"The"
36、判断字符串a和b是否相等,应当使用( )。(1分)
A、if(a= =b)
B、if(a=b)
C、if(strcpy(a,b))
D、if(strcmp(a,b))
窗体顶端
窗体底端
一、单项选择题(50道小题,共50分)
1、一个C语言程序是由( )。(1分)
A、一个主程序和若干子程序组成
B、函数组成
C、若干过程组成
D、若干子程序组成
2、C语言规定:在一个源程序中,main函数的位置( )。(1分)
A、必须在最开始

c语言上机题库 (1)

c语言上机题库 (1)

1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。

2、编写程序求无理数e的值并输出。

计算公式为:e=1+1/1!+1/2!+1/3!+......+1/n!当1/n!<0.000001时e=2.718282。

3、求一批数中最大值和最小值的积。

4、某一正数的值保留2位小数,对第三位进行四舍五入。

5、从键盘上输入任意实数x,求出其所对应的函数值。

z=(x-4)的二次幂(x>4)z=x的八次幂(x>-4)z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他)6、求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。

例如:输入的数组为:1 2 34 15 612 18 910 11 2求出的最大数为18,行坐标为2,列坐标为1。

7、求一个n位自然数的各位数字的积。

(n 是小于10的自然数)8、计算n门课程的平均值,计算结果作为函数值返回。

例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。

9、求一批数中小于平均值的数的个数。

10、编写函数判断一个整数m的各位数字之和能否被7整除,可以被7整除则返回1,否则返回0。

调用该函数找出100~200之间满足条件的所有数。

11、请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指一维数组中。

二维数组中的数已在主函数中赋予。

12、编写函数fun用比较法对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果。

13、编写main程序调用函数fact求解从m个元素选n 个元素的组合数的个数。

计算公式是:组合数=m!/(n!.(m-n)!)。

要求:m不能小于n,否则应有容错处理。

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

1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。

2、编写程序求无理数e的值并输出。

计算公式为:e=1+1/1!+1/2!+1/3!+......+1/n!当1/n!<0.000001时e=2.718282。

3、求一批数中最大值和最小值的积。

4、某一正数的值保留2位小数,对第三位进行四舍五入。

5、从键盘上输入任意实数x,求出其所对应的函数值。

z=(x-4)的二次幂(x>4)z=x的八次幂(x>-4)z=z=4/(x*(x+1))(x>-10)z=|x|+20(其他)6、求出N×M整型数组的最大元素及其所在的行坐标及列坐标(如果最大元素不唯一,选择位置在最前面的一个)。

例如:输入的数组为:1 2 34 15 612 18 910 11 2求出的最大数为18,行坐标为2,列坐标为1。

7、求一个n位自然数的各位数字的积。

(n 是小于10的自然数)8、计算n门课程的平均值,计算结果作为函数值返回。

例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。

9、求一批数中小于平均值的数的个数。

10、编写函数判断一个整数m的各位数字之和能否被7整除,可以被7整除则返回1,否则返回0。

调用该函数找出100~200之间满足条件的所有数。

11、请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指一维数组中。

二维数组中的数已在主函数中赋予。

12、编写函数fun用比较法对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果。

13、编写main程序调用函数fact求解从m个元素选n 个元素的组合数的个数。

计算公式是:组合数=m!/(n!.(m-n)!)。

要求:m不能小于n,否则应有容错处理。

说明:函数fact(x)的功能是求x!。

14、找出一批正整数中的最大的偶数。

15、实现两个整数的交换。

例如:给a和b分别输入:60和65,输入为:a=65 b=6016、将字符串中的小写字母转换为对应的大写字母,其它字符不变。

17、求一个四位数的各位数字的立方和。

18、求一组数中大于平均值的数的个数。

例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。

19、对任意输入的x,用下式计算并输出y 的值。

5 x<10y= 0 x=10-5 x>1020、求给定正整数m以内的素数之和。

例如:当m=20时,函数值为77。

21、判断整数x是否是同构数。

若是同构数,函数返回1;否则返回0。

x的值由主函数从键盘读入,要求不大于100。

22、用函数求N个[10,60]上的整数中能被5整除的最大的数,存在则返回这个最大值,如果不存在则返回0。

23、编写函数fun求sum=d+dd+ddd+……+dd...d(n个d),其中d为1-9的数字。

24、编写函数fun将一个数组中的值按逆序存放,并在main()函数中输出。

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

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

25、对长度为8个字符的字符串,将8个字符按降序排列。

例如:原来的字符串为CEAedcab,排序后输出为edcbaECA26、根据整型参数n,计算如图公式的值。

27、键盘上输入一个3行3列矩阵的各个元素的值(为整数)然后输出主对角线元素的积,并在fun()函数中输出。

28、编写函数fun(str,i,n),从字符串str中删除第i个字符开始的连续n个字符(注意:str[0]代表字符串的第一个字符)。

29、统计出若干个学生的平均成绩,最高分以及得最高分的人数。

例如:输入10名学生的成绩分别为92,87,68,56,92,84,67,75,92,66,则输出平均成绩为77.9,最高分为92,得最高分的人数为3人。

30、编写程序,实现矩阵(3行3列)的转置(即行列互换)31、用函数实现字符串的复制, 不允许用strcpy()函数。

32、从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出。

请编写fun函数。

33、用do-while语句求1~100的累计和34、编写函数求1~100中奇数的平方和。

结果为16665035、计算并输出给定整数的所有因子之积(包括自身)。

规定这个整数的值不大于50。

36、求1到100之间的偶数之积37、编写函数求表达式的和(n的值由主函数输入)。

1-1/2+1/3-1/4+......+1/m38、产生20个[30,120]上的随机整数放入二维数组a[5][4]中, 求其中的最小值。

39、能计算从1开始到n的自然数的和,n由键盘输入,并在main()函数中输出。

40、用函数求N个[10,60]上的整数中能被5整除的最大的数,如存在则返回这个最大值,如果不存在则返回0。

41、计算出k以内最大的10个能被13或17整除的自然数之和。

(k〈3000)42、判断一个整数w的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。

43、从低位开始取出长整型变量s奇数位上的数,依次构成一个新数放在t中。

例如:当s中的数为:7654321时,t中的数为:7531。

44、求大于lim(lim小于100的整数)并且小于100的所有素数并放在aa数组中,该函数返回所求出素数的个数。

45、求一批数中最大值和最小值的差46、求出菲波那契数列的前一项与后一项之比的极限的近似值。

例如:当误差为0.0001时,函数值为0.618056。

47、将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:将a数的十位和个位数依次放在c 数的个位和百位上, b数的十位和个位数依次放在c数的十位和千位上。

例如:当a=45,b=12,调用该函数后,c=2514。

48、编写函数判断一个整数m的各位数字之和能否被7整除,可以被7整除则返回1,否则返回0。

调用该函数找出100~200之间满足条件的所有数。

49、判断m是否为素数50、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。

51、求出二维数组周边元素之和,作为函数值返回。

二维数组的值在主函数中赋予。

52、编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序。

53、编写函数判断一个整数能否同时被3和5整除,若能则返回值为1,否则为0。

调用该函数求出15~300之间能同时被3和5整除的数的个数。

54、编写函数fun,求任一整数m的n次方55、从键盘输入一个大于3的整数,调用函数fun判断其是否素数,然后在main函数中输出相应的结论信息。

例如:7是素数,8不是素数。

请编写fun函数。

素数是仅能被1和自身整除的数56、用辗转相除法求两个整数的最大公约数57、求一批数中小于平均值的数的个数58、编写函数用选择排序法对数组中的数据进行从小到大的排序。

59、从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数,并在main函数中输出。

60、将从键盘上输入的每个单词的第一个字母转换为大写字母,输入时各单词必须用空格隔开,用’.’结束输入61、编写函数fun求1!+2!+3!+ ……+n!的和,在main 函数中由键盘输入n值,并输出运算结果。

请编写fun函数。

例如:若n值为5,则结果为15362、根据整型形参m,计算如下公式的值:y=sin(m)*10。

例如:若m=9,则应输出:4.12118563、求一个大于10的n位整数的后n-1位的数,并作为函数值返回。

64、求给定正整数m以内的素数之和。

例如:当m=20时,函数值为77。

65、求给定正整数n以内的素数之积。

(n<28)66、求一个给定字符串中的字母的个数。

67、求一个给定字符串中的字母的个数。

68、编写程序, 求矩阵(3行3列)与2的乘积例如:输入下面的矩阵:100 200 300400 500 600700 800 900程序输出:200 400 600800 1000 12001400 1600 180069、编写函数fun用比较法对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果。

70、编写函数fun计算下列分段函数的值:x^2+x+6 x<0且x≠-3f(x)= x^2-5x+6 0≤x<10且x≠2及x≠3x^2-x-1 其它71、用函数将第2个串连接到第1个串之后,不允许使用strcat函数。

72、求一组数中大于平均值的数的个数。

例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。

73、编写函数用冒泡排序法对数组中的数据进行从小到大的排序。

74、将两个两位数的正整数a、b合并形成一个整数放在c中。

合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的个位和百位上。

例如:当a=45,b=12。

调用该函数后,c=4251。

75、对某一正数的值保留2位小数,并对第三位进行四舍五入。

76、求出菲波那契数列的前一项与后一项之比的极限的近似值。

例如:当误差为0.0001时,函数值为0.618056。

79、找出一个大于给定整数且紧随这个整数的素数,并作为函数值返回。

80、用函数求fibonacci数列前n项的和。

说明:fibonacci数列为数列的第一项值为1,第二项值也为1,从第三项开始,每一项均为其前面相邻两项和。

例如:当n=28时,运行结果:83203981、删除所有值为y的元素。

数组元素中的值和y的值由主函数通过键盘输入。

相关文档
最新文档