当前位置:文档之家› 第一次c语言题

第一次c语言题

第一次c语言题
第一次c语言题

A

Description

Xiao_ming有两个哥哥,大哥叫Da_min,二哥叫Er_min。三兄弟放学回家,父母分别跟他们打招呼。

Input

Output

请输出:

Hello Da_min,

Hello Er_min,

Hello Xiao_ming!

Sample Input

Sample Output

Hello Da_min,

Hello Er_min,

Hello Xiao_ming!

#include

int main()

{

printf("Hello Da_min,\n");

printf("Hello Er_min,\n");

printf("Hello Xiao_ming!\n");

}

问题 B: 算术基本运算

时间限制: 1 Sec 内存限制: 2 MB

提交: 1621 解决: 400

[提交][状态][讨论版]

题目描述

计算两整数x和y(0

输入

输入只有一行,格式见sample。

输出

输出为多行,按顺序每行输出x,y的和、差、积、商、余数、x的平方和y的三次方,格式见sample

样例输入

x = 11, y = 3

样例输出

x + y : 14

x - y : 8

x * y : 33

x / y quotient: 3, remainder: 2

x ^ 2 : 121

y ^ 3 : 27

提示

注意输入输出格式。了解C语言整数除法运算符的特点,并且没有求幂的运算符。

#include

int main()

{

int x,y;

scanf("x = %d, y = %d",&x,&y);

printf("x + y : %d\n",x+y);

printf("x - y : %d\n",x-y);

printf("x * y : %d\n",x*y);

printf("x / y quotient: %d, remainder: %d\n",x/y,x%y);

printf("x ^ 2 : %d\n",x*x);

printf("y ^ 3 : %d\n",y*y*y);

}

问题 C: 求圆的面积和周长

时间限制: 1 Sec 内存限制: 2 MB

提交: 1177 解决: 464

[提交][状态][讨论版]

题目描述

从键盘输入圆的半径,求圆的面积和周长,圆周率取3.14。

输入

输入一个浮点型数据,有效数字不会超过十进制的6位。

输出

输出为两行。

第一行为圆的面积,第二行为圆的周长,格式见sample。

样例输入

3

样例输出

Area: 28.260000

Perimeter: 18.840000

提示

了解浮点类型的输入、输出和算术运算符

#include

#define P 3.14

void main()

{

float Area,Perimeter,r;

scanf("%f",&r);

Area=P*r*r;

Perimeter=2*P*r;

printf("Area: %f\n",Area);

printf("Perimeter: %f\n",Perimeter);

}

问题 D: 平均值

时间限制: 1 Sec 内存限制: 2 MB

提交: 821 解决: 461

[提交][状态][讨论版]

题目描述

求3个数的平均值。

输入

输入只有一行,为3个较小的整数。

输出

输出为这3个整数的平均值,保留3位小数。

样例输入

1 2 3

样例输出

2.000

提示

注意除法运算对整型数据和浮点型数据是不一样的。

#include

int main()

{

int a,b,c;

scanf("%d %d %d",&a,&b,&c);

printf("%.3f\n",(float)(a+b+c)/3);

}

问题 E: 货币兑换

时间限制: 1 Sec 内存限制: 2 MB

提交: 1200 解决: 388

[提交][状态][讨论版]

题目描述

给出人民币对美元、欧元、日元的当日汇率,求给定金额的人民币能兑换成外币的金额,求给定金额的外币能兑换成人民币的金额。

要计算的外币有三种:美元、欧元、日元。

输入

输入有三行。

第一行依次为美元、欧元、日元外币汇率,用空格分开。汇率用100外币为单位,精确到小数点后4位,如668.5200表示“100美元=668.5200人民币”。汇率浮动范围为(0,10000)。

第二行为外币金额x,第三行为人民币金额y。x,y均为整数,且0

输出

输出为两行。

第一行为金额为x的美元、欧元、日元兑换成人民币的金额,用空格分开。

第二行为金额为y的人民币兑换成美元、欧元、日元的金额,用空格分开。

所有金额精确到小数点后两位。

样例输入

668.5200 908.0685 7.9852

1500

1500

样例输出

10027.80 13621.03 119.78

224.38 165.19 18784.75

提示

了解浮点数据类型的精确度和输出控制。

#include

int main()

{

double i,j,k;

int x,y;

scanf("%lf %lf %lf",&i,&j,&k);

scanf("%d",&x);

scanf("%d",&y);

printf("%.2lf %.2lf %.2lf\n",(double)x/100*i,(double)x/100*j,(double)x/100*k);

printf("%.2lf %.2lf %.2lf\n",(double)y/i*100,(double)y/j*100,(double)y/k*100);

}

问题 F: 求字符的值

时间限制: 1 Sec 内存限制: 2 MB

提交: 562 解决: 373

[提交][状态][讨论版]

题目描述

从键盘输入3个字符(不含双字节字符),分别输出每个字符的十进制值(ASCII码)、八进制值和十六进制值。

输入

输入为3个字符。

输出

输出为3行。

每一行为每个字符(对应输入顺序)的十进制、八进制和十六进制值,用空格分隔开。每个输出的值占3个字符,不足3个字符前面补0。

样例输入

0 A

样例输出

048 060 030

032 040 020

065 101 041

提示

了解字符值的存储和整型的关系。

#include

int main()

{

char m1,m2,m3;

scanf("%c%c%c",&m1,&m2,&m3);

printf("%.3d %.3o %.3x\n",m1,m1,m1);

printf("%.3d %.3o %.3x\n",m2,m2,m2);

printf("%.3d %.3o %.3x\n",m3,m3,m3);

}

问题 G: 奇数还是偶数?

时间限制: 1 Sec 内存限制: 2 MB

提交: 576 解决: 456

[提交][状态][讨论版]

题目描述

输入一个整数,判读它是奇数还是偶数。

输入

输入只有一行,为一个100以内的正整数。

输出

输出为一行。

若输入为偶数则输出“even”,奇数输出“odd”。

样例输入

30

样例输出

even

提示

用整数运算可以解决,练习“?:”表达式。

#include

void main()

{

int m;

scanf("%d",&m);

if

(m%2==0)

printf("even\n");

else

printf("odd\n");

}

问题 H: 绝对值

时间限制: 1 Sec 内存限制: 2 MB

提交: 844 解决: 376

[提交][状态][讨论版]

题目描述

求整型数据和浮点型数据的绝对值。

输入

输入两个数,第一个是整数,第二个是浮点数。

输出

输出为两行,第一行为整数的绝对值,第二行为浮点数的绝对值,注意浮点数的绝对值不输出无意义的0。

样例输入

-1

1

样例输出

1

1

提示

求绝对值可以用标准库函数来完成,也可以自己判断。注意浮点数的输出格式。求绝对值的函数在哪个头文件?貌似很多人会搞错,包括很多编书的人!

#include

#include

int main()

{

int a,b;

float c,d;

scanf("%d%f",&a,&c);

b=abs(a),d=fabs(c);

printf("%d\n",b);

printf("%g\n",d);

}

问题 I: 简单的打折计算

时间限制: 1 Sec 内存限制: 2 MB

提交: 921 解决: 436

[提交][状态][讨论版]

题目描述

商店规定:消费满n元,可以打八八折。设某件商品标价m元,输入购买的件数x,计算出需要支付的金额(单位:元),精确到分。

输入

输入只有一行,三个整数m、n和x,且0

输出

输出金额,精确到分。

样例输入

95 300 4

样例输出

334.40

提示

了解浮点型的输出控制,注意整型和浮点型混合运算过程中的数据类型转换。

#include

int main()

{

int h,j,k;

scanf("%d%d%d",&h,&j,&k);

if (h*k>=j)

printf("%.2f\n",h*k*0.88);

else

printf("%.2f\n",(float)h*k);

}

问题 J: 判断闰年

时间限制: 1 Sec 内存限制: 2 MB

提交: 940 解决: 444

[提交][状态][讨论版]

题目描述

输入一个正整数的年份,判断是否为闰年。

输入

输入只有一行,为一个10000以内的正整数。

输出

输出为一行。

若输入为闰年偶数则输出“Yes”,否则输出“No”。

样例输入

2010

样例输出

No

提示

了解逻辑运算符和关系运算符。

#include

int main()

{

int n;

scanf("%d",&n);

if((n%4==0&&n%100!=0)||(n%400==0))

printf("Yes\n");

else

printf("No\n");

}

问题 K: GHacker的解谜过关游戏

时间限制: 1 Sec 内存限制: 2 MB

提交: 529 解决: 355

[提交][状态][讨论版]

题目描述

GHacker最近痴迷于一个新上市的解谜游戏,其中一关的过关是破解一个字符串S。经过3天的冥思苦想,GHacker成功的搞明白了这其中的奥秘,把串S中的整数取出来求和,就可以过关了。但是GHacker的数学实在糟糕。他无法在短暂的时间内算出来,只好求助Jackie。Jackie观察到虽然每次出现的数字不同,但是其它的符号并不会变化。于是Jackie编写了一个非常短的程序,帮助GHacker把这一关过了。

输入

输入为串S,只有一行。

输出

串S中用非数字(0~9)分隔开的非负整数之和,不会超出int类型的数据范围。

样例输入

`13?:[7514],54.487=="(438922x159??392)%032\n111cdef120$95;

样例输出

447899

提示

scanf()可以解决这个问题,注意转义字符和格式控制字符。

#include

int main()

{

int a;

int q=0,p;

for(a=0;a<11;a++)

{

scanf("%*[^0-9]%d",&p);

q +=p;

}

printf("%d",q);

return 0;

}

问题 L: 水仙花数

时间限制: 1 Sec 内存限制: 2 MB

提交: 962 解决: 535

[提交][状态][讨论版]

题目描述

如果一个三位十进制数等于其各位数字的立方和,则称这个数为水仙花数。如:13+53+33=153。

输入

一个整数x,100<=x<=999。

输出

x是水仙花数,则输出“YES”,否则为“NO”。

样例输入

153

样例输出

YES

提示

#include

int main()

{

int q,w,e,r;

scanf("%d",&q);

if(q>=100&& q<=999)

w=q/100,e=(q-w*100)/10,r=q%10;

if(w*w*w+e*e*e+r*r*r==q)

printf("YES\n");

else

printf("NO\n");

}

问题 M: 求1+2+...+n=?

时间限制: 1 Sec 内存限制: 2 MB

提交: 2027 解决: 413

[提交][状态][讨论版]

题目描述

给定一个n,求出s = 1+2+3+...+n的值。

输入

输入只有一行,包含一个正整数n(n<=232)。

输出

输出一行,为1+2+...+n的值。

样例输入

10

样例输出

55

提示

n的数据范围大,需注意数据类型的选择和计算次序,以避免数据溢出。

#include

int main()

{

unsigned long long int n,x;

scanf("%llu",&n);

x=n%2;

if (x==0)

printf("%llu",n/2*(n+1));

else

printf("%llu",(n+1)/2*n);

}

问题 N: 2的多少次幂

时间限制: 1 Sec 内存限制: 2 MB

提交: 1022 解决: 470

[提交][状态][讨论版]

题目描述

从键盘输入一个数x,x是2的整数次幂(x=2y),请编程求出y的值。输入

一个非负有理数x,x在[0,2256]范围内。

输出

一个整数y。

样例输入

1

样例输出

提示

看起来数据很大,但是用double完全可以存储。为什么?请研究下IEEE-754标准的浮点数存储格式。这里要用到C语言标准库的数学函数。

#include

#include

int main()

{

double x;

double y;

scanf("%lf",&x);

y=log(x)/log(2);

printf("%.0lf\n",y);

}

第六次作业

习题九 一、选择题 9-1.C语言程序由函数组成。它的。 A.主函数必须在其它函数之前,函数内可以嵌套定义函数 B.主函数可以在其它函数之后,函数内不可以嵌套定义函数 C.主函数必须在其它函数之前,函数内不可以嵌套定义函数 D.主函数必须在其它函数之后,函数内可以嵌套定义函数 9-2.一个C语言程序的基本组成单位是。 A.主程序B.子程序C.函数D.过程 9-3.以下说法中正确的是。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 9-4.已知函数abc的定义为: void abc ( ) { ....... } ?则函数定义中void的含义是。 A.执行函数abc后,函数没有返回值B.执行函数abc后,函数不再返回??C.执行函数abc后,可以返回任意类型D.以上三个答案全是错误的 9-5.在以下对C语言的描述中,正确的是。 A.在C语言中调用函数时,只能将实参的值传递给形参,形参的值不能传递给实参B.C语言函数既可以嵌套定义又可以递归调用 C.函数必须有返回值,否则不能使用函数 D.C语言程序中有调用关系的所有函数都必须放在同一源程序文件中 9-6.以下叙述中错误的是。 A.在C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值 B.在C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容 C.在C语言中,外部变量的隐含类别是自动存储类别 D.在C语言中,函数形参的存储类型是自动(auto)类型的变量 9-7.说明语句"static int i=10;"中"i=10"的含义是。 A.只说明了一个静态变量B.与"auto i=10;"在功能上等价 C.将变量i初始化为10 D.将变量i赋值为10 9-8.C语言中的函数。

C语言第七、八章补充作业-答案

第七章数组补充作业 【1】在C语言中,引用数组元素时,其数组下标的数据类型允许是 C 。 A)整型常量B)整型表达式 C)整型常量或整型表达式D)任何类型的表达式 【2】以下对一维整型数组a的正确说明是 D 。 A)int a(10); B)int n=10,a[n]; C)int n; D)#define SIZE 10 scanf(“%d”,&n); int a[SIZE]; int a[n]; 【3】若有说明:int a[10];则对a数组元素的正确引用是 D 。 A)a[10] B)a[] C)a(5) D)a[10-10] 【4】以下能对一维数组a进行正确初始化的语句是 C 。 A)int a[10]=(0,0,0,0,0); B)int a[10]={}; C)int a[]={0}; D)int a[10]={10*1}; 【5】以下对二维数组a的正确说明是 B 。 A)int a[3][]; B)double a[1][4]; C)float a(3,4); D)float a(3)(4); 【6】若有说明:int a[3][4];则对a数组元素的正确引用是 D 。 A)a[2][4] B)a[1,3] C)a(2)(1) D)a[1+1][0] 【7】以下不能对二维数组a进行正确初始化的语句是 C 。 A) int a[2][3]={0}; B) int a[][3]={{1,2},{0}}; C) int a[2][3]={{1,2},{3,4},{5,6}}; D) int a[][3]={1,2,3,4,5,6}; 【8】指出下面各说明语句中哪些是合法的:(多选) A. int abcd[0x80]; B. char 9ab[10]; C. char chi[-200]; D. int aaa[5]={3,4,5}; E. float key[]={,,1,0}; F. char disk[]; G. int n,floppy[n]; H. int cash[4]={1,2,3,4,5,6}; 答案: ADE 【9】下面程序中有错误的行是 D (每行程序前面的数字表示行号)。 1 main()

C语言实训作业1

《C语言通识教育》实训指导书 (第一次) (2学时) 何天成 2016年月日

前言 C 语言是现代最流行的通用程序设计语言之一,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点,既可以用来编写系统程序,又可以用来编写应用程序。因此,C 语言正在被迅速地推广和普及。上机实验是该课程教学的一个重要环节,因此要求学生做一定数量的上机实验。本指导书可增强同学上机实验的针对性。整个教学和实验中,采用VC++6.0 作为实验环境,强调学生切实培养动手实践能力,掌握调试程序的方法,通过调试理解C语言程序运行的过程以及C 语言的语法规则,为后续的课程设计,计算机等级考试及其他应用做好充分的准备。 本实验指导书通过大量的实例,循序渐进地引导学生做好各章的实验。共计约14次实训课,其中每一讲内容分1、2两次上课。每个实验内容结构如下: (1)实验学时 (2)实验目的 (2)预习要求 (4)实验内容 (5)实验注意事项 (6)思考题 其中思考题属于扩展应用部分,学生可以根据自己的学习情况选择完成。 在实验之前,要求学生对实验作好预习工作。在实验中,学生根据实验指导中的内容进行验证与总结,然后再去完成实验内容中安排的任务。一般要求准备好相关代码,实验课中最好以调试和讨论为主。 实验结束后,应及时先以电子版的形式填写实验报告,然后再以A4纸打印。第3次实训课上交前2次实训报告,要求源程序要以标准格式打印实验报告上都必须粘贴上每个程序的运行结果截图,并在每个程序的输出截图中添加上自己的姓名/学号/专业等信息,以表示程序执行结果确是自己调试,而不是copy 别人的运行结果。通报告具体内容可根据实验内容和实验要求进行增删。实验报告一般要求包含:(1)实验题目 (2)设计思路或算法分析 (3)流程图 (4)程序源代码 (5)程序运行结果及分析

c语言作业

提交作业规范: (1)你的每次作业的cpp文件放在文件夹中,文件夹命名:学号+姓名+(第几次),(例如:“2014218899张三(第二次)“) (2)上传到文件夹:偶春生\班级。千万别传错。 注意: (1)每做完一题,请用“file”下的“close workspace”关闭工作区,再重新开始做下一题。(2)如果不能联网,请改网关地址:252或253 (3)开机进入“basis” 第一次上机题目: (1)从键盘上输入四个整数,计算并输出四个数的平均值。 (2)输入球的半径,计算并输出球的体积和表面积。 (3)输入一个三位正整数,分别输出该数的个位、十位和百位。(提示:用%运算符提取数字,如123%10=3,用/运算符移除已提取的数字,如123/10 = 12) (4)请测试++、--、关系和逻辑运算符。 第二次上机题目: (1)平面上有一园C:(x-3)2+(y-4)2= 25;输入点P(x,y)的坐标值,判断P点在园C内(包括园上)还是园C外。 (2)输入一英文字符,如果是大写字符,请输出:“您输入的是大写字符。”,如果是小写字符,请输出:“您输入的是小写字符。”, (3)某人某天开始“三天打鱼,两天晒网”,问该人在以后的第n天是打鱼还是晒网?(4)输入火车的出发时间和到站时间,计算火车的运行时间。(出发时间和到站时间用四位整数表示,如1230表示12点30分,假设火车不跨天运行。) (5)从键盘上输入三个整数,分别存放在变量num1, num2, num3中,编写程序对这三个数进行排序,使得num1 <=num2<=num3。 第三次上机题目: (1)输入十个数,分别计算出其中正数、负数的和。 (2)输出1—100内能被3整除或个位数是3的数。 (3)打印出大写英文字母,每行最多输出十个。 (4)输入十个数,求出其中的最小值。 (5)求出e的值,e = 1+1+1/2!+1/3!+…+1/n! (n取10) 第四次上机题目: (1)输出100—1000之间的质数。 (2)任意输入一个数,输出这个数的所有因子。(如输入12,输出1,2,3,4,6,12) (3)输出1-100间的同构数,所谓同构数是指一个数出现在这个数平方的右侧(如6和25均为同构数)。 (4)求x2+y2=2009的整数解。(提示,x,y的范围在[1,45]之间,用双重循环枚举求解)(5)用嵌套循环打印如下图形:

国家开放大学C语言程序设计A第一次形考任务及答案

一、选择题(共40分,每小题2分) 题目1 在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。 A. main B. MAIN C. name D. function 题目2 C语言源程序文件的缺省扩展名为()。 A. cpp B. exe C. obj D. c 题目3 由C语言目标文件连接而成的可执行文件的缺省扩展名为()。 A. cpp B. exe C. obj D. c 题目4 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用的分隔符为()。 A. 空格或逗号 B. 逗号或回车 C. 逗号或分号

D. 空格或回车 题目5 每个C语言程序文件的编译错误被分为()。 A. 1类 B. 2类 C. 3类 D. 4类 题目6 不符合C语言规定的复合语句是()。 A. {} B. {;} C. {x=0;} D. {y=10} 题目7 C语言程序中的基本功能模块为()。 A. 表达式 B. 标识符 C. 语句 D. 函数 题目8 在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()。 A. 表达式 B. 语句 C. 参数表

D. 函数体 题目9 在一个程序文件中,若要使用#include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对()。 A. 尖括号 B. 双引号 C. 单引号 D. 花括号 题目10 在C语言程序中,多行注释语句使用的开始标记符为()。 A. // B. /* C. */ D. ** 题目11 在printf()函数调用的格式字符串中,若使用格式符为“%c”,则对应输出的数据类型为()。 A. char B. int C. float D. double 题目12 在printf()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应输出的数据占用的字符位置个数为()。

第六次c语言作业

第六次课作业 下次课默写交换排序、选择排序和冒泡排序。 习题6-1 题码:章节:数组考查点:一维数组的定义、引用及格式输出难度:2 编写一程序p717.C实现以下功能 输入10个整型数存入一维数组,输出值和下标都为奇数(数组第1个元素的下标为0)的元素及其个数。编程可用素材:printf("Input 10 integers.\n")...、printf("count=...\n"...、 printf("a[...]=...\n"...。 程序的运行效果应类似地如图1所示,图1中的2 45 34 56 78 12 41 55 86 37是从键盘输入的内容。 图1 程序运行效果示例 习题6-2 题码:章节:数组考查点:一维数组定义、输入和输出的掌握,对递推算法的掌握难度:2 编写一程序p725.C实现以下功能 利用数组,求斐波拉契数列的前n(n的范围为:3~20)项,并输出到屏幕上(数和数之间用字符'\t'隔开),斐波拉契公式:f(1)=1,f(2)=1,f(n)=f(n-1)+f(n-2) (n≥3)。编程可用素材:printf("input a data(3--20): ")...。 程序的运行效果应类似地如图1所示,图1中的11是从键盘输入的内容。 图1 程序运行效果示例 习题6-3 题码:章节:数组考查点:一维数组的应用难度:2 编写一程序p718.C实现以下功能 有一递推数列,满足f(0)=0,f(1)=1,f(2)=2, f(n+1)=2f(n)+f(n-1)f(n-2) (n>=2), 编写程序求f(n)的值(n由键盘输入,13>=n>=2)。编程可用素材:printf(“Input n (13>=n>=2): ”)...、printf(“\nf(...)=...\n”...。 程序的运行效果应类似地如图1所示,图1中的10是从键盘输入的内容。 图1 程序运行效果示例 习题6-4 题码:章节:数组考查点:键盘输入技巧的掌握和二维数组的应用,判断条件的设定难度:2 编写一程序p217.C实现以下功能 求任意的一个m×m矩阵的对角线上元素之和,m(2<=m<=20)及矩阵元素从键盘输入(只考虑int型,且不需考虑求和的结果可能超出int型能表示的范围)。编程可用素材:printf("Please input m: ")...、 printf("\nPlease input array:\n")...、printf("\nsum=...\n"...。 程序的运行效果应类似地如图1所示,图1中的5和 1 45 67 235 464 35 6 89 32342 8 347 9346 47 95 746 46 785 436 19434 634 3235 567 24 8465 25 是从键盘输入的内容。

C语言第5次作业 简单程序设计

单选题: 1、以下程序段的输出结果是 int a=1234; printf("%2d\n",a); A.12 B.34 C.1234 D.提示出错、无结果 学生答案: C 参考答案: C 2、若有说明语句:int a,b,c,*d=&c; 则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是 A.scanf("%d%d%d",&a,&b,*d); B.scanf("%d%d%d",&a,&b,&d); C.scanf("%d%d%d",a,b,d); D.scanf("%d%d%d",a,b,*d); 学生答案: B 参考答案: A 3、以下合法的赋值语句是 A.x=y=100 B.d--; C.x+y; D.c=int(a+b); 学生答案: D 参考答案: B 4、设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是 printf("%d,%d\n",x--,--y); A.10,3 B.9,3 C.9,2 D.10,2 学生答案: D 参考答案: D 5、以下程序的输出结果是 main()

{ int a=3; printf("%d\n",(a+=a-=a*a));} } A.-6 B.12 C.0 D.-12 学生答案: D 参考答案: D 6、以下程序段的输出结果是 char s[]="\\141\141abc\t"; printf ("%d\n",strlen(s)); A.9 B.12 C.13 D.14 学生答案: A 参考答案: A 7、下列程序执行后的输出结果是 main() { int x='f'; printf("%c \n",'A'+(x-'a'+1)); } A.G B.H C.I D.J 学生答案: A 参考答案: A 8、下列程序执行后的输出结果是 main() { char x=0xFFFF; printf("%d \n",x--); } A.-32767 B.FFFE C.-108 D.-32768

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

第一次上机作业(2014): 要求: ?独立完成,上机调试通过后上交 ?作业提交邮箱: ?邮件主题命名:班级学号姓名(第1次作业), 例如:电1301班2王鹏(第1次作业) ?以附件形式将每次作业的所有程序源程序压缩打包后提交,压缩文件命名格式同上。 ?程序必须采用缩进格式 1.大写字母转换成小写字母 从键盘输入一个大写英文字母,输出相应的小写字母。 例:输入G 输出g 2.求平方根 输入一个实数x,计算并输出其平方根(保留1 位小数)。 例:输入17 输出The square root of 17.0 is 4.1 3.温度转换 设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32) a)输入华氏温度(实型) b)输出的摄氏温度结果保留两位小数 例:Please input Fahrenheit temperature: 76.8 The corresponding Celsius temperature is 24.89 4. 计算旅途时间 输入二个整数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说:他胡说。 已知三个人说的是真话,一个人说的是假话。现在要根据这些信息,找出做了好事的人。 第二次上机作业(2014): 要求: ?独立完成,程序必须采用缩进格式,上机调试通过后上交

c语言第六次作业

第五题 #include int main () { int a[10][10],i,j,n; printf("Input n:"); scanf("%d",&n); printf("* "); for(j=1;j<=n;j++) { a[0][j]=j; printf("%d ",a[0][j]); } printf("\n"); for(i=1;i<=n;i++) { a[i][0]=i; printf("%d ",a[i][0]); for(j=1;j<=i;j++) { a[i][j]=a[i][0]*a[0][j]; printf("%d ",a[i][j]); } printf("\n"); } return 0; } 第二题 #include int main(void) { int a[12]={31,0,31,30,31,30,31,31,30,31,30,31};

int year,month,day,sum=0,i; printf("Input year,month,day:"); scanf("%d%d%d",&year,&month,&day); if(year%4==0&&year%100!=0||year%400==0) a[1]=29; else a[1]=28; for(i=0;i int main () { int n,i,j,a[6][6],index1,index2,index3,max; printf("Input n:"); scanf("%d",&n); printf("Input arry:"); for(i=0;i=max)

C语言作业

实验一 C程序的运行环境及简单程序编写(一) 一、实验目的 1. 了解VC++6.0集成环境的基本操作方法。 2. 了解在该系统上如何编辑、编译、连接和运行一个C程序。 3. 通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1. 打印输出你的姓名,年龄,地址信息。 2. 编写程序,实现输出 ********************************************* C语言程序设计 ********************************************* 3. 编写程序,求2个整数的和、差、积、商。 实验二C程序的运行环境及简单程序编写(二) 一、实验目的 1. 编写运行简单的C程序,了解C源程序的特点。 二、实验内容 1. 编写程序,已知长方形的长为8cm,宽为3cm,求长方形的周长和面积。 2. 在上一题的源代码中,用2种注释方法,添加注释内容: 这是一个简单的C语言程序。 3. 编写程序,实现输出三行文字,第一行 Print: (1)\\\\\\\\\\ (2)&&&&&&&&&& (3)|||||||||| 实验三数据的存储与运算(一) 一、实验目的

1. 掌握变量的定义及使用 2. 掌握整型数据在程序中的表示及使用 二、实验内容 1.教材P19例2.1 2. 编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的面值为20美 元、10美元、5美元和1美元钞票来付款。 运行结果: Ener a dollar amount:93 Result: $20 bills:4 $10 bills:1 $5 bills:0 $1 bills:3 3. 输入2个变量的值,交换这2个变量的值后输出。 Input (x,y):2,3 output(x,y):3,2 实验四数据的存储与运算(二) 一、实验目的 1. 掌握整型数据在程序中的表示及使用 2. 掌握实型数据在程序中的表示及使用。 二、实验内容 1.教材P24例2.2 2.教材P46习题1 3. 编写一个程序,要求用户输入一个两位数,然后逆序打印出这个数。 Enter a two-digit number:28 The reversal is :82 实验五数据的存储与运算(三) 一、实验目的 1. 掌握符号常量、字符型数据、字符串的应用 2. 掌握强制类型的转换 二、实验内容 1.给出园半径,求园的体积v=4/3πr3 2.将小写字母转换为大写字母,并将其按字符和整数两种方式输出。 3.输入从午夜开始的秒数total_sec,请计算出等价的时间,用小时(0 ~23)、分钟(0 ~59) 和秒(0 ~59)表示。(建议使用%运算符) Enter total seconds:2590 Time:0:43:10 4.编程计算1/2+1/3+1/5的结果。 实验六数据的存储与运算(四)

C语言作业2

期待的输出时间限制内存限制#include main() { int a,b,c,q,e,f,g,h,i,j,k,m,n,p,x,y,z; scanf("%1d",&a); scanf("%1d%1d%1d%1d%1d",&b,&c,&q,&e,&f); scanf("%1d%1d%1d%1d%1d",&g,&h,&i,&j,&k); x=a+c+e+g+i+k; y=b+q+f+h+j;

n=m-1; z=n%10; p=9-z; printf("%d\n",p); } H2:数制转换(选作) 成绩: 5 / 折扣: 0.8 我们通常使用的都是十进制的数字,但其实在生活中也经常会使用其它进制。 这个题目会给你两个不同的数字,它们不属于同一进制,要求你计算出当它们分别处于何种进制之中时,两个数字相等。譬如12 和 5 ,在十进制下它们是不等的,但若12 使用 3 进制而5 使用六进制或十进制时,它们的值就是相等的。因此只要选择合适的进制,12 和5 就可以是相等的。 程序的输入是两个数字M 和N( 其十进制的值不超过1000000000) ,它们的进制在2~36 之间。对于十以下的数字,用0~9 表示,而十以上的数字,则使用大写的A~Z 表示。 求出分别在2~36 哪种进制下M 和N 相等。若相等则输出相应的进制,若不等则输出错误信息。当然了,对于多种可能成立的情况,找出符合要求的进制最小的一组就行了。信息的格式见测试用例。 测试输入期待的输出 制 #include"string.h" #include"stdio.h"

{ char a[N],b[N],d[N],e[N],d0[N]; int i,j,o,r,g,h,w,t,l,k,max1,max2; double p[N],q[N]={0},u[N],v[N]={0},c[N],f[N],m,n; for(i=0;i='\x30') c[i]=b[i]-'0'; if(b[i]<='\x5A'&&b[i]>='\x41') c[i]=b[i]-'7'; } for(i=0;i='\x30') f[i]=e[i]-'0'; if(e[i]<='\x5A'&&e[i]>='\x41') f[i]=e[i]-'7'; } max1=c[0]; for(i=1;i

c语言第六次作业解析

第六次作业:指针 (以下题目如无特殊声明,请使用指针技术实现,尽量不要使用数组作为形参,也尽量避免使用数组下标引用数组元素) 1.数组元素循环移位 有n个整数,使前面的各整数顺序向后移动m个位置,后面的m个整数则变成最前面的m个数。写一函数实现以上功能。 在主函数中输入n及n个整数,输入m (m void main() { void inv(int *p,int n,int m); int n,m,a[20],*p; printf("please input n="); scanf("%d",&n); printf("please input %d numbers:",n); p=a; while(p

2. 矩阵元素的排序 将一个5×5的整数型矩阵中各元素重新排序。排序规则为,矩阵元素按照从左到右,从上到下的顺序依次递增,即 4,41,10,14,03,02,01,00,0.......a a a a a a a a ≤≤≤≤≤≤≤。 要求编写一个函数实现上述排序功能。 在主函数中输入该矩阵,调用编写的上述函数,然后输出排序后的矩阵。 #include void main() { void inv(int (*x)[5]); int i,j,a[5][5]; int (*p)[5]; printf("please input an 5*5 array:\n"); p=a; for(i=0;i<5;i++) for(j=0;j<5;j++) scanf("%d",*(p+i)+j); inv(p); printf("the new array:\n"); for(i=0;i<5;i++) { for(j=0;j<5;j++) printf("%4d",*(*(p+i)+j)); putchar('\n'); }

C语言练习作业及参考答案

习题一 1、C语言源程序最多可能由____ABCD____________部分组成? A) 预处理部分B)变量说明部分 C) 函数原型声明部分D)函数定义部分 2、一个完整的C语言源程序最少必须有___C____。 A)若干个主函数B)若干个函数 C)且只能有一个主函数D)一个函数 3、C语言以函数为源程序的基本单位最主要有利于__B_____。 A)程序设计结构化B)程序设计模块化 C)程序设计简单化D提高程序设计有效性 4、要使得C语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过______________B_______________________。 A)编辑和链接B)编译和链接 C)修改和运行D运行并输入数据 5、一个C程序的执行是从______A______。 A)本程序的main函数开始,到main函数结束。 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 6、以下叙述正确的是__A______。 A)在C程序中,main函数必须位于程序的最前面 B)C程序的每行中只能写一条语句 C)C语言本身没有输入输出语句 D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误 7、以下叙述不正确的是___D_____。 A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main函数 C)C程序的基本组成单位是函数 D)在C程序中,注释说明只能位于一条语句的后面 8、C语言规定:在一个源程序中,main函数的位置是___A_____。 A)必须在最开始 B)必须在系统调用的库函数的后面 C)可以任意 D)必须在最后

程序设计c第一次作业

题目1 完成 满分1.00 标记题目 题干 选出正确的输入格式()。 int a; float b; char c; scanf("a = %d,b = %f,c = %c”,&a ,&b ,&c );选择一项: a. 1 2.0 n b. 1,2.0,n c. a = 1,b = 2.0,c = n d. 12.0n 题目2 完成 满分1.00 标记题目 题干 C语言编译程序的首要工作是()。选择一项: a. 检查C语言程序的语法错误 b. 生成目标文件

c. 检查C语言程序的逻辑错误 d. 检查程序的完整性 题目3 完成 满分1.00 标记题目 题干 假设变量a,b均为整型,则表达式 (a=2, b=5, b++, a+b) 的值是()。选择一项: a. 7 b. 6 c. 2 d. 8 题目4 完成 满分1.00 标记题目 题干 C语言程序能够在不同的操作系统下运行,这说明C语言具有很好的()。选择一项: a. 兼容性 b. 适应性

c. 移植性 d. 操作性 题目5 完成 满分1.00 标记题目 题干 C语言规定,在一个源程序中,main函数的位置()。选择一项: a. 必须在系统调用的库函数的后面 b. 必须在最开始 c. 必须在最后 d. 可以任意 题目6 完成 满分1.00 标记题目 题干 下面正确的字符常量是()。 选择一项: a. ” b. 'W'

c. "c" d. '\\'' 题目7 完成 满分1.00 标记题目 题干 下列说法中正确的是()。 选择一项: a. C语言程序书写时,一个语句可分成几行书写 b. C语言程序书写时,一行只能写一个语句 c. C语言程序书写时每行必须有行号 d. C语言程序书写时,不区分大小写字母 题目8 完成 满分1.00 标记题目 题干 若变量a、i已正确定义,且i已正确赋值,则合法的语句是()。选择一项: a. ++i; b. a=a++=5;

四川大学C语言上机考试题

1.有以下程序 #include void main() { int a=5,b=4,c=3,d=2; if(a>b>c) printf("%d\n",d); else if((c-1>=d)==1) printf("%d\n",d+1); else printf("%d\n",d+2); } 执行后输出的结果是___D___。 A.2 B.编译时有错,无结果 C.4 D.3 2.设x为int型变量,则执行以下语句后,x的值为:int x = 10; x*=x/=-x; printf("%d\n", --x); --D--- A.10 B.1 C.-10 D.0 3.下面程序的输出是_C___。 main() { int x,i; for(i=1;i<=100;i++)

{ x=i; if(++x%2==0) if(++x%3==0) if(++x%7==0) printf("%d ",x); } } A.39 81 B.42 84 C.28 70 D.26 68 4.在C语言中,合法的字符常量是---B---- A."a" B.'\t' C.97 D.a 5.已知int x=12,y=3;执行下述程序后,变量x的值是_D___。do { x/=y--; }while(x>y); printf("%d\n",x);} A.2 B.1 C.3 D.程序运行有错误 6.有以下程序 #include void main() { int m=3,n=4,x; x=-m++; x=x+8/++n; printf("%d\n",x); } 程序运行后的输出结果是__C____。

C语言作业2

H1:计算通用产品代码(UPC)的校验位(选作) 许多年来,货物生产商都会把超市售卖的每件商品上放置一个条码。这种被称为通用产品代码(Universal Product Code,缩写UPC)的条码可以识别生产商和产品。超市可以通过扫描产品上的条码来确定支付此项商品的费用。每一个条码由十二位数字构成,通常这些数字会显示在条码下面。例如,包装为26盎司的Morton牌碘化盐所用条码下的数字是:0 24600 01003 0 第一个数字表示商品的种类(0表示大部分的食品杂货,2表示需要称量的货品,3表示药品或和健康相关的商品,而5表示优惠券)。接下来的一组五位数字用来识别生产商。而第二组五位数字则用来区分产品类型(其中包括包装尺寸)。最后一位数字是“校验位”,它可以帮助鉴别先前数字中的错误。如果条码扫描出现错误,那么前十一位数字和最后一位数字可能会不一致,而超市扫描机也会拒绝整个条码。 下面是一种计算校验位的方法:首先把第一位、第三位、第五位、第七位、第九位和第十一位数字相加。然后把第二位、第四位、第六位、第八位和第十位数字相加。接着把第一次加法结果乘以3后再加上第二次加法的结果。随后,再把上述结果减去1。减法后的结果除以10取余数。最后,用9减去上一步骤中得到的余数。现在以Morton碘盐为例,第一组数字的加法是0+4+0+0+0+3=7,而第二组数字的加法是2+6+0+1+0=9。把第一组加法值乘以3后再加上第二组加法值得到的结果是30。再减去1,结果变为29。再把这个值除以10取余数为9。9在减去余数结果9,最终值为0 输入 每次输入三行数据,第一行是UPC的第一位数字,第二行是UPC的第一组五位数字,第三行是UPC的第二组五位数字。 输出 UPC的校验位 页脚内容1

川大c语言第一次作业

1.运行如下程序,并改正错误。 /*Hello,World!的变形程序*/ #include int main( ) { printf("________________\n| Hello, |\n| World! |\n(\\(\\ /\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n(^?^)/\no_(\")(\")\n ");\\这里连成一排的 return 0; } 结果如下 2.用printf函数输出如下字符串:"abc\t123\r456\nabc\b123\\45",并分析输出结果。 " 解释: \t代表水平制表,每8个字符为一个输出区,所以首先是abc 123 \r代表将光标放回到行首,打出456将刚才的abc覆盖,现在是456 123 \n是换行 \b是退格,所以打出第二排的abc后退格成ab再打印成ab123, \\即代表\, 所以结果如上图。 3.将2147483648,(short)32768,-1用printf函数输出为十进制、八进制和十六进制形式, 并分析输出结果。 由于2147483648是2^31,所以转换为二进制是100000……0000(31个0),对于32bit的电

脑,ing最大是2^31-1,所以2^31好像是被认为成了最小值了,即-2^31 然后,又二进制转化为8进制,3位3位的变,转16进制则4位4位的变,结果如下 对于(short)32668,还是先转换为二进制111 111 110 011 100,转化为8进制是77634,111 1111 1001 1100转化为16进制是7f9c,结果如下 对于-1,转化为二进制是2^31-1,即为11111……11111(32个1),转化为8进制时,\o代表的是无符号的8进制数,32%3=2,所以第一位是3,后面是7,结果是37777777777, 由于32%4=0,所以是8个f,结果如下图 4.写程序把一个4位整数(比如qbsg)转换成另一个形式(sqgb)。 #include int main(int argc, char *argv[]) { int a,q,b,s,g,px ; printf("请输入一个正的4位数"); scanf("%d",&a); q=a/1000; b=(a-q*1000)/100; s=(a-q*1000-b*100)/10; g=(a-q*1000-b*100-s*10); px=1000*s+100*q+10*g+b; printf("转换结果是:%d",px);

川大网教《面向对象程序设计》第一次作业答案(96分)

《面向对象程序设计》第一次作业答案 你的得分:96.0 完成日期:2013年09月02日15点40分 说明:每道小题括号里的答案是您最高分那次所选的答案,标准答案将在本次作业结束(即2013年09月12日)后显示在题目旁边。 一、单项选择题。本大题共30个小题,每小题2.0 分,共60.0分。在每小题给出的选项中,只有一项是符合题目要求的。 1.C++函数的声明和定义可以分开,函数声明不需要(D )。 A. 返回类型 B. 函数名 C. 参数表 D. 函数体 2.函数的形参是(B )。 A. 全局变量 B. 局部变量 C. 静态变量 D. 部变量 3.数组名表示的是数组的(C)。 A. 类型

B. 用途 C. 地址 D. 长度 4.如果短整型的长度是2字节,有一个短整型指针p的值是0xFFED1200,那么p+1 的值为(B)。 A. 0xFFED1201 B. 0xFFED1202 C. 0xFFED1203 D. 0xFFED1204 5.private访问属性限制对象的成员可以在(A )中访问。 A. 本类的成员函数 B. main函数 C. 父类的成员函数 D. 子类的成员函数 6.如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后++运算 符的声明应该为(C)。 A.

myclass operator++(); B. myclass&operator++(); C. myclass operator++( int ); D. myclass& operator++( int ); 7.如果有如下定义:const char* str = "OK";那么,sizeof(str)的值应该是(D) A. 1 B. 2 C. 3 D. 4 8.父类和子类各自定义一个成员函数,函数名相同,参数表不同,那么(C)。 A. 在子类中这两个函数构成重载关系 B. 子类不会继承父类的这个函数 C. 子类中的函数会覆盖父类中的函数 D. 编译时会发生错误 9.如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运 算符,那么语句myclass obj = 100;会(B)。 A.

福建师范大学C语言第一次作业及答案

编写程序: 1.定义一个Point类来处理三维点points(x,y,z).该类有一默认的constructor,一copy constructor, 一negate()成员函数将point的x,y和z值各乘-1, 一norm()成员函数返回该点到原点(0,0,0)的距离,一个print()成员函数显示x,y,和z的值。 #include #include using namespace std; class Point{ private: double x,y,z; double distance; public: Point(double newX,double newY,double newZ){ x=newX;y=newY;z=newZ; distance=sqrt(x*x+y*y+z*z); } Point(Point &p){ x=p.x;y=p.y;z=p.z; distance=p.distance; } void negate(){ x*=-1;y*=-1;z*=-1; } double norm(){ return distance; } void print(){ cout<<"x="<

相关主题
文本预览
相关文档 最新文档