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上机考试题库及答案在计算机二级C语言上机考试中,考生需要掌握C语言的基本语法、数据结构、算法设计等知识。

以下是一套模拟题库及答案,供考生参考和练习。

1. 题目:以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B解析:在C语言中,标识符可以由字母、数字和下划线组成,且不能以数字开头。

因此,只有选项B中的"variable2"是合法的标识符。

2. 题目:以下哪个选项是C语言中的整型常量?A. 0x1AB. 1.2E3C. 0.5D. 1.2答案:A解析:整型常量可以是十进制、八进制或十六进制的整数。

选项A中的"0x1A"是十六进制的整型常量,而选项B、C和D都是浮点型常量。

3. 题目:以下哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'H' "ello" 'W' "orld"答案:A解析:字符串字面量是由双引号括起来的字符序列。

选项A中的"Hello World"是一个合法的字符串字面量。

选项B是字符字面量,选项C和D的组合方式在C语言中不合法。

4. 题目:以下哪个选项是C语言中的合法数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int b[] = {1, 2, 3, 4, 5};C. int c[5] = {1, 2, 3};D. int d[];答案:A解析:在C语言中,数组的声明需要指定数组的大小,除非数组作为函数的参数。

选项A正确地声明了一个大小为5的整型数组,并初始化了它的元素。

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语言上机实验 答案

C语言上机实验 答案

C语言上机实验答案c语言上机实验答案实验一上机操作初步(2学时)一、实验方式:一人一机二、实验目的:1、熟悉vc++语言的上机环境及上机操作过程。

2、了解如何编辑、编译、连接和运行一个c程序。

3、初步了解c程序的特点。

三、实验内容:表明:前三为题必搞题目,后两为题Suippes题目。

1、输出入下信息:(实验指导书p79)*************************verygood*************************2、排序两个整数的和与内积。

(实验指导书p81)3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。

(书p3)4、在屏幕上表明一个文字菜单模样的图案:=================================1输入数据2修改数据3查询数据4打印数据=================================5、从键盘上输入两个整数,交换这两个整数。

四、实验步骤与过程:五、实验调试记录:六、参考答案:1、#includevoidmain(){printf(“********************\\n”);printf(“verygood\\n”);printf(“********************\\n”);}2、#includevoidmain(){inta,b,c,d;printf(“pleaseentera,b:”);scanf(“%d,%d”,&a,&b);c=a+b;d=a*b;printf(“%d+%d=%d\\n”,a,b,c);printf(“%d*%d=%d\\n”,a,b,d);}3、#include#includevoidmain(){doublex,s;printf(“pleaseinputvalueofx:”);scanf(“%lf”,&x);s=cos(x);printf(“cos(%lf)=%lf\\n”,x,s);}4、#includevoidmain(){printf(“==================================\\n”);printf(“1输出数据2修正数据\\n”);printf(“3查阅数据4列印数据\\n”);printf(“===================================\\n”);}5、#includevoidmain(){intx,y,t;printf(“pleaseenterxandy:”);scanf(“%d%d”,&x,&y);t=x;x=y;y=t;printf(“afterswap:x=%d,y=%d\\n”,x,y);}实验二直观的c程序设计(4学时)一、实验方式:一人一机二、实验目的:1、掌控c语言的数据类型。

c语言上机题答案大全

c语言上机题答案大全

4.1 温度转换背景:经常出国旅行的驴友都知道,需要时时了解当地的气温状况,但不少国家采用了不同的温度计量单位:有些使用华氏温度标准(F),有些使用摄氏温度(C)。

现在,请你根据温度转换公式设计一个温度转换程序,可以进行温度转换。

如果输入摄氏温度,显示转换的华氏温度;如果输入华氏温度,显示转换的摄氏温度。

温度转换的公式为:F=(C×9/5)+32 ;C=(F-32)×5/9 ;式中F--华氏温度,C--摄氏温度。

输入:第一个数据(1 或 2 )确定转换的类型:华氏转摄氏(1);摄氏转华氏(2);第二个数据是相应需要转换的温度值。

输出:相应的转换后的温度值(保留小数点后 2 位)。

#include <stdio.h>void main(){int lx;double f,c;scanf("%d",&lx);if(lx==1){scanf("%lf",&f);c=(f-32)*5/9;printf("The Centigrade is %.2f\n",c);}else{scanf("%lf",&c);f=(c*9/5)+32;printf("The Fahrenheit is %.2f\n",f);}}4.2 分段函数有一分段函数,y=f(x)。

当x小于6时,y=x-12;当x大于等于6且小于15时,y=3x-1;当x大于等于15时,y=5x+9.从键盘上输入一个整数x,输出对应的y值。

#include <stdio.h>void main(){int x,y;scanf("%d",&x);if(x<6)y=x-12;else if(x<15)y=3*x-1;elsey=5*x+9;printf("%d\n",y);return 0;}4.3 整数位数判断输入一个不多于5位的正整数,要求: (1)求它是几位数;(2)逆序打印出各位数字。

C语言上机练习参考标准答案

C语言上机练习参考标准答案

C语言上机练习参考标准答案C语言上机练习参考答案————————————————————————————————作者:————————————————————————————————日期:第1章C语言概述1-1编写程序,在屏幕上显示一个如下输出:---------------------------------Programming in C is fun!I love C language.---------------------------------Program#includemain(){ printf("---------------------------------\n");printf("Programming in C is fun!\n");printf("I love C language.\n");printf("---------------------------------\n");}1-2编写程序,在屏幕上显示一个如下图案:* * * ** * ** **Program (1)#includemain(){ printf("* * * *\n");printf(" * * *\n");printf(" * *\n");printf(" *\n ");}Program (2)#includemain(){ printf("%c%4c%4c%4c\n", '*', '*', '*', '*');printf("%3c%4c%4c\n", '*', '*', '*');printf("%5c%4c\n", '*', '*');printf("%7c\n ", '*');}1-3已知某个圆的半径,编写一个程序,用来计算并显示面积。

c语言上机100套答案

c语言上机100套答案

第一套给定程序的功能是调用fun函数建立班级通讯录。

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

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

答案: 一、1、STYPE 2、FILE 3、fp二、1、把for(i=0;i<s1;i++)改成for(i=0;i<sl;i++)注意:就是s 后的原来是数字1,应该改成字母l2、把t[sl]=‟\0‟改成t[2*sl]=‟\0‟第二套给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用—1(独立一行)作为字符串输入结束的标志。

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

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

答案:一、1、*fw 2、str 3、str二、1、把void fun(long s,long t)改为void fun(long s,long* t)2、把sl=sl*100改为sl=sl*10第三套给定程序中,函数fun的功能是:将自然数1~10以及它们的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。

答案:一、1、fp 2、fclose(fp)3、fname二、1、把for(i=j+1;i<n-1;i++)改成for(i=j+1;i<n;i++)2、把t=i;改成p=i;第四套给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。

在复制的过程中,把复制的内容输出到终端屏幕。

主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。

答案:一、1、”r”2、fs 3、ft二、1、把if (d%2=0)改为if(d%2==0)2、把s\=10改为s/=10第五套给定程序中已建立一个带有头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。

C语言上机实验完整答案

C语言上机实验完整答案

实验 2
程序代码 #include<stdio.h> void main () {char a;int i;
for (i=1;;i++) {
a=getchar(); if(a=='\n') break; switch(a) {case '0':printf(" zero ");break;
case '1':printf(" one ");break; case '2':printf(" two ");break; case '3':printf(" three ");break; case '4':printf(" four ");break; case '5':printf(" five ");break; case '6':printf(" six ");break; case '7':printf(" seven ");break; case '8':printf(" eight ");break; case '9':printf(" nine ");break; }
printf("input a number\n"); scanf("%d",&n); h=n-7*i;
while(h>7) {i=i+1; h=n-7*i;} switch(h) { case 1: printf("星期一\n"); break ; case 2: printf("星期二\n"); break ; case 3: printf("星期三\n"); break ; case 4: printf("星期四\n"); break ; case 5: printf("星期五\n"); break ; case 6: printf("星期六\n"); break ; case 7: printf("星期日\n"); break ; } } 运行结果

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二级上机考试答案1. 请写出C语言中定义一个整型变量的语句。

答案:int variable_name;2. 在C语言中,如何声明一个指向整型数据的指针?答案:int *pointer_name;3. 如果有一个数组定义如下:int array[5] = {1, 2, 3, 4, 5}; 那么数组的第一个元素是什么?答案:14. 在C语言中,如何使用循环结构打印出1到10的数字?答案:```cfor(int i = 1; i <= 10; i++) {printf("%d ", i);}```5. 请解释C语言中的switch语句的基本用法。

答案:switch语句用于基于不同的情况执行不同的代码块。

它首先评估一个表达式,然后检查这个表达式的值与case标签匹配的情况,执行相应的代码块。

6. 以下代码段的输出是什么?```cint x = 5;printf("%d", x++);```答案:57. 在C语言中,如何声明一个函数,该函数接受一个整型参数并返回一个整型值?答案:int function_name(int parameter);8. 请写出C语言中定义一个结构体的语句,该结构体包含一个整型成员和一个字符型成员。

答案:```cstruct struct_name {int integer_member;char character_member;};```9. 如果有一个函数定义如下:void function_name(void) { /* function body */ }; 那么这个函数的返回类型是什么?答案:void10. 在C语言中,如何使用条件运算符(三元运算符)?答案:条件运算符的一般形式是:condition ? expression1 : expression2,其中condition是条件表达式,expression1是当条件为真时的返回值,expression2是当条件为假时的返回值。

c 上机试题及答案

c 上机试题及答案

c 上机试题及答案第一部分:多项选择题1. 下面哪个选项是正确的?a) Ab) Bc) Cd) D答案:d) D2. 在计算机科学中,什么是“算法”?a) 一种计算机语言b) 一种软件程序c) 一种解决问题的方法或步骤d) 一种计算机硬件答案:c) 一种解决问题的方法或步骤3. 下面哪个选项是关于二进制的描述?a) 使用0和1进行计算的系统b) 使用10个数字进行计算的系统c) 使用英文字母进行计算的系统d) 使用负数进行计算的系统答案:a) 使用0和1进行计算的系统第二部分:填空题1. 在C语言中,用于在屏幕上输出文本的函数是______。

答案:printf2. 在计算机领域中,RAM代表______。

答案:Random Access Memory(随机存取存储器)3. 当一个程序在运行时遇到错误并突然停止时,我们称之为______。

答案:运行时错误(Runtime Error)第三部分:编程题编写一个C程序,计算并输出1到100之间所有奇数的和。

```c#include <stdio.h>int main(void) {int sum = 0;for (int i = 1; i <= 100; i += 2) {sum += i;}printf("1到100之间所有奇数的和为:%d\n", sum);return 0;}```答案:1到100之间所有奇数的和为:2500第四部分:简答题1. 请简要解释什么是“数据类型”,并举例说明。

答:数据类型是一种用于定义变量或表达式的特性,包括数据的范围、内存大小和操作。

例如,在C语言中,int是一种数据类型,用于定义整数类型的变量,如:```cint age = 25;```2. 请简要介绍一下C语言的特点。

答:C语言是一种通用、高级的编程语言,具有以下特点:- 结构简洁:C语言的语法相对简单,易于学习和理解。

- 高效性:C语言可以生成高效的机器代码,执行速度快。

(完整版)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程序上机答案

90.字母大写——小写char* EXUL( char tt[] ){for(;*tt;tt++)if((*tt>='A')&&(*tt<='Z'))*tt+=('a'-'A');}89.字母小写——大写88.小数整数加double Pdt( int n, double pp[] ) {int i,s=0;for(i=0;i<n;i++){s=s+pp[i]/1;}return s;}87.小数小数相加double Acc( int k, double dd[] ) {int i,a;double b,s=0;for(i=0;i<k;i++){a=dd[i];b=dd[i]-a;s=s+b;}return s;}86.字符——第一个位移到最后void fun ( char*s ){char a;a=*s;for(;*(s+1)!='\0';s++)*s=*(s+1);*s=a;}85.字符——字母后移fun ( char*s ){for(;*s!='\0';s++)if(*s=='z'||*s=='Z')*s=*s-('z'-'a');else*s=*s+1;}84.字符——逆置void fun ( char*s ){char a;int b,i;b=strlen(s);for(i=0;i<(b/2);i++){a=s[i];s[i]=s[b-1-i];s[b-1-i]=a;}}83.整形数组——奇数偶数分别和fun ( int*a, int n, int*odd, int*even ) {int i;*even=0;*odd=0;for(i=0;i<N;i++){if(a[i]%2==0)*odd=*odd+a[i];else*even=*even+a[i];}}82.123456——23456unsigned fun ( unsigned w ){int i,a=1;unsigned s=w;for(i=0;w>=1;i++){w=w/10;a=a*10;}s=s%(a/10);return s;}81,整形数组求和int fun ( int a[M][N] ){int s,s1=0,s2=0,s3=0,s4=0,i;for(i=0;i<N;i++)s1=s1+a[0][i];for(i=0;i<N;i++)s3=s3+a[M-1][i];for(i=1;i<M-1;i++)s2=s2+a[i][0];for(i=1;i<M-1;i++)s4=s4+a[i][N-1];s=s1+s2+s3+s4;return s;}80,数组分组求最小void fun ( int tt[M][N], int pp[N] ) {int i,j,min;for(i=0;i<M;i++){min=tt[i][0];for(j=0;j<N;j++){if(tt[i][j]<min)min=tt[i][j];}pp[i]=min;}}79,数组——删除制定数字void fun ( int bb[ ], int*n, int y ){int i=*n,j;for(;i>=0;i--)if(bb[i]==y){for(j=i;j<*n;j++)bb[j]=bb[j+1];(*n)--;}}78,同构树int fun ( int x ){if(x*x%10==x||x*x%100==x)return 1;elsereturn 0;}77,字符数组——删除ASCII值偶数的字符void fun(char*s, char t[]){int i,j=0;for(i=0;s[i]!='\0';i++)if(s[i]%2!==0){t[j]=s[i];j++;}}76,字符数组——除下标为偶数及本身ASKII值为偶数外全删void fun(char*s, char t[]){int i,j=0;for(i=0;s[i]!='\0';i++)if(s[i]%2==0&&i%2==0){t[j]=s[i];j++;}t[j]='\0';}75,字符数组——下标为偶数及本身ASKII值为偶数全删void fun(char*s, char t[]){int i,j=0;for(i=0;s[i]!='\0';i++)if(s[i]%2==0&&i%2==0);else{t[j]=s[i];j++;}t[j]='\0';}74,字符数组——下标为奇数及本身ASKII值为奇数全删void fun(char*s, char t[]){int i,j=0;for(i=0;s[i]!='\0';i++)if(s[i]%2!=0&&i%2!=0);else{t[j]=s[i];j++;}t[j]='\0';}73,字符数组——删除奇数下标字符void fun(char*s, char t[]){int i,j=0;for(i=0;s[i]!='\0';i++)if(i%2!=0);else{t[j]=s[i];j++;}t[j]='\0';}72,a,b数组逆序和void fun(int a[], int b[], int c[], int n) {int i,j;for(i=0;i<n;i++){c[i]=a[i]+b[n-1-i];}}71,a,b数组平方逆序差void fun(int a[], int b[], int c[], int n) {int i;for(i=0;i<n;i++){c[i]=a[i]*a[i]-b[n-1-i]*b[n-1-i];}}70,a,b数组逆序相乘,再平方void fun(int a[], int b[], int c[], int n) {int i;for(i=0;i<n;i++){c[i]=a[i]*a[i]*b[n-1-i]*b[n-1-i];}}69,a,b数组平方逆序和void fun(int a[], int b[], int c[], int n) {int i;for(i=0;i<n;i++){c[i]=a[i]*a[i]+b[n-1-i]*b[n-1-i];}}68,a,b数组逆序差void fun(int a[], int b[], int c[], int n) {int i;for(i=0;i<n;i++){c[i]=a[i]-b[n-1-i];}}67,数组——价格分段区间个数void fun(int a[], int b[], int n){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;i<n;i++){if(a[i]>=0&&a[i]<=99)b[0]++;if(a[i]>=100&&a[i]<=199)b[1]++;if(a[i]>=200&&a[i]<=299)b[2]++;if(a[i]>=300&&a[i]<=399)b[3]++;if(a[i]>=400&&a[i]<=499)b[4]++;if(a[i]>=500)b[5]++;}}66,数组——年龄分段区间个数void fun(int a[], int b[], int n){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;i<n;i++){if(a[i]>=0&&a[i]<=9)b[0]++;if(a[i]>=10&&a[i]<=19) b[1]++;if(a[i]>=20&&a[i]<=29) b[2]++;if(a[i]>=30&&a[i]<=39) b[3]++;if(a[i]>=40&&a[i]<=49) b[4]++;if(a[i]>=50)b[5]++;}}65,数组——年龄分段区间个数void fun(int a[], int b[], int n) {int i;for(i=0;i<6;i++)b[i]=0;for(i=0;i<n;i++){if(a[i]>=60&&a[i]<=69) b[0]++;if(a[i]>=70&&a[i]<=79) b[1]++;if(a[i]>=80&&a[i]<=89) b[2]++;if(a[i]>=90&&a[i]<=99) b[3]++;if(a[i]>=100)b[4]++;if(a[i]<60)b[5]++;}}64,数组——分数分段区间个数void fun(int a[], int b[], int n) {int i;for(i=0;i<6;i++)b[i]=0;for(i=0;i<n;i++){if(a[i]>=60&&a[i]<=69) b[0]++;if(a[i]>=70&&a[i]<=79) b[1]++;if(a[i]>=80&&a[i]<=89) b[2]++;if(a[i]>=90&&a[i]<=99) b[3]++;if(a[i]==100)b[4]++;if(a[i]<60)b[5]++;}}63,数组——工资分段区间个数void fun(int a[], int b[], int n) {int i;for(i=0;i<6;i++)b[i]=0;for(i=0;i<n;i++){if(a[i]>=0&&a[i]<=999) b[0]++;if(a[i]>=1000&&a[i]<=1999) b[1]++;if(a[i]>=2000&&a[i]<=2999) b[2]++;if(a[i]>=3000&&a[i]<=3999) b[3]++;if(a[i]>=4000&&a[i]<=4999) b[4]++;if(a[i]>=5000)b[5]++;}}62,字符数组——字母分段个数void fun(char*a, int b[]){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;a[i]!='\0';i++){if(a[i]=='A')b[0]++;if(a[i]=='B')b[1]++;if(a[i]=='C')b[2]++;if(a[i]=='D')b[3]++;if(a[i]=='E')b[4]++;if(a[i]!='A'&&a[i]!='B'&&a[i]!='C'&&a[i]!='D'&&a[i]!='E') b[5]++;}}61,字符数组——字母分段个数void fun(char*a, int b[]){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;a[i]!='\0';i++){if(a[i]=='z')b[0]++;if(a[i]=='y')b[1]++;if(a[i]=='x')b[2]++;if(a[i]=='w')b[3]++;if(a[i]=='v')b[4]++;if(a[i]!='z'&&a[i]!='y'&&a[i]!='x'&&a[i]!='w'&&a[i]!='v') b[5]++;}}void fun(char*a, int b[]){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;a[i]!='\0';i++){if(a[i]=='+')b[0]++;if(a[i]=='-')b[1]++;if(a[i]=='*')b[2]++;if(a[i]=='/')b[3]++;if(a[i]=='&')b[4]++;if(a[i]!='+'&&a[i]!='-'&&a[i]!='*'&&a[i]!='/'&&a[i]!='&') b[5]++;}}59,字符数组——字母分段个数void fun(char*a, int b[]){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;a[i]!='\0';i++){if(a[i]=='Z')b[0]++;if(a[i]=='Y')b[1]++;if(a[i]=='X')b[2]++;if(a[i]=='W')b[3]++;if(a[i]=='V')b[4]++;if(a[i]!='V'&&a[i]!='W'&&a[i]!='X'&&a[i]!='Y'&&a[i]!='Z') b[5]++;}}void fun(char*a, int b[]){int i;for(i=0;i<6;i++)b[i]=0;for(i=0;a[i]!='\0';i++){if(a[i]=='a')b[0]++;if(a[i]=='b')b[1]++;if(a[i]=='c')b[2]++;if(a[i]=='d')b[3]++;if(a[i]=='e')b[4]++;if(a[i]!='a'&&a[i]!='b'&&a[i]!='c'&&a[i]!='d'&&a[i]!='e') b[5]++;}}57,结构体——找最低成绩fun( STU a[], STU *s ){int i;*s=a[0];for(i=0;i<N;i++)if(((*s).s)>(a[i].s))*s=a[i];}56,字符数组——删除数字字符void fun (char*s){int i,j=0;for(i=0;s[i]!='\0';i++)if(s[i]>='0'&&s[i]<='9');else{s[j]=s[i];j++;}s[j]='\0';}55,数组——找最大值及其下标void fun(int a[], int n , int *max, int *d ) {int i;*max=a[0];*d=0;for(i=1;i<n;i++)if(*max<a[i]){*d=i;printf("%d%d",*d,i);*max=a[i];}}54,数组——整除7||11void fun ( int m, int *a , int *n ){int i,j=0;(*n)=0;for(i=1;i<50;i++)if(i%7==0||i%11==0){(*n)++;a[j]=i;j++;}}53,知精度求pidouble fun ( double eps){int i=0;double z=1,m=1,pa=0,x=1;while(x>=eps){pa=pa+x;i++;z=z*i;m=m*(2*i+1);x=z/m;}return(2*pa);}52,字符数组——比较长度,打印长的char *fun ( char *s, char *t) {int i,j1=0,j2=0;for(i=0;s[i]!='\0';i++)j1++;for(i=0;t[i]!='\0';i++)j2++;if(j1>=j2)return s;elsereturn t;}51,字符数组——数字字符变数字long fun ( char *p){int i;long s=0;if(p[0]=='-'){for(i=1;p[i]!='\0';i++){p[i]=p[i]-'0';s=s*10+p[i];}return (-s);}else{for(i=0;p[i]!='\0';i++){p[i]=p[i]-'0';s=s*10+p[i];}return s;}}50,数组——求平均值float fun ( float *a , int n ) {int i;float p=0;for(i=0;i<n;i++)p=p+a[i]/n;return p;}49,俩数交换个十百千void fun(int a, int b, long *c) {int s1,s2,g1,g2;s1=a/10;g1=a%10;s2=b/10;g2=b%10;*c=10*s1+g1*1000+s2+g2*100;}48,俩数个十百千交换void fun(int a, int b, long *c) {int g1,s1,g2,s2;g1=a%10;s1=a/10;g2=b%10;s2=b/10;*c=s1*100+g1+s2*10+g2*1000;}47,公式计算double fun(int n){int i;double b=1,s=0,t=1;for(i=2;i<=n+1;i++){s=s+t;b=b+i;t=1/b;}return s;}46,字符数组——删除奇数项void fun(char *s, char t[]) {int i,j=0;for(i=0;s[i]!='\0';i++)if(i%2!=0){t[j]=s[i];j++;}t[j]='\0';}45,数组——左下三角元素置零int fun ( int a[][N] ){int i,j;for(i=0;i<N;i++)for(j=0;j<N;j++)if(i>=j)a[i][j]=0;}44,俩数个十百千交换void fun(int a, int b, long *c) {int g1,s1,g2,s2;g1=a%10;s1=a/10;g2=b%10;s2=b/10;*c=s1+g1*100+s2*1000+g2*10; }43,俩数个十百千交换void fun(int a, int b, long *c){int g1,s1,g2,s2;g1=a%10;s1=a/10;g2=b%10;s2=b/10;*c=s1*1000+g1*10+s2*100+g2;}42,公式计算float fun(int n){int i;double b=1,s=0,t=1;for(i=2;i<=n+1;i++){s=s+t;b=b+i;t=1/b;}return s;}41,结构体——成绩统计double fun( STREC *a, STREC *b, int *n ) {int i,j=0;double s=0;*n=0;for(i=0;i<N;i++){s=s+(a[i].s)/N;}for(i=0;i<N;i++){if(a[i].s<s){(*n)++;b[j]=a[i];j++;}}return s;}40,结构体——查询STREC fun( STREC *a, char *b ) {int i;STREC c;for(i=0;i<N;i++)if(strcmp(a[i].num,b)==0)return a[i];c.num[0]='\0';c.s=-1;return c;}39,字母个数统计void fun(char *tt, int pp[]) {int i;for(i=0;i<26;i++)pp[i]=0;while(*tt!='\0'){if(*tt>='a' && *tt<='z'){pp[*tt-'a']++;tt++;}}}38,删除前排‘*******’void fun( char *a ){int i,j;for(i=0;a[i]=='*';i++);for(j=0;a[i]!='\0';j++){a[j]=a[i];i++;}a[j]='\0';}37,多维数组一维输出void fun(char (*s)[N], char *b) {int i,j,k=0;for(i=0;i<4;i++)for(j=0;j<3;j++){b[k]=s[j][i];k++;}b[k]='\0';}36,多维数组倒置int fun(int array[3][3]){int i,j,t;for(i=0;i<3;i++)for(j=0;j<i;j++){t=array[i][j];array[i][j]=array[j][i];array[j][i]=t;}}35,公式——m!/n!/(m-n)!float fun(int m, int n){int i;float M=1,N=1,T=1,p;for(i=1;i<=m;i++)M=M*i;for(i=1;i<=n;i++)N=N*i;for(i=1;i<=(m-n);i++)T=T*i;p=M/(N*T);return p;}34,回文判断int fun(char *str){int i,j,k,flag=1;for(i=0;str[i]!='\0';i++);k=i-1;for(j=0;j<i;j++,k--)if(str[j]!=str[k])flag=0;return flag;}33,结构体——成绩——最低分数据int fun( STREC *a, STREC *b ) {int i,j=0,min=a[0].s,t=0;for(i=0;i<N;i++)if(min>a[i].s)min=a[i].s;for(i=0;i<N;i++)if(a[i].s==min){t++;b[j]=a[i];j++;}return t;}32,数组——平移n位void fun(int *w, int p, int n) {int i,j=0,t[N],s=p;for(i=0;i<n-s-1;i++){t[i]=w[p+1];p++;}for(i;i<n;i++){t[i]=w[j];j++;}for(i=0;i<n;i++)w[i]=t[i];}31,字符数组——删除下标为偶数同时其ascii值为奇数的元素void fun(char *s, char t[]){int i,j=0;for(i=0;s[i]!='\0';i++)if(s[i]%2!=0&&i%2==0);else{t[j]=s[i];j++;}t[j]='\0';}30,数组——人数统计void fun( int *a, int *b){int i;for(i=0;i<11;i++)b[i]=0;for(i=0;i<50;i++){if(a[i]>=0&&a[i]<=9)b[0]++;if(a[i]>=10&&a[i]<=19)b[1]++;if(a[i]>=20&&a[i]<=29)b[2]++;if(a[i]>=30&&a[i]<=39)b[3]++;if(a[i]>=40&&a[i]<=49)b[4]++;if(a[i]>=50&&a[i]<=59)b[5]++;if(a[i]>=60&&a[i]<=69) b[6]++;if(a[i]>=70&&a[i]<=79)b[7]++;if(a[i]>=80&&a[i]<=89)b[8]++;if(a[i]>=90&&a[i]<=99)b[9]++;if(a[i]>=100)b[10]++;}}。

C语言上机练习参考答案

C语言上机练习参考答案

第1章C语言概述1-1编写程序,在屏幕上显示一个如下输出:---------------------------------Programming in C is fun!I love C language.---------------------------------1-2编写程序,在屏幕上显示一个如下图案:* * * ** * ** **1-3已知某个圆的半径,编写一个程序,用来计算并显示面积。

要求:将π定义为符号常量,并假设一个恰当的半径值。

OutputThe area of circle is: 78.501-4已知两个整数20和10,编写程序,自定义函数add( )将这两个数相加,自定义函数sub( )计算这两个数的差,并按照下面形式显示计算结果:20+10=3020-10=10Output20 + 10 = 3020 – 10 = 101-5 已知变量a 、b 和c 的值,编写程序,用来计算并显示x 的值,其中cb a -=x 请分别用以下数值运行该程序(1)a=250,b=85,c=25(2)a=300,b=70,c=80Output (1)x = 4.17Output (2)x = -30.00第2章 常量、变量及数据类型 & 第3章 运算符和表达式 3-1 编写程序,求华氏温度100o F 对应的摄氏温度。

计算公式如下:9)32(5-⨯=f c 式中:c 表示摄氏温度,f 表示华氏温度。

(c 定义为实型,f 定义为整型)OutputCelsius degree (corresponding to 100 Fahrenheit) is: 37.78.3-2 一个物体从100m 的高空自由落下,编写程序,求它在前3s 内下落的垂直距离。

设重力加速度为10m/s 2。

要求,将重力加速度定义为符号常量,尝试将其改为9.8 m/s 2,看结果有何不同?OutputThe falling vertical distance (in 3 seconds) is:45.00.3-3将球的半径R定义为符号常量,计算球的表面积(4πR2)和体积(4/3*πR3)。

C语言上机练习参考答案

C语言上机练习参考答案

第1章 C语言概述1-1编写程序,在屏幕上显示一个如下输出:1-2--------------------------------- 1-3Programming in C is fun!1-4I love C language.1-5---------------------------------Program1-6编写程序,在屏幕上显示一个如下图案:1-7* * * *1-8 * * * 1-9 * * 1-10 * Program (1)Program (2)1-11已知某个圆的半径,编写一个程序,用来计算并显示面积。

1-12要求:将π定义为符号常量,并假设一个恰当的半径值。

ProgramOutputThe area of circle is: 78.501-13已知两个整数20和10,编写程序,自定义函数add( )将这两个数相加,自定义函数sub( )计算这两个数的差,并按照下面形式显示计算结果:1-1420+10=30 1-1520-10=10 ProgramOutput20 + 10 = 3020 – 10 = 101-16 已知变量a 、b 和c 的值,编写程序,用来计算并显示x 的值,其中c b a -=x 1-17 请分别用以下数值运行该程序1-18 (1)a=250,b=85,c=251-19 (2)a=300,b=70,c=80Program (1)Output (1)x = 4.17Program (2)Output (2)x = -30.00第2章 常量、变量及数据类型 & 第3章 运算符和表达式3-1 编写程序,求华氏温度100o F 对应的摄氏温度。

计算公式如下:3-2 9)32(5-⨯=f c 3-3 式中:c 表示摄氏温度,f 表示华氏温度。

(c 定义为实型,f 定义为整型) ProgramOutputCelsius degree (corresponding to 100 Fahrenheit) is: 37.78.3-4 一个物体从100m 的高空自由落下,编写程序,求它在前3s 内下落的垂直距离。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
for(;choice!='q';)
{cout<<"请选择,"<<endl;
cout<<"p)平行四边形星阵 "<<"r)正方形星阵 "<<"t)三角形星阵 "<<"q)退出程序"<<endl;
cin>>choice;
switch(choice)
{case'p':int n1;cout<<"请输入行数:";cin>>n1;
else y=3*x-11;//x>=10
cout<<"y="<<y<<endl;
return 0;
}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
/*输入:4个数字
输出:按由大到小的顺序将4个数字输出
要求:输入要有提示*/
#include<iostream>
char area;
cout<<"请选择,"<<endl;
cout<<"a)circle(圆形) "<<"b)triangle(三角形) "<<"c)rectangle(矩形)"<<endl;
cin>>area;
switch(area)
{
case'a':cout<<"请输入半径:";
要求:输入、输出要有提示*/
#include<iostream>
using namespace std;
int main()
{
float x,y;
cout<<"请输入x=";
cin>>x;
if(x<1) y=x;
else if(x<10) y=2*x-1;//1<=x<10
s2=0.5*l1*h;
cout<<"面积="<<s2<<endl;//三角形的面积
break;
case'c':cout<<"请输入长和宽:";
float l2,w,s3;
cin>>l2>>w;
s3=l2*w;
cout<<"面积="<<s3<<endl;//矩形的面积
b=x/100;x=x-100*b;
c=x/10;x=x-10*c;
d=x;
A=0;
if(a==h) A++;//计算A的值
else A=A;
if(b==i) A++;
else A=A;
if(c==j) A++;
else A=A;
if(d==k) A++;
else A=A;
cout<<"A="<<A<<endl;
if(a==h) B=1;//计算B的值
else if(a==i) B=1;
else if(a==j) B=1;
else if(a==k) B=1;
else B=0;
if(b==h) B++;
else if(b==i) B++;
cin>>r>>h;
l=2*3.14*r;//求圆周长
s1=3.14*r*r;//求圆面积
s2=2*s1+l*h;//求表面积
v=s1*h;//求体积
cout<<"圆柱体的圆周长是:"<<l<<endl;
cout<<"圆柱体的圆面积是:"<<s1<<endl;
cout<<"圆柱体的表面积是:"<<s2<<endl;
else if(b==j) B++;
else if(b==k) B++;
else B=B;
if(c==h) B++;
else if(c==i) B++;
else if(c==j) B++;
else if(c==k) B++;
else B=B;
if(d==h) B++;
若选择b,提示输入底边长和高;
若选择c,提示输入长、宽
输出:面积
要求:用switch语句实现*/
#include<iostream>
using namespace std;
int main()
{
else if(z<x) cout<<w<<','<<x<<','<<z<<','<<y<<endl;
else if(z<w) cout<<w<<','<<z<<','<<x<<','<<y<<endl;
else cout<<z<<','<<w<<','<<x<<','<<y<<endl;
void tstar(int n)
{int i,j,k;
for(i=1;i<=n;i++)
{for(j=1;j<=n-i;j++)cout<<' ';
for(k=1;k<=2*i-1;k++)cout<<'*';
cout<<endl;}}
int main()
{
char choice='a';
cout<<"A="<<A<<endl;}
cout<<"猜测次数是:"<<m<<endl;
return 0;
}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
/*提示并输入:p、r、t或q
输入p、r或t,则询问行数,输出平行四边形、四方形或三角形星阵,并再次请求输入
float r,s1;
cin>>r;
s1=3.14*r*r;
cout<<"面积="<<s1<<endl;//圆形的面积
break;
case'b':cout<<"请输入底边长和高:";
float l1,h,s2;
cin>>l1>>h;
using namespace std;
int main()
{
int x,a,b,c,d,A,m;A=0;
cout<<"请输入一个4位数,4个数字各不相同。"<<endl;
for(m=0;A<4;m++)//循环多次猜测
{cin>>x;
A=0;
a=x/1000;x=x-1000*a;//把4位数分开
/*输入:圆柱体的半径、高
输出:圆柱体的圆周长、圆面积、表面积、体积
要求:输入要有提示,输出不能仅包含数字*/
#include<iostream>
using namespace std;
int main()
{
float r,h,l,s1,s2,v;
cout<<"请输入圆柱体的半径和高:"<<endl;
using namespace std;
int main()
{
float w,x,y,z,temp;
cout<<"请输入四个数字,以空格分开:"<<endl;
cin>>w>>x>>y>>z;
if(w>x) w=w,x=x;
else temp=w,w=x,x=temp;//w>x
pstar(n1);break;//调用平行四边形星阵函数
case'r':int n2;cout<<"请输入行数:";cin>>n2;
rstar(n2);break;//调用正方形星阵函数
case't':int n3;cout<<"请输入行数:";cin>>n3;
相关文档
最新文档