C语言上机作业题及答案

合集下载

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语言程序设计上机题目与参考答案

C语言程序设计上机题目与参考答案

C语言程序设计题目与参考答案(1——9章)1.(课本第84页第7题)设圆半径r=1.5,圆柱的高h=3,求圆周长.圆面积.圆球表面积.圆球体积.圆柱体积。

用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。

请编程序:#include <stdio.h>int main()#define p 3.1416int main(){double r,h,l,s,S,v,V;scanf("%lf %lf",&r,&h);l=2*p*r;s=p*r*r;S=4*p*r*r;v=4/3*p*r*r*r;V=p*r*r*h;printf("l=%7.2f\ns=%7.2f\nS=%7.2f\nv=%7.2f\nV=%7.2f\n",l,s,S,v,V);return 0;}2.把560分钟化成小时和分钟。

#include<stdio.h>main(){int t,h,m;t=560;h=t/60;m=t%60;printf("560分钟等于%d小时%d分钟\n",h,m);}3.第112页第6题)有一个函数y=x(x<1),y=2x-1(1<=x<10),y=3x-11(x>=1写程序,输入x的值,输出y相应的值。

#include<stdio.h>int main(){float x,y;scanf("%f",&x);if(x<1) y=x;elseif(x<10) y=2*x-1;else y=3*x-11;printf("%f\n",y);}4.(第113页第11题)输出4个整数,要求按由小到大的顺序输出。

#include<stdio.h>int main(){float a,b,c,d,t;scanf("%f,%f,%f,%f",&a,&b,&c,&d);if(a>b) {t=a;a=b;b=t;}if(a>c) {t=a;a=c;c=t;}if(a>d) {t=a;a=d;d=t;}if(b>c) {t=b;b=c;c=t;}if(b>d) {t=b;b=d;d=t;}if(c>d) {t=c;c=d;d=t;}printf("%f,%f,%f,%f",a,b,c,d);}5.(第113页第12题)有4个圆塔,圆心分别为(2,2),(-2,2),(-2,-2),(2,-2),圆半径为1,这四个塔的高度为10米,塔以外无建筑物。

C语言程序设计上机考试试题和参考答案

C语言程序设计上机考试试题和参考答案
char str1[80], str2[80]; int m, n;
printf("Input str1:\n"); gets(str1); //1
printf("Input m and n:\n"); scanf("%d%d", &m, &n); //1
mystrcpy(str1, str2, m, n); //2 puts(str2); }
1、请按行读入数据 2、请按给定的函数原型编写程序,否则即使程序运行结果正确,也不给分。 参考答案
#include<stdio.h>
void Input(int a[][10], int n);
int Compute(int a[][10], int n);
main()
{
int n, a[10][10]; int sum;
//2
{
int i, flag = 0, sum = 0; //1
for (i = 1; i <= n / 2; i++) //1
{
if (n % i == 0)
//1
{
sum = sum + i; //1
}
}
if (sum == n)
//1
{
flag = 1;
}
return flag;
//1
} 3.(15 分)请按给定要求编程计算方阵的主对角线之和。其中方阵的输入请在 Input 函数实现,计算主对角之和请在 Compute 函数实现,计算结果请在主函数打印, 且给定的方阵最大为 10x10,方阵实际大小请在主函数读入。Input 函数和 Compute 函数的函数原型如下:

c语言上机作业及答案

c语言上机作业及答案

c语言上机作业及答案4.11 编程计算1×2×3+3×4×5+…+99×100×101的值。

#includemain(){long i ;long term, sum = 0;for (i = 1; i <= 99; i = i + 2){term = i * (i + 1) * (i + 2);sum = sum + term;}printf("sum=%ld",sum);}4.12 编程计算1!+2!+3!+4!+…+10!的值。

#includemain(){long term = 1,sum = 0;int i;for (i = 1; i <= 10; i++){term = term * i;sum = sum + term;}printf("1!+2!+...+10! = %ld \n", sum);}#includemain(){long term ,sum = 0;int i, j;for (i = 1; i <= 10; i++){term = 1;for (j = 1; j <= i; j++){term = term * j;}sum = sum + term;}printf("1!+2!+…+10! = %ld \n", sum);}4.13 编程计算a+aa+aaa+…+aa…a(n个a)的值,n和a的值由键盘输入。

#includemain(){long term = 0,sum = 0;int a , i, n;printf("Input a,n: ");scanf("%d,%d", &a, &n); /*输入a,n的值*/for (i = 1; i <= n; i++){term = term * 10 + a; /*求出累加项*/sum = sum + term; /*进行累加*/}printf("sum=%ld\n",sum);}4.14 利用=×…的前100项之积计算π的值。

c语言上机考试训练题库及答案

c语言上机考试训练题库及答案
2000≤s<3000 10%折扣
3000≤s 15%折扣
设每公里每吨货物的基本运费为p,货物重为w,距离为s,折扣为d,则总运费f的计算公式为:f=p*w*s*(1-d),请按照上述标准利用switch语句编写程序计算运费,并画出程序NS图。
#include <stdio.h>
int main()
{
if(i%2==0&&i%3==0&&i%7==0)
printf("%d\n",i);
}
}
26.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
#include<stdio.h>
main()
{
char ch;
int z=0,k=0,s=0,q=0;
while((ch=getchar())!='\n')
#include<stdio.h>
void main()
{int i,sum=0;
for(i=100;i<=996;i+=4)
if(i/10%10!=4)
sum+=i;
printf("和为:%d",sum);
}
15.输入一个字符串,统计该字符串的长度以及字母a出现的次数。
#include <stdio.h>
void main()
{int i,j=0;
char ch[ ]=" ";
printf("please input some characters\n");
gets(ch);
for (i=0;ch[i];i++)

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说:他乱说。

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

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

VC语言上机试题及答案

VC语言上机试题及答案

C 语言上机考试题20套(试题)C 语言上机考试题(第一套)1.编写函数fun ,它的功能是:计算并输出下列级数和:)1(1321211+⨯++⨯+⨯=n n S 例如,当n = 10时,函数值为:0.909091注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入你编写的若干语句。

试题程序:#include <conio.h>#include <stdio.h>double fun( int n ){…………}main() /*主函数 */{ clrscr();printf(″%f\n ″, fun(10));}2.在[10000, 20000]范围内考察个位数字是7的素数, 问:(1) 这样的素数有多少个?(2) 其中最大的一个等于几?3. 编写程序,从键盘输入一年份,判断该年份是否为闰年。

C 语言上机考试题(第二套)1.编写函数fun ,它的功能是:计算并输出下列级数和:)1(1321211+⨯++⨯+⨯=n n S 例如,当n = 10时,函数值为:0.909091注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在函数 fun 的花括号中填入你编写的若干语句。

试题程序:#include <conio.h>#include <stdio.h>double fun( int n ){…………}main() /*主函数 */{ clrscr();printf(″%f\n″, fun(10));}2.回文数是指正读和反读都一样的自然数。

例如,8, 121, 5445这三个数都是回文数。

求:(1) [1,1000]之内既是回文数,又是素数的最大整数。

(2) [1,1000]以内既是回文数,又是素数的整数有多少个。

3. 编写程序,能对输入一行字符,统计其中分别有多少个单词和空格。

c语言上机练习题及答案

c语言上机练习题及答案

c语言上机练习题及答案1.从矩形的长,宽,输出面积(长为6.5,宽为4.5)#includemain(){float length,width,area;scanf("%f%f",&length,&width);area=length*width;printf("area=%f\n",area);}2.定义符号常量,从键盘输入圆的半径3.5,求圆的周长和面积#define PI 3.14#includemain(){float r,c,area;scanf("%f",&r);c=2*PI*r;area=PI*r*r;printf("c=%f,area=%f\n",c,area);}3.练习上机手册P10 3,4,5题,看看输出结果,并思考为什么4.从键盘输入一个整数,输出其绝对值(采用两个if语句实现)#includemain(){int i;scanf("%d",&i);if(i>=0)printf("i=%d\n",i);if(i<0)printf("i=%d\n",-i);}5.从键盘输入一个整数,输出其绝对值(采用if——else语句实现)#includemain(){int i;scanf("%d",&i);if(i>=0)printf("i=%d\n",i);elseprintf("i=%d\n",-i);}6.从键盘输入年份,判断是不是闰年,如果是,输出是闰年(上机考试重点) #includemain(){int year;scanf("%d",&year);if((year%4==0&&year%100!=0)||year%400==0)printf("%d是闰年",year);elseprintf("%d不是闰年",year);}7.输入学生的高考成绩,成绩>=560,输出读一本,如果>=520,输出读二本,如果>=480输出读三本,否则输出读专科#includemain(){int score;scanf("%d",&score);if(i>=560)printf("考得很好,你可以读一本学校了\n");else if(i>=520)printf("考得还不错,你可以读二本学校\n");else if(i>=480)printf("你只能读三本学校\n");elseprintf("可以读专科学校,继续努力哦!\n");}8.从键盘输入一个数,判断是否是素数(上机考试重点,必须掌握)#includemain(){int n,i,flag=1;scanf("%d",&n);for(i=2;i<n;i++)< p="">{if(n%i==0){flag=0;break;}}if(flag==1)printf("%d是素数\n",n);elseprintf("%d不是素数\n",n);}9.求1+1/3+1/5+…+1/99的和(上机考试重点,必须掌握)#includemain(){float s=0;int i=1;while(i<=99){s=s+1.0/i;i=i+2;}printf("s=%f",s);}10.求100—200之间所有能被3整除,但不能被7整除的数,并输出这些数#includemain(){int i;for(i=100;i<=200;i++){if(i%3==0&&i%7!=0)printf("%d,",i);}}</n;i++)<>。

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

实验一:1、已知华氏温度,根据转换公式计算相应的摄氏温度。

摄氏温度= 5*(华氏温度-32)/92.任意输入一个有五位数字的正整数,逆序输出每一数位上的数字。

如:输入 12345输出 5 4 3 2 1#include"stdio.h"main(){double t,T;printf ("已知华氏温度,根据转换公式计算相应的摄氏温度");scanf ("%lf",&t);T=(5*(t-32)/9);printf ("摄氏温度=%lf",T);}#include"stdio.h"main(){int value,a,b,c,d,e,m,n,h;printf ("任意输入一个有五位数字的正整数,逆序输出每一数位上的数字"); scanf ("%d",&value);a=value/10000; m=value%10000;b=m/1000; n=m%1000;c=n/100; h=n%100;d=h/10;e=h%10;printf ("%d%d%d%d%d",e,d,c,b,a);}实验二:1.一个成年人的身高与其父母的身高密切相关,根据以下人体标准身高预测公式计算自己或某个同学的身高,并跟实际身高比较,给出结论是否符合该公式(误差在3厘米范围内即视为相符)。

男性身高=(父亲身高+母亲身高)×1.08÷2(厘米)女性身高=(父亲身高×0.923+母亲身高)÷2(厘米)2.从键盘上输入税前收入,根据以下公式及规则,计算个人所得税税额并输出。

应纳个人所得税税额=(税前收入—起征点额度)*适用税率—速算扣除数其中,起征点额度是3500元,其他如下:应纳税所得额税率速算扣除数不超过1500元的部分 3% 0超过1500元至4500元的部分 10% 105超过4500元至9000元的部分 20% 555超过9000元至35000元的部分 25% 1005超过35000元至55000元的部分 30% 2755超过55000元至80000元的部分 35% 5505超过80000的部分 45% 13505如:某人月收入5000元,则应纳个人所得税税额为(5000-3500)* 10% - 105 = 45元。

#include<stdio.h>#include<math.h>main(){float A,a,H,h,b;printf("父亲身高(厘米)\n");scanf("%f",&A);printf("母亲身高(厘米)\n");scanf("%f",&a);printf("孩子实际身高(厘米)\n");scanf("%f",&H);printf("请选择孩子性别:女=0,男=1\n");scanf("%f",&b);if(b)h=(A+a)*1.08/2;elseh=(A*0.923+a)/2;if(fabs(H-h)<=3)printf("实际身高符合该公式\n");elseprintf("实际身高不符合该公式\n");printf("孩子预测身高(厘米)%f",h);}#include<stdio.h>main(){float s,a,t;printf("应纳个人所得税税额=(税前收入-起征点额度)*适用税率-速算扣除数\n");printf("起征点额度=3500元\n");printf("税前收入s=");scanf("%f",&s);if(s<=3500)t=0;else{ a=s-3500;if(a<=1500)t=a*0.03-0;elseif(a<=4500)t=a*0.1-105;elseif(a<=9000)t=a*0.2-555;elseif(a<=35000)t=a*0.25-1005;elseif(a<=55000)t=a*0.3-2755;elseif(a<=80000)t=a*0.35-5505;elset=a*0.45-13505;}printf("应纳个人所得税税额=%f\n",t);}实验三:1.编程解决鸡兔同笼问题(无解时给出输入错误提示)。

描述如下:一个笼子里关了鸡和兔子,已知鸡和兔子的总数a以及脚的总数b,问笼子里面有多少只鸡,有多少只兔子。

2.设计并编程实现一个猜数游戏:由计算机随机产生一个1~100之间的整数请人猜,如果猜对了,则在屏幕上输出猜了多少次才猜对此数,结束游戏;否则计算机给出提示,说明所猜的数是太大还是太小,最多可以猜10次,如果猜10次仍未猜中的话,则给出正确答案并结束游戏。

#include"stdio.h"main(){int a,b,i,j;printf("一个笼子里关了鸡和兔子,已知鸡和兔子的总数a以及脚的总数b,求鸡兔各几只\n");printf("a=");scanf("%d",&a);printf("b=");scanf("%d",&b);for(i=0;i<=a;i++){ for(j=0;j<=a;j++){if(i+j==a&&i*2+j*4==b)printf("鸡的只数=%d\n兔子的只数=%d\n",i,j);if(i+j==a&&i*2+j*4==b) break;}if(i+j==a&&i*2+j*4==b) break;}if(i+j!=a&&i*2+j*4!=b)printf("输入错误\n");}#include"stdio.h"#include"stdlib.h"#include"time.h"main(){int a,b,i;srand(time(0));a=rand()%100+1;for(i=1;i<=10;i++){ printf("请猜一个1-100的数字b=");scanf("%d",&b);if(b==a){printf("猜了的次数=%d\n",i);break;}if(b>a)printf("猜的数太大\n");if(b<a)printf("猜的数太小\n");}printf("正确答案是%d\n",a);}实验四:1.从键盘输入一个班(不超过30人)学生某门课的成绩,当输入成绩为负值时,则输入结束,统计并输出不及格人数并打印不及格学生的成绩,按成绩高低排序,输出该班最高分及最低分。

2.从键盘上输入一个字符串存放在一个字符数组中,按照以下规则对其加密:其中所有的大写英文字母加3,小写英文字母减4,其它字符不变,将加密后的字符串存放到另一个字符数组中,输出原字符串和加密后的字符串。

如:输入Microsoft Visual C++输出Pe_nkokbp Yeoq]h F++#include "stdio.h"#define N 30main(){int a[N],i=0,j,k,m=0,t;do{printf("输入学生成绩a[%d]=",i);scanf("%d",&a[i]);i++;}while(a[i-1]>=0);k=i-2;for(i=0;i<k;i++){ for(j=i+1;j<k+1;j++)if(a[i]>a[j]){t=a[i];a[i]=a[j];a[j]=t;}if(a[i]<60){printf("不及格成绩a[%d]=%d\n",i,a[i]);m++;}}printf("不及格人数m=%d\n",m);printf("该班最高成绩a[%d]=%d\n",k,a[k]);printf("该班最低成绩a[0]=%d\n",a[0]);}#include"stdio.h"#include"string.h"#define N 50void main(){char strl[2][N];char c;int i=0,k;while((c=getch())!=13) //回车键停止输入{strl[0][i]=c;putch(c);i++;}strl[0][i]='\0';k=i;for(i=0;i<k;i++){ if(strl[0][i]>='A'&&strl[0][i]<='Z')strl[1][i]=strl[0][i]+3;else if(strl[0][i]>='a'&&strl[0][i]<='z')strl[1][i]=strl[0][i]-4;else{strl[1][i]=strl[0][i];}strl[1][k]='\0';}printf("\n");printf("%s\n",strl[1]);}实验五:1.编写求和函数和求平均值函数。

在主函数中,输入一组10个整数,存储在一个数组中,调用求和函数求出这10个整数的和值,调用求平均值函数求出这10个整数的平均值,输出计算结果。

2.编写函数,统计字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串并输出统计结果。

#include <stdio.h>int sum(int a[]);float aver(int a[]);main(){int i,a[10];for(i=0;i<10;i++){ printf("请输入整数a[%d]=",i);scanf("%d",&a[i]);}printf("这10个整数的和为%d\n",sum(a));printf("这10个整数的平均数为%.3f\n",aver(a)); }int sum(int a[]){ int i,sum=0;for(i=0;i<10;i++)sum=sum+a[i];return sum;}float aver(int a[]){ int i,s=0;float aver;for(i=0;i<10;i++)s=s+a[i];aver=s/10.0;return aver;}#include<stdio.h>#include<string.h>void count(char str[]);int chars = 0,nums = 0,spaces = 0,others = 0;main(){ char s[100];printf("请输入字符串s[100]:");gets(s);count(s);printf("字母的个数为%d\n",chars);printf("数字的个数为%d\n",nums);printf("空格的个数为%d\n",spaces);printf("其他字符的个数为%d\n",others);}void count(char str[]){ int i,length;length = strlen(str);for (i=0;i<=length-1;i++){ if((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z'))chars++;else if((str[i]>='0')&&(str[i]<='9'))nums++;else if(str[i]==' ')spaces++;else others++;}}。

相关文档
最新文档